±à¼ÍƼö: |
ÎÄÕÂÖ÷Òª½éÉÜչʾÁËÒ»¸ö»ùÓÚSSH,B/S½á¹¹µÄµ¥ÌåJavaÓ¦ÓõĴ¹ý³Ì,һվʽ
SpringΪÆóÒµ¼¶Ó¦ÓÃÌṩÁËһվʽµÄ½â¾ö·½°¸,Ï£Íû¶ÔÄúµÄѧϰÓÐËù°ïÖú¡£
±¾ÎÄÀ´×ÔÓÚcsdn£¬ÓÉ»ðÁú¹ûÈí¼þDelores±à¼¡¢ÍƼö¡£ |
|
ÔÚѧϰSpring֮ǰÊ×ÏÈÀ´¿´Ò»ÕÅͼ£¬Í¨¹ý¶ÔÓÚÕâÕÅͼµÄÀí½â½øÈëÎÒÃÇÐèҪѧϰµÄJava¿ò¼ÜSpring¡£

ÕâÕÅͼÉÏչʾÁËÒ»¸ö»ùÓÚSSH,B/S½á¹¹µÄµ¥ÌåJavaÓ¦ÓõĴ¹ý³Ì£¬Ê×ÏÈͨ¹ýä¯ÀÀÆ÷½øÈëµ½FilterÀ¹½ØÆ÷£¬½øÈëµ½Structs2£¬Í¨¹ýService²ã½øÈëµ½Hibernate£¬´Ó¶ø½øÐÐÊý¾Ý¿â£¬¾¹ý¶øÕâÕû¸ö¹ý³Ì¶¼ÊÇÓÉSpringIOCÈÝÆ÷¿ØÖÆ¡£ÕâÕÅͼÏòÎÒÃÇչʾÁËÒ»¸ö±È½Ï»ù´¡µÄJavaWebµÄ´î½¨¹ý³Ì¡£Íò±ä²»ÀëÆä×Ú£¬ºóÀ´Ê¹ÓõÄSSM¿ò¼Ü£¬ÏÖÔڱȽϻðµÄ΢·þÎñ¼Ü¹¹£¬¶¼Àë²»¿ªÕâÕÅͼÉÏչʾµÄÄÚÈÝËùÌṩ¸ø´ó¼ÒµÄ˼Ï롣ÿ¸ö¿ò¼ÜµÄʵÏÖ×ÚÖ¼¶¼ÊÇÒ»ÑùµÄ£¬Ö»²»¹ýʵÏֵķ½Ê½²»Ò»Ñù¡£ÆäʵÔÚÕâ¸ö¿ò¼Ü×î³õµÄʱºòÓ¦¸ÃÊÇÒÔJSP+Servlet±È½Ï³£Ó㬺óÀ´ÎªÁ˽â¾öǰºó¶Ë·ÖÀëµÄÎÊÌ⣬½µµÍñîºÏ¶È¡£½«ÕâЩ¹¦Äܽṹ°´ÕÕMVC·Ö²ãʵÏÖ¡£¸öÈ˵ÄÀí½âMVCΪһÖÖ³ÌÐòÉè¼ÆË¼Ï룬¿ÉÒԺܶೡºÏʹÓõ½£¬´ÓWeb¡¢ºó¶Ë¡¢Òƶ¯¶ËÔںܶàµÄ³¡ºÏϽ«MVC×÷ΪһÖÖ³ÌÐòÉè¼ÆË¼ÏëÓ¦¸ÃÊDZȽÏÇ¡µ±µÄ£¬¶ÔÓÚMVCµÄÉè¼ÆË¼ÏëÕâÀï²»×ö¹ý¶àµÄ˵Ã÷¡£ÏÂÃæÎÒÃǾÍÀ´Ñ§Ï°Spring¿ò¼ÜµÄÉîÈëÀí½â£¬¼ÈȻ˵µ½ÒªÉîÈëÀí½âÄÇô¾ÍÓ¦¸ÃÏÈÀ´¸ö¼òµ¥Ò»µãµÄΪÒýµ¼½øÈëµ½Éî´¦¡£
Ïȼòµ¥µÄ½âÊÍÒ»ÏÂSpringÊÇʲô¶«Î÷¡£Ê×ÏÈSpringÊÇÒ»¸ö¿ªÔ´µÄ¿ò¼Ü£¬ÊÇÓÉApache¹«Ë¾¿ª·¢µÄ£¬SpringÊÇΪÁ˼ò»¯ÆóÒµ¼¶Ó¦Óÿª·¢¶øÉúµÄ£¨Ò²¾ÍÊÇÉÏÃæÄÇÕÅͼÉÏËùչʾµÄÄÚÈÝ£©£¬Ê¹ÓÃSpring¿ÉÒÔʹ¼òµ¥µÄJavaBeanʵÏÖÒÔǰֻÓÐEJB£¨ÆóÒµ¼¶JavaBean£©²ÅÄÜʵÏֵŦÄÜ¡£SpringÊÇÒ»¸öIOC£¨DI£©ºÍAOPÈÝÆ÷¿ò¼Ü
IOC£º¿ØÖÆ·´×ª£¨ÒÀÀµ×¢È룩
AOP£ºÃæÏòÇÐÃæ±à³Ì
¾ßÌåµÄ˵SpringµÄÌØµãÓÐÒÔϼ¸µã
-ÇáÁ¿¼¶£º²»ÊÇ˵SpringµÄ´úÂëÉÙ£¬¶øÊÇSpringÊÇ·ÇÇÖÈëʽµÄ£¬Ò²¾ÍÊÇ˵ÒýÈëSpring¿ò¼Ü²¢²»»á¶ÔÔÀ´µÄÓ¦ÓòúÉúÓ°Ï죬Ҳ¿ÉÒÔÀí½âΪ»ùÓÚSpring¿ª·¢µÄÓ¦ÓÃÖжÔÏó¿ÉÒÔ²»ÒÀÀµÓëSpringµÄAPI£¨Ó¦ÓóÌÐò½Ó¿Ú£©
-ÒÀÀµ×¢È루DI£©Dependency Injection
-ÃæÏòÇÐÃæ±à³Ì£¨AOP£©Aspect oriented programming
-ÈÝÆ÷ ´ÓÉÏÃæÍ¼ÖÐÎÒÃÇ¿ÉÒÔ¿´³öºÜ¶àµÄ¿ò¼Ü£¬ÀýÈçStruts2¡¢hibernate¡¢mybatisµÈ¿ò¼Ü¶¼ÊÇ¿ÉÒÔ±»×°ÈëSpringµÄÈÝÆ÷ÖС£Õâ¸öÈÝÆ÷°üº¬²¢ÇÒ¹ÜÀíÓ¦ÓöÔÏóµÄÉúÃüÖÜÆÚ¡£
-¿ò¼Ü Spring ʵÏÖÁ˼òµ¥µÄ×é¼þµÄÅäºÏ×é³ÉÒ»¸ö¸´ÔÓµÄÓ¦Óã¬ÔÚSpringÖпÉÒÔʹÓÃXMLºÍJava×¢½â×éºÏÕâЩ¶ÔÏó¡£
-һվʽ SpringΪÆóÒµ¼¶Ó¦ÓÃÌṩÁËһվʽµÄ½â¾ö·½°¸£¬ÔÚIOCºÍAOP»ù´¡ÉÏ¿ÉÒÔÕûºÏ¸÷ÖֵįóÒµÓ¦ÓõĿªÔ´µÄ¿ò¼ÜºÍÓÅÐãµÄµÚÈý·½Àà¿â£¨Êµ¼ÊÏëSpring×ÔÉíÒ²ÊÇÌṩÁËSpringMVCÕ¹Ïֲ㼼ÊõºÍSpringJDBCÊý¾Ý³Ö¾Ã»¯¼¼Êõ£©µ«ÊÇÓÉÓÚSpringÌṩÁËһվʽµÄ½â¾ö·½°¸£¬²Å»áÓÐÄÇôµÄ¿ªÔ´¼¼Êõͨ¹ýSpring¿ò¼ÜÕûºÏÐγɱÈSpringÔÉú¸ü¼ÓÓÅÐãµÄ½â¾ö·½°¸

