ʹÓÃJava×öWebÓ¦Óÿª·¢ÒѾÓнü20ÄêµÄÀúÊ·ÁË£¬´Ó×î³õµÄServlet1.0Ò»²½²½ÑÝ»¯µ½ÏÖÔÚÈç´Ë¶àµÄ¿ò¼Ü£¬¿âÒÔ¼°Õû¸öÉú̬ϵͳ¡£¾¹ýÕâô³¤Ê±¼äµÄ·¢Õ¹£¬Java×÷Ϊһ¸ö³ÉÊìµÄÓïÑÔ£¬Ò²ÑÝ»¯³öÁ˷dz£³ÉÊìµÄÉú̬ϵͳ£¬ÕâÒ²ÊÇÐí¶à¹«Ë¾²ÉÓÃJava×÷ΪÖ÷Á÷µÄÓïÑÔ½øÐзþÎñÆ÷¶Ë¿ª·¢µÄÔÒò£¬Ò²ÊÇΪʲôJavaÒ»Ö±±£³Ö×ŷdz£»îÔ¾µÄÓû§Èº¡£

Java¿ª·¢¸ÅÊö£º
ʹÓÃJava×öWebÓ¦Óÿª·¢ÒѾÓнü20ÄêµÄÀúÊ·ÁË£¬´Ó×î³õµÄServlet1.0Ò»²½²½ÑÝ»¯µ½ÏÖÔÚÈç´Ë¶àµÄ¿ò¼Ü£¬¿âÒÔ¼°Õû¸öÉú̬ϵͳ¡£¾¹ýÕâô³¤Ê±¼äµÄ·¢Õ¹£¬Java×÷Ϊһ¸ö³ÉÊìµÄÓïÑÔ£¬Ò²ÑÝ»¯³öÁ˷dz£³ÉÊìµÄÉú̬ϵͳ£¬ÕâÒ²ÊÇÐí¶à¹«Ë¾²ÉÓÃJava×÷ΪÖ÷Á÷µÄÓïÑÔ½øÐзþÎñÆ÷¶Ë¿ª·¢µÄÔÒò£¬Ò²ÊÇΪʲôJavaÒ»Ö±±£³Ö×ŷdz£»îÔ¾µÄÓû§Èº¡£È»¶øÕâ¸öÉú̬ϵͳ·×·±¸´ÔÓ£¬Ò»¸ö·Ç³£¼òµ¥µÄJava
WebÓ¦ÓóÌÐò¶¼ÓпÉÄÜÓ¦Óõ½ÒÔϼ¼Êõ£º

