javaÃæÊÔ±ÊÊÔÌâ´ó»ã×Ü
javaÃæÊÔ±ÊÊÔÌâ´ó»ã×Ü
µÚÒ»£¬Ì¸Ì¸final, finally, finalizeµÄÇø±ð¡£
¡¡¡¡×î³£±»Îʵ½¡£¡¡¡¡
¡¡¡¡µÚ¶þ£¬Anonymous Inner Class (ÄäÃûÄÚ²¿Àà) ÊÇ·ñ¿ÉÒÔextends(¼Ì³Ð)ÆäËüÀ࣬ÊÇ·ñ¿ÉÒÔimplements(ʵÏÖ)interface(½Ó¿Ú)?¡¡¡¡
¡¡¡¡µÚÈý£¬Static Nested Class ºÍ Inner ClassµÄ²»Í¬£¬ËµµÃÔ½¶àÔ½ºÃ(ÃæÊÔÌâÓеĺÜÁýͳ)¡£¡¡¡¡
¡¡¡¡µÚËÄ£¬&ºÍ&&µÄÇø±ð¡£
¡¡¡¡Õâ¸öÎʵúÜÉÙ¡£¡¡¡¡
¡¡¡¡µÚÎ壬HashMapºÍHashtableµÄÇø±ð¡£
¡¡¡¡³£ÎÊ¡£¡¡¡¡
¡¡¡¡µÚÁù£¬Collection ºÍ CollectionsµÄÇø±ð¡£
¡¡¡¡ÄãǧÍò±ð˵һ¸öÊǵ¥ÊýÒ»¸öÊǸ´Êý¡£¡¡¡¡
¡¡¡¡µÚÆß£¬Ê²Ã´Ê±ºòÓÃassert¡£
¡¡¡¡API¼¶µÄ¼¼ÊõÈËÔ±ÓпÉÄÜ»áÎÊÕâ¸ö¡£¡¡¡¡
¡¡¡¡µÚ°Ë£¬GCÊÇʲô? ΪʲôҪÓÐGC?
¡¡¡¡»ù´¡¡£¡¡¡¡
¡¡¡¡µÚ¾Å£¬String s = new String("xyz");´´½¨Á˼¸¸öString Object?¡¡¡¡
¡¡¡¡µÚÊ®£¬Math.round(11.5)µÈì¶¶àÉÙ? Math.round(-11.5)µÈì¶¶àÉÙ?¡¡¡¡
¡¡¡¡µÚʮһ£¬short s1 = 1; s1 = s1 + 1;ÓÐʲô´í? short s1 = 1; s1 += 1;ÓÐʲô´í?
¡¡¡¡ÃæÊÔÌâ¶¼ÊǺܱä̬µÄ£¬Òª×öºÃÊÜ۵Ä×¼±¸¡£¡¡¡¡
¡¡¡¡µÚÊ®¶þ£¬sleep() ºÍ wait() ÓÐÊ²Ã´Çø±ð?
¡¡¡¡¸ãÏ̵߳ ......
ĿǰºÜ¶àѧÉúÃæÁÙמÍÒµµÄÎÊÌ⣬µ±È»£¬ÏñÎÒÒ»ÑùµÄ¸Õ±ÏÒµµÄ´óѧÉúÒ²²»ÀýÍâ¡£´óѧʱѧµÄÊǼÆËã»úרҵµÄ£¬´óѧËÄÄê×ÜÒÔΪ°Ñרҵ¿ÎѧºÃ£¬±ÏÒµÁ˾ͿÉÒÔÕÒµ½Ò»·Ý²»´íµÄ¹¤×÷¡£
¿ÉÊǼ¸¸öÔÂÃæÊԵĽÓÁ¬Åö±Ú£¬Ê¹ÎҸе½´óѧÀïѧµÄרҵ֪ʶÀíÂÛÐÔ̫ǿ£¬Êµ¼Ê¿ª·¢µÄÄÜÁ¦È´²»×ã¡£Ó빫˾µÄʵ¼ÊÓÃÈËÐèÇó»¹ÓкܴóµÄ²î¾à¡£
ÓÚÊÇÎÒ¾ÍÏëµ½ÁËÒª²Î¼Ó¼¼ÄÜÅàѵÀ´ÔöÇ¿×Ô¼ºµÄʵ¼Ê¿ª·¢ÄÜÁ¦¡£¿ÉÊÇÎÊÌâÀ´ÁË£¬Åàѵ»ú¹¹ÄÇô¶à¡¢ÅàѵµÄ¿Î³ÌÓÖÄÇô¶à£¬¾¿¾¹ÒªÑ¡ÄļÒÑ¡Äĸö¿Î³ÌÄØ£¿ÕýÇÉǰ¼¸ÌìÎåÒ»ÀͶ¯½Ú£¬ÔÚÍâµØ¹¤×÷µÄÒ»¸ö±í¸ç»ØÀ´ÁË¡£ÎÒ¾ÍÇë½ÌÁËËûѡʲôÅàѵ»ú¹¹±È½ÏºÃ¡£Ë½ÐËûÊÇÈí¼þ¹¤³ÌÊ¦ÄØ¡£
ÎÒÃÇÁÄÁ˺ܶ࣬ËûÌᵽĿǰҪѡÔñÒ»¼ÒרҵµÄÕý¹æµÄÅàѵ»ú¹¹£¬±ÈÈç±±´óÇàÄñÖв©µÈµÈ¡£ÖÁÓÚѡʲô¿Î³Ì£¬Ëû¸ù¾ÝÎÒµÄ×ÔÉíÇé¿ö(ÔÚ´óѧÀïѧµÄJava¿Î³ÌÏà¶ÔºÃЩ)ºÍĿǰµÄIT½ç×´¿ö·ÖÎö£¬½¨ÒéÎÒÑ¡JavaÅàѵ¡£ÔÒòÈçÏ£º
(1) ¿É»ñµÃÈ«ÇòÈϿɵÄÈí¼þÖ°Òµ×ʸñÖ¤Êé;
(2) JavaÔÚ¿çÆ½Ì¨¡¢°²È«ÐÔ¡¢ËÙ¶È·½Ã泬¹ýÆäËû³ÌÐòÓïÑÔ£¬ÖØÁ¿¼¶µÄ¹«Ë¾¹ã·º²ÉÓÃJava;
(3) ......
ÕÐÉÌÏîÄ¿ÐèÒªÒý½øÒ»¸ö¹¤×÷Á÷£¬×î½üÔÚÍùÉϵ÷ÑпªÔ´µÄ¹¤×÷Á÷ÒýÇæ£¬×ܽá±È½ÏÁ÷ÐÐÒ»¹²ÓÐ3¸ö¡£
ÆäÖÐÒ»¸öÊÇosworkflow£¬µ«ÊÇÓÉÓںܳ¤Ê±¼ä²»ÔÙ¸üУ¬ËùÒÔÑ¡Ôñ·ÅÆú¡£ÁíÍâÒ»¸ö¾ÍÊÇjbmp4.3£¬¿ªÁ˺ܶàµÄ×ÊÁÏ»¹ÓÐÊÓÆµ£¬·¢ÏÖÆäÖкܶණÎ÷Àí½âÀ§ÄÑ£¬»¹ÓÐÒ»¸öÎÊÌâ¾ÍÊÇËüµÄ³Ö¾Ã²ãÊÇhibernate×öµÄ£¬±¾ÏëÏÈǰÏëÓÃibatisµÄ¡£¹À¼ÆÒªÊÇÕæµÄÒý½ø¹¤×÷Á÷µÄ»°£¬ÕâÒ»¿éÐèÒª¸ÄÁË¡£
ÔÚÑо¿jbpmµÄʱºòÓиöÎÊÌâ¾ÍÊÇÓÃtomcat²¿ÊðµÄʱºò£¬»á³öÏÖÒÔϵĴíÎó£º
ÑÏÖØ: Servlet.service() for servlet jsp threw exception
java.lang.LinkageError: loader constraint violation: when resolving interface method "javax.servlet.jsp.JspApplicationContext.getExpressionFactory()Ljavax/el/ExpressionFactory;" the class loader (instance of org/apache/jasper/servlet/JasperLoader) of the current class, org/apache/jsp/index_jsp, and the class loader (instance of org/apache/catalina/loader/StandardClassLoader) for resolved class, javax/servlet/jsp/JspApplicationContext, have different Class objects for the type javax/el/ExpressionFactory used in the signature
  ......