ÀýÈçͼÖÐSpringÌṩÁËCore ContainerºËÐÄÈÝÆ÷¡¢DataAccess/IntegrationÊý¾Ý³Ö¾Ã»¯¡¢WebµÈµÄÖ§³Ö¡£
½éÉÜÍêSpringµÄÖ÷ÒªÄÚÈÝÖ®ºó£¬ÎÒÃǾÍÀ´¿´¿´SpringµÄ¿ª·¢»·¾³µÄ´î½¨£¬ÏÂͼÖÐչʾÁËSpring¿ò¼ÜËùÐèÒªµÄ»ù±¾jar°ü¡£ÕâÀïͼÖÐչʾµÄÊÇSpring4µÄJar°ü£¬Êµ¼Ê¿ª·¢ÖпÉÒÔ¸ü¾ßʵ¼ÊÇé¿öÑ¡Ôñ×Ô¼ºµÄ°æ±¾¡£

¿ª·¢¹¤¾ßÓÉ×Ô¼ºÑ¡ÔñÕâÀïÎÒËùÓõĿª·¢¹¤¾ßÊÇIntelliJ IDEA ¿ª·¢¹¤¾ß£¬¹¹½¨µÄSpring¹¤³ÌĿ¼ÈçÏÂͼËùʾ