Java¿ª·¢·ÖΪÁ½¸öÕóÓª£¬Ò»¸öÊÇÓÉOracle Ϊ´ú±íµÄJava EEÕóÓª£¬ÕâÊÇWeb¿ª·¢µÄ¹Ù·½²Î¿¼±ê×¼¡£ÆäÖкËÐļ¼ÊõÖ÷ÒªÓÐServlet,
EJB, JMS, JSF, JDBC/JPA, JAXB, JAX-WSµÈ¡£ÁíÒ»¸öÕóÓªÔòÊÇÓÉ¿ªÔ´ÉçÇøÒÔ¼°Pivotal´ú±íµÄSpringÕóÓª£¬ÆäÖкËÐļ¼ÊõÖ÷ÒªÓÐ
Spring Framework, Spring MVC, Spring Data, Spring SecurityµÈµÈ¡£
Spring´Ó×ʼ×÷ΪÒÀÀµ×¢ÈëµÄBean container£¬Öð½¥·¢Õ¹ÎªJavaÓ¦Óÿª·¢µÄÖ÷Á÷¿ò¼Ü¡£Java
EEÒòΪÆäÓ·Ö×£¬¸´ÔÓ£¬ÄÑÒÔʹÓõĽṹ£¬±»ºÜ¶àJava³ÌÐòÔ±Åׯú¡£´ÓJava EE6¿ªÊ¼²ÅÒýÈëÁËCDI (Context
Dependency Injection)£¬¶øÇÒJava EE µÄÉè¼ÆË¼Ïë·Ç³£Ñ§Êõ»¯, Gavin KingµÈÈËÍÑÀëÁ˹¤Òµ½çµÄÐèÇó£¬Ê¹µÃJava
EE¿ª·¢·Ç³£¸´ÔÓ¡£JSFÉõÖÁΪJavaÖ®¸¸James GoslingÚ¸²¡¡£Ïà·´ÔÚSpringÉçÇø£¬Ô½À´Ô½¶àÏÖ´ú»¯µÄÓ¦Óÿª·¢·½·¨±»ÈÚÈë½øÀ´£¬Ðγɲ»Í¬µÄSpringÏîÄ¿¡£
ʲôÊÇSpring Boot?
Spring Boot±ãÊÇÒ»¸öÉçÇø·´À¡Íƶ¯µÄÏîÄ¿. Spring Boot¿ÉÒÔ˵ÊÇÖÁÉÙ½ü5ÄêÀ´SpringÄËÖÁÕû¸öJavaÉçÇø×îÓÐÓ°ÏìÁ¦µÄÏîĿ֮һ¡£Spring
BootÖ÷Òª°üº¬ÒÔÏÂÌØÐÔ£º
1.Ö±½ÓǶÈëTomcat, Jetty»òÕßUndertow×÷ΪServlet
container¡£´Ó´ËÖ®ºóÔÙÒ²²»Óý«Ó¦ÓóÌÐò´ò°ü³ÉwarÈ»ºóÉÏ´«µ½application serverÀïÃæÁË¡£
2.ÌṩÁËstarter POM, Äܹ»·Ç³£·½±ãµÄ½øÐаü¹ÜÀí, ºÜ´ó³Ì¶ÈÉϼõÉÙÁËjar
hell»òÕßdependency hell
3.×Ô¶¯½øÐÐSpring¿ò¼ÜµÄÅäÖ㬽ÚÊ¡³ÌÐòÔ±´óÁ¿µÄʱ¼äºÍ¾«Á¦£¬Äܹ»ÈóÌÐòԱרעÔÚÒµÎñÂß¼´úÂëµÄ±àдÉÏ
4.²»ÐèÒªÈκεÚÈý·½ÏµÍ³, Spring Boot×Ô´øÁË¿ÉÒÔÓÃÓÚÉú²ú»·¾³µÄ³ÌÐò״̬ÐÅÏ¢ºÍ½¡¿µ×´Ì¬¡£Í¬Ê±¿ÉÒÔÈÃÓ¦ÓóÌÐò·Ç³£·½±ãµÄ¶ÁÈ¡ÍⲿµÄÅäÖÃÐÅÏ¢
5.ÍêÈ«²»ÐèÒªÈκδúÂëµÄ×Ô¶¯Éú³É¡£¸ü²»ÐèÒªÓÃxmlÀ´½øÐпò¼ÜµÄÅäÖÃ
ΪʲôSpring BootÊǵ߸²ÐÔµÄ?
Ϊʲô˵Spring BootÊǵ߸²ÐÔµÄÄØ?ÒòΪËü³¹µ×¸Ä±äÁËJavaÓ¦Óÿª·¢µÄģʽ¡£ÒÔÍùÎÒÃÇ×öSpringÓ¦Óÿª·¢£¬ÒªÖªµÀÅäÖÃÄÄЩÀàÀ´ÈÃHibernateºÍSpringÒ»Æð¹¤×÷£¬ÒªÖªµÀÈçºÎÅäÖÃview
resolverÀ´¿ØÖÆÄĸöÄ£°æ½øÐÐÊÓͼ²ãµÄչʾ¡£¾³£Ð´ÁËÒ»´ó¶Ñ´úÂëÖ®ºó·¢ÏÖÖ»ÊÇÔÚ´¦ÀíSpring¿ò¼Ü±¾ÉíµÄÅäÖ㬸ù±¾Ò»ÐÐÒµÎñÂß¼¶¼Ã»ÓÐд¡£¿ª·¢Íê³ÉÖ®ºó£¬ÎÒÃÇ»¹Òª¿¼ÂDz¿ÊðµÄÎÊÌ⣬ÇÒ²»Ëµ²¿Ê𵽷dz£±¿ÖصÄÓ¦Ó÷þÎñÆ÷£¬±ÈÈçWebSphere,
Weblogic»òÕßJBoss£¬¼´Ê¹²¿Êðµ½Tomcat»òÕßJettyÕâÖÖÇáÁ¿¼¶ÈÝÆ÷ÉÏÃæ£¬ÎÒÃÇÒªÖªµÀÈçºÎÅäÖÃÈÝÆ÷£¬ÈçºÎÐÞ¸ÄÅäÖÃÎļþµÈµÈ¡£¶øÇÒÔÚ¶àÓ¦Óò¿Êðµ½Í¬Ò»¸öTomcatµÄʱºò£¬¾³£»á³öÏÖ³åÍ»¡£¾ÍËãÎÒÃÇ»¨Á˺ܴóÁ¦Æø½â¾öÁËÕâЩÎÊÌ⣬³ÌÐò²¿Êð³É¹¦Ö®ºó£¬ÎÒÃǺÜÄÑÈ¥Á˽âÕâ¸ö³ÌÐòµÄÔËÐÐ״̬¡£ÓпÉÄÜÎÒÃÇÒªÅäÖúܶàµÚÈý·½¹¤¾ßÀ´È¥ÖªµÀÕâ¸öÓ¦ÓóÌÐòÔËÐÐ״̬ÈçºÎ£¬ÓÐÄÄЩ²ÎÊý£¬»·¾³±äÁ¿ÊÇʲô¡£¾¡¹ÜSpring°ïÎÒÃǽâ¾öÁËÒÀÀµ×¢ÈëµÄÎÊÌ⣬¼ò»¯ÁËһЩMVCµÄÁ÷³Ì£¬µ«ÊÇSpring¿ò¼Ü±¾Éí¼¯³ÉÁËÔ½À´Ô½¶à¶«Î÷£¬µ¼ÖÂÆäÔ½À´Ô½ÄÑÅäÖã¬Î¬»¤³É±¾³ÉÖ±ÏßÉÏÉý¡£ºÜ¶àʱºòJava³ÌÐòÔ±ÃÇ¿´µ½Python,
Ruby»òÕßJavaScript³ÌÐòÔ±Çü¸¸öÃüÁװһЩ¿â£¬È»ºó¼òµ¥µÄÇü¸ÐдúÂ룬ÒýÈëһЩ¿ò¼Ü±ÈÈçflask£¬È»ºóÖ±½ÓÒ»¸ö¼òµ¥µÄAPI¾Í¿ÉÒÔÅÜÆðÀ´ÁË¡£ÕâʱºòJava³ÌÐòÔ±¿ÉÄÜ»¹ÔÚÑо¿¸ÃʹÓÃMavenÀïÃæµÄÄĸö¿â£¬ÈçºÎÔÚ´úÂëÀïÃæ½øÐÐÅäÖÃÄØ¡£´ó¼ÒÐÄÀïµÄ±íÇé¿Ï¶¨ÊÇÕâÑù£º