ÔÚJavaÖУ¬²»Í¬µÄÀà¶¼ÓÐ×Ô¼ºµ¥¶ÀµÄCache»úÖÆ£¬ÊµÏֵķ½·¨Ò²¿ÉÄÜÓÐËù²»Í¬£¬ÎÄÕÂÁоÙÁËJavaÖг£¼ûµÄ¸÷ÀàCache»úÖÆµÄʵÏÖ·½·¨£¬Í¬Ê±½øÐÐÁË×ۺϵıȽϡ£
OSCache
OSCacheÊǸöÒ»¸ö¹ã·º²ÉÓõĸßÐÔÄܵÄJava EE»º´æ¿ò¼Ü£¬OSCacheÄÜÓÃÓÚÈκÎJavaÓ¦ÓóÌÐòµÄÆÕͨµÄ»º´æ½â¾ö·½°¸¡£
OSCacheÓÐÒÔÏÂÌØµã£º»º´æÈκζÔÏó£¬Äã¿ÉÒÔ²»ÊÜÏÞÖÆµÄ»º´æ²¿·ÖjspÒ³Ãæ»òHTTPÇëÇó£¬ÈκÎjava¶ÔÏ󶼿ÉÒÔ»º´æ¡£ÓµÓÐÈ«ÃæµÄAPI--OSCache API¸øÄãÈ«ÃæµÄ³ÌÐòÀ´¿ØÖÆËùÓеÄOSCacheÌØÐÔ¡£
ÓÀ¾Ã»º´æ--»º´æÄÜËæÒâµÄдÈëÓ²ÅÌ£¬Òò´ËÔÊÐí°º¹óµÄ´´½¨(expensive-to-create)Êý¾ÝÀ´±£³Ö»º´æ£¬ÉõÖÁÄÜÈÃÓ¦ÓÃÖØÆô¡£Ö§³Ö¼¯Èº--¼¯Èº»º´æÊý¾ÝÄܱ»µ¥¸öµÄ½øÐвÎÊýÅäÖ㬲»ÐèÒªÐ޸ĴúÂë¡£»º´æ¼Ç¼µÄ¹ýÆÚ--Äã¿ÉÒÔÓÐ×î´óÏ޶ȵĿØÖÆ»º´æ¶ÔÏóµÄ¹ýÆÚ£¬°üÀ¨¿É²åÈëʽµÄˢвßÂÔ(Èç¹ûĬÈÏÐÔÄܲ»ÐèҪʱ)¡£
Java Caching System
JSC(Java Caching System)ÊÇÒ»¸öÓ÷ֲ¼Ê½µÄ»º´æÏµÍ³£¬ÊÇ»ùÓÚ·þÎñÆ÷µÄjavaÓ¦ÓóÌÐò¡£ËüÊÇͨ¹ýÌṩ¹ÜÀí¸÷ÖÖ¶¯Ì¬»º´æÊý¾ÝÀ´¼ÓËÙ¶¯Ì¬webÓ¦Óá£JCSºÍÆäËû»º´æÏµÍ³Ò»Ñù£¬Ò²ÊÇÒ»¸öÓÃÓÚ¸ßËÙ¶ÁÈ¡£¬µÍËÙдÈëµÄÓ¦ÓóÌÐò¡£¶¯Ì¬ÄÚÈݺͱ¨±íϵͳÄܹ»»ñµÃ¸üºÃµÄÐÔÄÜ¡£
Èç¹ûÒ»¸öÍøÕ¾£¬ÓÐÖØ¸´µÄÍøÕ¾½á¹¹£¬Ê¹ÓüäЪÐÔ¸üз½Ê½µÄÊý¾Ý¿ ......
ÔÚ·Ö²¼Ê½·þÎñ¿ò¼ÜÖУ¬Ò»¸ö×î»ù´¡µÄÎÊÌâ¾ÍÊÇÔ¶³Ì·þÎñÊÇÔõôͨѶµÄ£¬ÔÚJavaÁìÓòÖÐÓкܶà¿ÉʵÏÖÔ¶³ÌͨѶµÄ¼¼Êõ£¬ÀýÈ磺RMI¡¢MINA¡¢ESB¡¢ Burlap¡¢Hessian¡¢SOAP¡¢EJBºÍJMS µÈ£¬ÕâЩÃû´ÊÖ®¼äµ½µ×ÊÇЩʲô¹ØÏµÄØ£¬ËüÃDZ³ºóµ½µ×ÊÇ»ùÓÚʲôÔÀíʵÏÖµÄÄØ£¬Á˽âÕâЩÊÇʵÏÖ·Ö²¼Ê½·þÎñ¿ò¼ÜµÄ»ù´¡ÖªÊ¶£¬¶øÈç¹ûÔÚÐÔÄÜÉÏÓиߵÄÒªÇóµÄ»°£¬ÄÇ ÉîÈëÁ˽âÕâЩ¼¼Êõ±³ºóµÄ»úÖÆ¾ÍÊDZØÐëµÄÁË£¬ÔÚÕâÆªblogÖÐÎÒÃǽ«À´Ò»Ì½¾¿¾¹£¬Å×שÒýÓñ£¬»¶Ó´ó¼ÒÌṩ¸ü¶àµÄʵÏÖÔ¶³ÌͨѶµÄ¼¼ÊõºÍÔÀíµÄ½éÉÜ¡£
»ù±¾ÔÀí
ҪʵÏÖÍøÂç»úÆ÷¼äµÄͨѶ£¬Ê×ÏȵÃÀ´¿´¿´¼ÆËã»úÏµÍ³ÍøÂçͨÐŵĻù±¾ÔÀí£¬Ôڵײã²ãÃæÈ¥¿´£¬ÍøÂçͨÐÅÐèÒª×öµÄ¾ÍÊǽ«Á÷´Óһ̨¼ÆËã»ú´«Êäµ½ÁíÍâһ̨¼ÆËã »ú£¬»ùÓÚ´«ÊäÐÒéºÍÍøÂçIOÀ´ÊµÏÖ£¬ÆäÖд«ÊäÐÒé±È½Ï³öÃûµÄÓÐ http¡¢tcp¡¢udpµÈµÈ£¬http¡¢tcp¡¢udp¶¼ÊÇÔÚ»ùÓÚSocket¸ÅÄîÉÏΪijÀàÓ¦Óó¡¾°¶øÀ©Õ¹³öµÄ´«ÊäÐÒé£¬ÍøÂçIO£¬Ö÷ÒªÓÐbio¡¢ nio¡¢aioÈýÖÖ·½Ê½£¬ËùÓеķֲ¼Ê½Ó¦ÓÃͨѶ¶¼»ùÓÚÕâ¸öÔÀí¶øÊµÏÖ£¬Ö»ÊÇΪÁËÓ¦ÓõÄÒ×Ó㬸÷ÖÖÓïÑÔͨ³£¶¼»áÌṩһЩ¸üΪÌù½üÓ¦ÓÃÒ×ÓõÄÓ¦ÓòãÐÒé¡£
Ó¦Óü¶ÐÒé
Ô¶³Ì·þÎñͨѶ£¬ÐèÒª´ïµ½µÄÄ¿±êÊÇÔÚһ̨¼ÆËã»ú·¢ÆðÇëÇó£¬ÁíÍâһ̨»úÆ÷ÔÚ½ÓÊÕµ½ÇëÇóºó½ ......
ÕªÖÁSybase¹ÙÍø:
The caller( ) method calls the stored procedure inoutproc:
create proc inoutproc @id int, @newname varchar(50), @newhome Address,
@oldname varchar(50) output, @oldhome Address output as
select @oldname = name, @oldhome = home from xmp where id=@id
update xmp set name=@newname, home = @newhome where id=@id
This procedure has three input parameters (@id, @newname, and @newhome) and two output parameters (@oldname and @oldhome). caller( ) sets the name and home columns of the row of table xmp with the ID value of @id to the values @newname and @newhome, and returns the former values of those columns in the output parameters @oldname and @oldhome.
The inoutproc procedure illustrates how to supply input and output parameters in a JDBC call.
caller( ) executes the following call statement, which prepares the call statement:
CallableStatement cs = con.prepareCall("{call inoutproc (?, ?, ?, ?, ?)}");
All of the parameters of the call are specified as par ......