ÕâÀï½éÉÜÒ»¸öSpringÅäÖÃÎļþµÄλÖã¬Ò»¸öµäÐ͵ÄSpringÏîÄ¿ÐèÒªÔÚ´´½¨Ò»¸ö»òÕß¶à¸öBeanµÄÅäÖÃÎļþ£¬ÕâЩÅäÖÃÎļþÓÃÓÚÔÚSpringIOCÈÝÆ÷ÀïÅäÖÃBean£¬BeeanµÄÅäÖÃÎļþͨ³£Çé¿öÏ·ÅÔÚclasspath·¾¶Ï£¬µ±È»Ò²¿ÉÒÔ·ÅÔÚÆäËüĿ¼Ï¡£ÔÚ¿ªÖо³£·ÅÖõÄλÖþÍÊÇÀà·¾¶Ï£¬ÈçÉÏͼÖÐËùʾ¡£
´´½¨Ò»¸öSpringÏîÄ¿
µ¼Èëjar°ü
´´½¨ÊµÀý¶ÔÏó
package com.nihui.spring.bean;
import java.util.ArrayList;
public class World {
private String name; public void hello(){
System.out.println ("hello world "
+name );
} public String getName() {
return name;
}
public void setName (String name) {
this.name = name;
}
} |
ÅäÖÃSpringÅäÖÃÎļþ
< xml version="1.0"
encoding="UTF-8" >
<beans xmlns= "http://www.springframework.org/schema/beans"
xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation= "http://www.springframework.org/schema/beans
http://www.springframework.org /schema/beans/spring-beans.xsd">
<bean id="World" class="com.nihui.spring.bean.World">
<property name="name" value="Spring"> </property>
</bean>
</beans> |
´´½¨³ÌÐòÆô¶¯Àà
package com.nihui.spring.bean;
import org.springframework. context.ApplicationContext;
import org.springframework.context.support. ClassPathXmlApplicationContext;
public class Main {
public static void main (String[] args) {
//ʹÓÃSpring¿ò¼ÜÖ®ºóÕâЩ²Ù×÷ ¶¼¿ÉÒÔ½»¸øSpringÀ´Íê³É
//1.´´½¨SpringµÄIOCÈÝÆ÷
ApplicationContext context = new ClassPathXmlApplicationContext ("applicationContext.xml");
//2.´ÓIOCÈÝÆ÷ÖлñÈ¡µ½BeanµÄʾÀý
World helloWorld = (World) context.getBean("World");
//3.½øÐз½·¨µÄµ÷ÓÃ
|
Íê³ÉÒÔÉϵIJÙ×÷¾ÍʹÓÃSpring´´½¨Ò»¸ö¼òµ¥µÄSpringµÄÏîÄ¿£¬Í¬ÑùÒ²ÊÇSpring×î¼òµ¥µÄʹÓó¡¾°¡£ÔÚʵ¼Ê¿ª·¢ÖÐSpringµÄÓ¦Óû¹ÊDZȽϸ´Ôӵģ¬Ê×ÏÈ×î¼òµ¥µÄ·½Ê½À´Ñ§Ï°¡£
½ÓÏÂÀ´½éÉܵÄÊÇSpringÅäÖÃÎļþ£¬ÎÒÃǶ¼ÖªµÀSpring¿ò¼ÜÔÚʹÓõÄʱºò²¢²»ÊÇÎÒÃÇÀý×ÓÖÐËùÌåÏÖµÄÄǸöÑù×Ó£¬¶øÊÇͨ¹ýÅäÖÃÎļþµÄ·½Ê½½«¸÷ÖÖ¸÷ÑùµÄ×ÊÔ´ÕûºÏÔÚÒ»Æð£¬Õâ¸ö¸ÅÄîÔÚ֮ǰҲÓÐÌáµ½¹ý£¬ËùÒÔÔÚSpring¿ª·¢ÖÐÅäÖÃÎļþµÄ±àдҲÊDZȽÏÖØÒªµÄ¡£
IOCºÍDI
Ê×Ïȼòµ¥µÄ˵һÏÂIOC£¨¿ØÖÆ·´×ª£©£¬IOCµÄ»ù±¾Ë¼Ïë¾ÍÊÇ·´×ª×ÊÔ´»ñÈ¡µÄ·½Ïò£¬´«Í³µÄ×ÊÔ´²éÕÒ·½Ê½ÒªÇó×é¼þÏòÈÝÆ÷·¢ÆðÇëÇó£¬È»ºó»ñÈ¡µ½ËùÒªÇëÇóµÄ×ÊÔ´×÷Ϊ»ØÓ¦£¬Ó¦ÓÃÁËIOCÖ®ºó£¬ÔòÊÇÈÝÆ÷Ö÷¶¯µÄ½«×ÊÔ´ÍÆË͸øËüËù¹ÜÀíµÄ×é¼þ£¬×é¼þÖ»ÐèÒª×öµÄÊÇÑ¡ÔñÒ»ÖÖºÏÊʵķ½Ê½À´½ÓÊÜ×ÊÔ´£¬ÕâÖÖÐÐΪ¾Í±»¿´×öÊÇ×é¼þ±»¶¯µÄ²éÕÒ×ÊÔ´¡£DI(ÒÀÀµ×¢Èë)£¬Õâ¸öÊǶÔIOCµÄÁíÒ»ÖÖ±í´ï·½Ê½£¬Ò²¾ÍÊÇ×é¼þÒÔһЩԤÏȶ¨ÒåºÃµÄ·½Ê½£¨ÀýÈçsetter·½·¨£©½ÓÊÜÀ´×ÔÈÝÆ÷µÄ×ÊÔ´×¢È룬Ïà¶ÔÓÚIOC¶øÑÔ£¬ÕâÖÖ±íÊö¸üÖ±½Ó¡£

Èçͼ£¬´«Í³Çé¿öÏÂÒ»¸öÈÝÆ÷ÖÐÓÐÁ½¸öÀàAºÍB£¬ÒªÏë°ÑAÀà×÷ΪBÀàµÄÊôÐÔÐèÒªÏÈ´´½¨Ò»¸öAÀàµÄ¶ÔÏó£¬È»ºó´´½¨Ò»¸öBÀàµÄ¶ÔÏó£¬Í¨¹ý¶ÔÏóµÄsetter·½·¨½«Õâ¸öÊôÐÔ¸³¸øBÀà¡£¶øÊ¹ÓÃIOCÈÝÆ÷£¬ÔòÊÇÈÝÆ÷¾Í°ÑÕâ¸ö×¢Èë¹ØÏµ¸øÍê³ÉÁË£¬ÎÒÃÇÖ»ÐèҪͨ¹ýBÀàµÄgetter·½·¨»ñÈ¡µ½¶ÔÏóµÄÊôÐԾͿÉÒÔÁË£¬´ïµ½ÁËÔÚ´úÂëÉϵĽâñîºÏ¡£
ÔÚIOC֮ǰÐèÒª½â¾öµÄ¼¸¸öÎÊÌâ
-·ÖÀë½Ó¿ÚµÄʵÏÖ
ÐèÇó£ºÉú³ÉHTML»òPDF¸ñʽµÄ²»Í¬ÀàÐͱ¨±í

ÈçͼÐèÒªÏȶ¨ÒåÒ»¸öReportServiceÀ࣬¶øÁ½ÖÖʵÏÖ·½Ê½ÐèҪʵÏÖͬһ¸ö½Ó¿Ú£¬¶øÇÒ½Ó¿ÚºÍÁ½¸öÀà¶¼ÐèÒª¼Ì³ÐReportServiceÀà¡£²¢Ã»ÓÐʵÏÖ½âñîºÏ£¬×é¼þÀàÖ®¼äµÄñîºÏ¶È»¹ÊǺܸߡ£Õâ¸ö¾ÍÒý³öÁ˵ڶþÖÖ·½Ê½
-²ÉÓù¤³§Éè¼ÆÄ£Ê½

ÕâÀï¿´³ö£¬ReportServiceÓ빦ÄÜÀàÖ®¼äµÄñîºÏ¶È½µµÍÁË£¬µ«ÊÇÓ빤³§ÀàÖ®¼äµÄñîºÏÓÐËùÔö¼Ó£¬Ò²Ã»ÓкܺõĽâ¾ö×é¼þÖ®¼äµÄñîºÏÎÊÌâ¡£ÕâÖÖÇé¿öÏ£¬ÐèÒªÀ©Õ¹Ð¹¦ÄܵÄʱºòÐèÒª¸Ä¶¯µÄÀ໹ÊDZȽ϶àµÄ£¬¸÷¸ö¹¦ÄÜÀàÖ®¼äµÄÓ°Ï컹ÊDZȽϴóµÄ¡£
-²ÉÓÿØÖÆ·´×ª

ÕâÀïÎÒÃÇ¿ÉÒÔ¿´³öÓ빤³§Éè¼ÆÄ£Ê½Ïà±È½Ï£¬ReportServiceÓ빦ÄÜÀàÖ®¼äµÄñîºÏ¶ÈÓÐËù½µµÍ£¬µ«ÊÇÏà±È½Ï֮ϣ¬ÔÚʵÏÖ²»Í¬µÄ¹¦ÄܵÄʱºòÖ»ÐèÒªÀ©Õ¹ReportGenerator½Ó¿Ú¾Í¿ÉÒÔÒÔÁË¡£ContainerÀàÖ±½Ó×÷Ϊһ¸ö¡°ÖмäÈË¡±µ÷ºÍÁË×é¼þÖ®¼äµÄ¹ØÏµ¡£
ÕâÀïÎÒÃÇ¿ÉÒÔÀ´Á˽âÒ»ÏÂSpring¿ò¼ÜµÄµ×²ãʵÏÖÔÀí£¬ÕâÀïÎÒÃÇ¿ÉÒÔ¿´µ½¿ØÖÆ·´×ªÓ빤³§·½·¨Ä£Ê½µÄ×î´óµÄ²îÒì¾ÍÊÇÉÙÁËÒ»¸ö¹¤³§ÀàµÄ¼¯³É£¬¶øÊÇͨ¹ýÈÝÆ÷½«Õâ¸öÒÀÀµ×¢Èëµ½Á˸÷¸öÀàÖУ¬²»ÊÇͨ¹ý¹¤³§À´»ñÈ¡¡£ÆäʵÔÚSpringµ×²ãʵÏÖÖоÍÊÇͨ¹ý¹¤³§Ä£Ê½ÊµÏÖÁ˹¦ÄÜÀàÖ®¼äµÄ½âñîºÏ¡£Ê¹Óù¤³§Ä£Ê½»ñÈ¡µ½¶ÔÓ¦µÄÅäÖÃÎļþÖеÄÄÚÈÝ£¬ÀûÓ÷´Éä»úÖÆ»ñÈ¡µ½ÅäÖÃÎļþÖж¨ÒåµÄÀàµÄʵÀý¶ÔÏó£¬È»ºóͨ¹ý¹¤³§Àà·µ»Ø¡£ÕâÑù¿´À´SpringÈÝÆ÷Ëù×öµÄÊÂÇé¾ÍÊǽ«ÕâЩ¶«Î÷½øÐÐÁËÒ»¸ö¼òµ¥µÄ·â×°¡£Ö÷ҪʹÓõ½µÄÔÀí¾ÍÊÇJavaÌṩµÄ·´Éä»úÖÆ£¬µ±È»Á˵ײãʵÏÖ²¢²»½ö½öʹÓõ½µÄÕâ¸ö¼¼ÊõÓ¦¸ÃÊǶàÖÖ¼¼ÊõµÄ½áºÏ¡£²ÅÄܵ®ÉúSpringÕâÑùÒ»¸öÓÅÐãµÄ¿ò¼Ü¡£
ÄÇô¼òµ¥µÄ˵Íêµ×²ãµÄÔÀíÎÒÃǾÍÀ´Á˽âÒ»ÏÂÕâ¸öÅäÖÃÎļþµ½µ×Ó¦¸Ã¸ÃÔõôʹÓá£ÔÚJavaÖÐÎÒÃÇʹÓÃdom4jÀ´½âÎöXMLÅäÖÃÎļþ£¬µ±È»Spring»¹ÌṩÁË×¢½â·½Ê½£¬ÕâÀïÎÒÃÇÏȽéÉÜÒ»ÏÂXMLÅäÖÃÎļþ¶ÔÓÚBean¶ÔÏóµÄÅäÖÃ
BeanÅäÖ÷½Ê½£¬Í¨¹ýÈ«ÀàÃû£¨Ö÷ÒªÓû§·´Éä¿ÉÒÔÕÒµ½¶ÔÓ¦µÄÀࣩ¡¢Í¨¹ý¹¤³§·½·¨£¨¾²Ì¬¹¤³§·½·¨&ʵÀý¹¤³§·½·¨£©¡¢FactoryBean¡£ÔÚSpringIOCÈÝÆ÷ÓÐÁ½ÖÖ£¬Ò»ÖÖÊÇBeanFactoryÒ»ÖÖÊÇApplicationContext£¬ÕâÀïÐèҪ˵Ã÷Ò»ÏÂBeanFactoryºÍFactoryBean²¢²»ÊÇÎÒд´íÁ˶øÊÇÒ»¸öÊÇÃæÏò¿ª·¢Õߣ¬Ò»¸öÃæÏòSpringµ×²ã¡£ÄÇô£¬ÄÄÒ»¸öÊÇÃæÏò¿ª·¢Õߣ¬ÄÄÒ»¸öÊÇÃæÏòSpringµ×²ãÄØ£¿ÔÚÉÏÃæÎÒÃÇ˵¹ýSpring¿ò¼ÜµÄµ×²ãÊÇͨ¹ý¹¤³§Ä£Ê½ÊµÏÖµÄËùÒÔ˵FactoryBeanÊÇΪÁ˵ײãÌṩ²»Í¬µÄ¡°¹¤³§¡±£¬¶øBeanFactoryÊÇÃæÏò¿ª·¢Õߣ¬µ«ÊÇÕâ¸öÎÒÃDz¢²»»á¾³£µÄʹÓã¬Õâ¸öÃæÏò¿ª·¢ÕßÓ¦¸Ã¶¨ÒåΪSpring¿ª·¢Õß¶ø²»ÊÇÓ¦Óÿª·¢Õß¡£×÷ΪӦÓÿª·¢Õß¾³£Ê¹Óõ½µÄ¾ÍÊÇApplicationContext¡£
ÒÀÀµ×¢ÈëµÄ·½Ê½ÓÐÁ½ÖÖÒ»ÖÖÊÇÊôÐÔ×¢È룬һÖÖÊǹ¹ÔìÆ÷×¢Èë¡£
<bean id="World"
class= "com.nihui.spring.bean.World">
<property name="name" value="Spring"></property>
</bean> |
ÔÚXMLÎļþÖÐͨ¹ýBean½ÚµãµÄ·½Ê½£¬À´ÅäÖÃBean£¬¶øÕâ¸ö½âÎö¹æÔòÊÇÓÉSpring¹æ¶¨ºÃµÄ¡£
id£ºBeanÃû×Ö£¬Î¨Ò»±êʶ£¬ÈôidûÓÐÖ¸¶¨Spring½«×Ô¶¯½«È¨ÏÞ¶¨ÐÔΪÀàÃû×÷ΪBeanµÄÃû×Ö£¬id¿ÉÒÔÖ¸¶¨¶à¸öÃû×Ö£¬Ãû×ÖÖ®¼äͨ¹ý¶ººÅ¡¢·ÖºÅ»òÕ߿ոñ·Ö¸ô¡£
SpringÈÝÆ÷ÖжÁÈëBeanÅäÖý¨Á¢Ò»¸öBean֮ǰ£¬±ØÐë¶ÔËü½øÐÐʵÀý»¯£¬Ö»ÓÐÔÚÈÝÆ÷ʵÀý»¯Ö®ºó²Å¿ÉÒÔ´ÓIOCÈÝÆ÷ÖлñÈ¡µÄBean¶ÔÏóµÄʵÀý²¢Ê¹Óá£ÕâÀï¾ÍÌáµ½ÁË֮ǰµÄÄÚÈÝ£¬ÕâÀïÎÒÃǶÔÕâÀïÁ½¸öʵÀý»¯IOCÈÝÆ÷µÄ·½Ê½×ö¹Ù·½µÄÀí½â
BeanFactory£ºIOCÈÝÆ÷µÄ»ù±¾ÊµÏÖ£¬Ò²¾ÍÊÇ֮ǰÌáµ½µÄSpringµ×²ãʵÏÖ£¬¿ÉÒÔÀí½âΪSpringµÄ¡°»ù´¡ÉèÊ©¡±£¬ÃæÏòSpring±¾Éí£»Ò²¾ÍÊÇ֮ǰÌáµ½µÄSpringµÄ¿ª·¢Õߣ¬
ApplicationContext£ºÌṩÁ˸ü¶àµÄ¸ß¼¶ÌØÐÔ£¬ÊÇBeanFactoryµÄ×Ó½Ó¿Ú£¬ÃæÏòSpringÓ¦Óÿª·¢Õߣ¬µ«ÊǼ¸ºõËùÓеÄÓ¦Óó¡ºÏ¶¼ÊÇÖ±½ÓʹÓÃApplicationContext¶ø²»ÊÇʹÓõײãµÄBeanFactory¡£µ«ÊÇÎÞÂÛÄÄÒ»ÖÖʵÏÖ·½Ê½£¬ÅäÖÃÎļþ¶¼ÊÇÏàͬµÄ¡£
ÕâÀïÏêϸ½éÉÜÒ»ÏÂApplicationContext
ApplicationContextÓÐÁ½¸öÖ÷ÒªµÄʵÏÖÀ࣬ClassPathXmlApplicationContext:´ÓÀà·¾¶Ï¼ÓÔØÅäÖÃÎļþ£»FileSystemXmlApplicationContext£º´ÓÎļþϵͳÖмÓÔØÅäÖÃÎļþ¡£ConfigurationApplicationÀ©Õ¹ÓëApplicationContext£¬ÐÂÔö¼ÓµÄÁ½¸öÖ÷Òª·½·¨£¬refresh()ºÍclose(),ÈÃApplicationContext¾ßÓÐÆô¶¯¡¢Ë¢Ðº͹رÕÉÏÏÂÎĵÄÄÜÁ¦¡£
ApplicationContextÔÚ³õʼ»¯ÉÏÏÂÎÄʱ¾ÍʵÀý»¯ËùÓеĵ¥ÀýBean¡£
WebApplicationContextÊÇרÃÅΪWEBÓ¦Óöø×¼±¸£¬ËüÔÊÐí´ÓÏà¶ÔÓÚWEBµÄ¸ùĿ¼µÄ·¾¶ÖÐÍê³É³õʼ»¯¹¤×÷¡£

|