(Çó´ËʱJava³ÌÐòÔ±ÐÄÀíÒõÓ°Ãæ»ý)
Java³ÌÐòÔ±ÑïüÍÂÆøµÄʱºòµ½ÁË!

´«Í³Spring¿ª·¢¶Ô¾öSpring BootÓ¦Óÿª·¢
½ÓÏÂÀ´ÎÒ»áͨ¹ý¾ßÌåÀý×ӶԱȴ«Í³µÄSpringÓ¦Óÿª·¢ºÍSpring BootÓ¦Óÿª·¢¡£¼ÙÈçÎÒÃÇ¿ª·¢Ò»¸öHello
WorldµÄREST API£¬´«Í³µÄSpring¿ª·¢Ó¦¸ÃÕâô×ö.
1. Èç¹ûʹÓÃMaven½øÐаü¹ÜÀí£¬±àдpom.xml ÈçÏÂ


ÈçÉÏ¿ÉÒÔ¿´µ½ÎªÁ˱àд¼òµ¥µÄhello world REST APIÎÒÃÇÒýÈëÁËSpring Core,
Spring Web, Spring Web MVC, Java Servlet and JacksonÕâô¶à°üÒÀÀµ¡£¿ÉÒÔÏëÏó¸´ÔÓÒ»µãµÄ³ÌÐòÕâ¸öpom»á±ä³ÉʲôÑù¡£¡£¡£
2. ±àдHelloWorldInitializer classÈçÏÂ

