¶¯Ì¬ProxyÓëJava ACLÓû§·ÃÎÊ¿ØÖÆ»úÖÆÊµÏÖ
Óû§·ÃÎÊ¿ØÖÆ(Access control )»úÖÆ×ÜÊÇÎ§ÈÆ´ÖÁ£¶ÈºÍϸÁ£¶ÈÁ½¸ö·½ÃæÀ´ÌÖÂÛ£º
¡¡¡¡´ÖÁ£¶È¿ØÖÆ£º¿ÉÒԹ涨·ÃÎÊÕû¸ö¶ÔÏó»ò¶ÔÏóȺµÄij¸ö²ã£¬¶øÏ¸Á£¶È¿ØÖÆÔò×ÜÊÇÔÚ·½·¨»òÊôÐÔ²ã½øÐпØÖÆ£¬±ÈÈ磺
¡¡¡¡´ðÓ¦Ò»¸öÎļþΪֻ¶ÁÊÇÊôÓÚ´ÖÁ£¶È¿ØÖÆ£¬¶ø´ðÓ¦¶ÔÕâ¸öÎļþijÐÐÓÐд²Ù×÷ÔòÊôÓÚϸÁ£¶È¿ØÖÆ¡£
¡¡¡¡Ò»¸öºÃµÄÓû§¿ØÖÆ»úÖÆµ±È»¼È´ðÓ¦´ÖÁ£¶ÈÒ²´ðӦϸÁ£¶È¿ØÖÆ£¬ÔÚJiveÖÐÎÒÃÇ¿´µ½ÊÇʹÓÃProxyÀ´´ïµ½Õâ¸öÄ¿µÄ£¬µ«ÊÇÎÒÃÇÒ²·¢ÏÖ£¬ÓÉÓÚÐèÒª¶Ôÿ¸öÀà¶¼Òª½øÐÐϸÁ£¶È¿ØÖÆ£¬ËùÒÔ±ØÈ»¶Ôÿ¸öÀà¶¼Òª×öÒ»¸öProxyÀ࣬ÕâÑù´øÀ´Á˺ܶàProxyÀ࣬ÈçForumProxy ForumThreadProxy ForumFactoryProxyµÈ£¬ÎÞÐÎÔö¼ÓÁËϵͳ¸´ÔÓÐÔ¡£
¡¡¡¡
¡¡¡¡¡¡¡¡Ê¹Óö¯Ì¬Proxy¿ÉÒԺܺõĽâ¾öÕâ¸öÎÊÌâ¡£ÔÙ½áºÏJava.security.aclµÄACL»úÖÆ£¬ÎÒÃǾͿÉÒÔÁé»îµØÊµÏÖ´ÖÁ£¶ÈºÍϸÁ£¶ÈµÄË«ÖØ¿ØÖÆ¡£
¡¡¡¡
¡¡¡¡¡¡¡¡µ±Ò»¸öÓû§loginºó£¬ÎÒÃǾÍÒªÔÚÄÚ´æÖÐΪÆä½¨Á¢ÏàÓ¦µÄÊÚȨ·ÃÎÊ»úÖÆ£¬Ê¹ÓÃjava.security.acl¿ÉÒԺܷ½±ãµÄ½¨Á¢ÕâÑùÒ»¸ö°²È«ÏµÍ³¡£
¡¡¡¡
¡¡¡¡¡¡¡¡Ê×ÏÈÈκÎÒ»¸ö¶ÔÏó¶¼Ó¦¸ÃÓиö»ù±¾ÊôÐÔ£ºÓµÓÐÕß »òÓµÓÐÕßËùÊô×é(WindowsÖÐÿ¸öĿ¼°²È«ÃèÊö·û¶¼ÓÉ4²¿·Ö¹¹³É£º¶ÔÏóµÄ´´½¨Õß¡¢¶ÔÏóËùÊôµÄ×é¡¢×ÔÓÉ´æÈ¡¿ØÖƺÍϵͳ´æÈ¡¿ØÖÆ)¡£
¡¡¡¡1. Java acl¿ªÊ¼µÚÒ»²½Êǽ¨Á¢Ò»¸öÖ÷Ìå Principal£¬ÆäÖÐSecurityOwnerÊÇÖ÷ÌåµÄÓµÓÐÕߣº private static final Principal _securityOwner = new PrincipalImpl("SecurityOwner");
¡¡¡¡2. µ±Óû§login½øÀ´Ê±£¬Ëû´øÓÐÁ½¸ö»ù±¾Êý¾Ý£º·ÃÎÊÃÜÂëºÍËûÒª·ÃÎʵĶÔÏóApplicationName¡£Ê×ÏÈÑéÖ¤Óû§ÃûºÍÃÜÂ룬Ȼºó´ÓÊý¾Ý¿âÖÐÈ¡³öÆäȨÏÞÊý¾Ý£¬½¨Á¢Permission,ÕâÀïʹÓÃFeature¼ÌÐøÁËPermission£¬ÔÚFeatureÖж¨ÒåÁËÓйØÈ¨ÏÞµÄϸ½ÚÊý¾Ý£¨Èç¶Á д ɾ£©¡£
¡¡¡¡// È¡³öÓû§ºÍ±»·ÃÎʶÔÏóÖ®¼äµÄȨÏÞ¹ØÏµ,ÕâÖÖȨÏÞ¹ØÏµ¿ÉÄܲ»Ö»Ò»¸ö£¬Ò²¾ÍÊÇ˵£¬Óû§
¡¡¡¡//¿ÉÄܶԱ»·ÃÎʶÔÏóÓµÓжÁ д ɾµÈ¶à¸öȨÏÞ£¬½«Æä´ò°üÔÚHasBTableÖС£
¡¡¡¡Hashtable features = loadFeaturesForUser(sApplicationName, sUserID);
¡¡¡¡3. ´´½¨Ò»¸öÓû§¶ÔÏó
¡¡¡¡User user = new UserImpl(sUserID, new Hashtable() );
¡¡¡¡4. ΪÕâ¸öÓû§´´½¨Ò»¸ö»î¶¯µÄacl entry
¡¡¡¡addAclEntry( user, features);
¡¡¡¡ÆäÖÐ×îÒªº¦µÄÊǵÚËIJ½addAclEntry,ÎÒÃÇ¿´¿´ÆäÈçºÎʵÏֵģº
¡¡¡¡// ΪÕâ¸öÓû§´´½¨Ò»¸öеÄAcl entry
¡¡¡¡AclEntry newAclEntry = new AclEntryImpl( user);
¡¡¡¡
¡¡¡¡//±éÀúHashtable features£¬½«ÆäÖжàÖÖȨÏÞ¼ÓÈë:
Ïà¹ØÎĵµ£º
JavaỊ̈߳ºÏ̵߳ĵ÷¶È-ÓÅÏȼ¶
ÓëÏß³ÌÐÝÃßÀàËÆ£¬Ï̵߳ÄÓÅÏȼ¶ÈÔÈ»ÎÞ·¨±£ÕÏÏ̵߳ÄÖ´ÐдÎÐò¡£Ö»²»¹ý£¬ÓÅÏȼ¶¸ßµÄÏ̻߳ñÈ¡CPU×ÊÔ´µÄ¸ÅÂʽϴó£¬ÓÅÏȼ¶µÍµÄ²¢·Çû»ú»áÖ´ÐС£
Ï̵߳ÄÓÅÏȼ¶ÓÃ1-10Ö®¼äµÄÕûÊý±íʾ£¬ÊýÖµÔ½´óÓÅÏȼ¶Ô½¸ß£¬Ä¬ÈϵÄÓÅÏȼ¶Îª5¡£
ÔÚÒ»¸öÏß³ÌÖпªÆôÁíÍâÒ»¸öÐÂỊ̈߳¬ÔòпªÏ̳߳ÆÎ ......
JavaỊ̈߳ºÏ̵߳ĵ÷¶È-ÊØ»¤Ïß³Ì
ÊØ»¤Ïß³ÌÓëÆÕͨÏß³Ìд·¨ÉÏ»ù±¾Ã´É¶Çø±ð£¬µ÷ÓÃÏ̶߳ÔÏóµÄ·½·¨setDaemon(true)£¬Ôò¿ÉÒÔ½«ÆäÉèÖÃÎªÊØ»¤Ï̡߳£
ÊØ»¤Ïß³ÌʹÓõÄÇé¿ö½ÏÉÙ£¬µ«²¢·ÇÎÞÓ㬾ÙÀýÀ´Ëµ£¬JVMµÄÀ¬»ø»ØÊÕ¡¢ÄÚ´æ¹ÜÀíµÈÏ̶߳¼ÊÇÊØ»¤Ï̡߳£»¹ÓоÍÊÇÔÚ×öÊý¾Ý¿âÓ¦ÓÃʱºò£¬Ê¹ÓõÄÊý¾Ý¿âÁ¬½Ó³Ø£¬Á¬½Ó³Ø±¾ÉíÒ²°üº ......
JAVAÓïÑԵķ¢Õ¹Ê·
1991Ä꣬Sun¹«Ë¾ÎªÄܹ»ÔÚÏû·Ñµç×Ó²úÆ·ÉÏ¿ª·¢Ó¦ÓóÌÐò£¬Ñ°ÕÒºÏÊʵıà³ÌÓïÑÔ
Ïû·Ñµç×Ó²úÆ·ÖÖÀà·±¶à£¬´¦ÀíоƬºÍ²Ù×÷ϵͳҲ²»Ïàͬ£¬´æÔÚ×Å¿çÆ½Ì¨µÄÎÊÌâ
C++¹ýÓÚ¸´ÔÓºÍÅӴ󣬰²È«ÐÔÒ²²¢²»ÁîÈËÂúÒâ¡£ÓÚÊǾÍ×ÅÊÖÉè¼ÆºÍ¿ª·¢³öÒ»ÖÖÓïÑÔ£¬³ÆÖ®ÎªOak
OakÓïÑÔÔÚÉÌÒµÉϲ¢Î´»ñµÃ³É¹¦
¶«·½²»ÁÁÎ÷·½ÁÁ
1995Ä꣬» ......
·½·¨Ò»£º
SimpleDateFormat formatter =
new
SimpleDateFormat(
"yyyyMMdd"
);
Date currentTime =
new
java.util.Date();
//
µÃµ½µ±Ç°ÏµÍ³Ê±¼ä
long
now = curr ......