Õâ¸öÒѾÊǷdz£¼òµ¥µÄJava ConfigÁË£¬ÔÚServlet 3.0֮ǰÓÃXMLÅäÖÃSpringµÄС»ï°éÃÇÏÖÔÚ¹À¼ÆÒѾ±ÀÀ£¡£
3. ±àдHelloWorldConfiguration class

×¢Òâµ½ÎÒÃÇÕâ¸öÀàÀïÃæÒ»ÐÐÒµÎñÂß¼¶¼Ã»ÓÐŶ¡£¡£¡£
4. ÕæÕý¿ªÊ¼±àдHelloWorldRestController

5. ÏÂÔØTomcat
6. ´ò°ü²¿Êðµ½TomcatÉÏ
7.·ÃÎÊlocalhost:8080/HelloWorld, ÄãÖÕÓÚ¿´µ½ÁËHello
World¡
дµ½ÕâÀïÎÒÒѾÀÛ¾õ²»°®ÁË¡£¡£¡£
½ÓÏÂÀ´JavaÀÏ˾»ú»á´øÁìÄãÃǸÐÊÜÒ»ÏÂSpring BootµÄ÷ÈÁ¦£º

1. ±àдpom.xml


×¢Òâµ½ÎÒÃÇÖ»ÒýÈëÁËÒ»¸ö°üÒÀÀµ£¬²¢ÇҰ汾ʲôµÄ¾ÍËæËûÈ¥°É
2. ±àдmain º¯Êý

ÎÒÃÇÔÚÕâÀï±ê¼ÇHelloWorldDemoApplication classΪSpringBootApplication,
Spring Boot ÔÚºǫ́»á¸ù¾ÝÕâ¸ö±ê¼Ç½øÐкܶà×Ô¶¯ÅäÖ㬱ÈÈçÅäÖÃMVC£¬ÅäÖðüɨÃ裬עÈë±ØÒªµÄÀ࣬עÈë×Ô¶¯ÅäÖõÄÀàµÈµÈ¡£
ÕâÀïµÄmainº¯ÊýÊÇÒ»¸öjava±ê×¼µÄmainº¯Êý£¬Õâ¸öÏ൱ÓÚÓ¦ÓóÌÐòÈë¿Ú£¬servlet container»áÔÚÆô¶¯µÄʱºòÕÒµ½Õâ¸öÈë¿Ú£¬Æô¶¯Spring
container£¬Íê³É³õʼ»¯¡£
3. ±àдHelloWorldRestController

4. Ö±½ÓÆô¶¯Ó¦ÓóÌÐò£¬²»ÐèÒª²¿Êð

5. ·ÃÎÊ http:// localhost:8080 ¾Í¿ÉÒÔÖ±½Ó¿´µ½Hello
WorldÁË

֮ǰHelloWorld³ÌÐò¶ÔÓÚÐÂÊÖÀ´ËµÖÁÉÙÒª»¨¸ö10-20·ÖÖÓÖ®ÀàµÄ£¬ÓÐÁËSpringBoot, ×î¶à3·ÖÖÓÖ®Äڸ㶨HelloWorld²»ÊÇÃΡ£
×ܽá
ÕâÀïÎÒÖ»ÊǼòµ¥µÄ¶ÔSpringBoot½øÐÐÁ˽²½â£¬SpringBootÓзdz£¶àÖµµÃÉîÈëÌÖÂ۵Ķ«Î÷£¬Ëü²»½öÈÃÎÒÃÇ×öJava¿ª·¢±äµÄ¼òµ¥ÓÐЧ£¬¸üÖØÒªµÄÊÇSpringBoot³¹µ×µß¸²ÁËÎÒÃǶÔJava¿ª·¢µÄÈÏʶ£¬ÈÃÎÒÃǵÚÒ»´ÎÓÐÁË¡±ÔÀ´Java¿ª·¢¿ÉÒÔÕâô×ö¡±
µÄ¸Ð¾õ¡£ÓÐÁËSpringBootÖ®ºó£¬Java³ÌÐòÔ±¿ÉÒÔ¸üרעÓÚÒµÎñÂß¼£¬½øÐиüÃô½ÝµÄ¿ª·¢¡£ |