¸üÐÂʱ¼ä:2023Äê09ÔÂ14ÈÕ10ʱ07·Ö À´Ô´:ÀÖÓãµç¾º ä¯ÀÀ´ÎÊý:

¡¡¡¡Spring FrameworkÖÐÓжàÖÖIOC(Inversion of Control)ÈÝÆ÷£¬Ã¿ÖÖÈÝÆ÷¶¼ÌṩÁ˲»Í¬µÄ¹¦ÄܺÍÓÃ;¡£ÒÔÏÂÊÇSpringÖеÄÖ÷ÒªIOCÈÝÆ÷£º
¡¡¡¡·BeanFactoryÊÇSpringµÄ×î»ù±¾µÄIOCÈÝÆ÷¡£
¡¡¡¡·ËüÌṩÁË»ù±¾µÄIOC¹¦ÄÜ£¬°üÀ¨BeanµÄÉúÃüÖÜÆÚ¹ÜÀíºÍÒÀÀµ×¢Èë¡£
¡¡¡¡·BeanFactoryÊÇÑÓ³Ù³õʼ»¯µÄÈÝÆ÷£¬¼´Ö»ÓÐÔÚµÚÒ»´ÎÇëÇóBeanʱ²Å»áʵÀý»¯¡£
¡¡¡¡·ApplicationContextÊÇBeanFactoryµÄ×Ó½Ó¿Ú£¬ËüÌṩÁ˸ü¶àµÄÆóÒµ¼¶¹¦ÄÜ¡£
¡¡¡¡·ËüÊÇÒ»¸öÔÚÆô¶¯Ê±¾Í»áÔ¤ÏÈʵÀý»¯ËùÓе¥ÀýBeanµÄÈÝÆ÷£¬Òò´ËÆô¶¯Ê±¼ä»á±ÈBeanFactory³¤¡£
¡¡¡¡·ApplicationContext»¹ÌṩÁ˹ú¼Ê»¯¡¢Ê¼þ´«²¥¡¢AOPµÈ¹¦ÄÜ¡£
¡¡¡¡·AnnotationConfigApplicationContextÊÇ»ùÓÚJavaÅäÖÃÀàµÄÈÝÆ÷¡£
¡¡¡¡·ËüÔÊÐíÎÒÃÇʹÓÃJavaÀàÀ´ÅäÖÃBean£¬¶ø²»ÊÇXMLÅäÖÃÎļþ¡£
¡¡¡¡·Í¨¹ýÔÚÀàÉÏʹÓÃ×¢½âÈç@Configuration¡¢@ComponentScan£¬ÎÒÃÇ¿ÉÒÔ¶¨ÒåBeanºÍËüÃÇÖ®¼äµÄÒÀÀµ¹ØÏµ¡£
¡¡¡¡·ClassPathXmlApplicationContextÊÇ»ùÓÚXMLÅäÖÃÎļþµÄÈÝÆ÷¡£
¡¡¡¡·Ëü´ÓÀà·¾¶ÏµÄXMLÎļþ¼ÓÔØBean¶¨Òå¡£
¡¡¡¡·FileSystemXmlApplicationContextÊÇ»ùÓÚXMLÅäÖÃÎļþµÄÈÝÆ÷£¬µ«Ëü´ÓÎļþϵͳ¼ÓÔØÅäÖÃÎļþ£¬¶ø²»ÊÇÀà·¾¶¡£
¡¡¡¡·Õâ¶ÔÓÚWebÓ¦ÓóÌÐòºÍ¶ÀÁ¢Ó¦ÓóÌÐòÀ´ËµºÜÓÐÓá£
¡¡¡¡·XmlWebApplicationContextÊÇÒ»¸öרÃÅΪWebÓ¦ÓóÌÐòÉè¼ÆµÄÈÝÆ÷¡£
¡¡¡¡·ËüÓëWebÓ¦ÓóÌÐòµÄÉÏÏÂÎÄÒ»Æð¹¤×÷£¬ÔÊÐíÎÒÃÇÔÚWebÓ¦ÓóÌÐòÖÐʹÓÃSpring¡£
¡¡¡¡·AnnotationConfigWebApplicationContextÊÇ»ùÓÚJavaÅäÖÃÀàµÄWebÓ¦ÓóÌÐòÈÝÆ÷¡£
¡¡¡¡·ËüÔÊÐíÎÒÃÇÔÚWebÓ¦ÓóÌÐòÖÐʹÓûùÓÚ×¢½âµÄÅäÖá£
¡¡¡¡·WebApplicationContextÊÇApplicationContextµÄ×Ó½Ó¿Ú£¬×¨ÃÅΪWebÓ¦ÓóÌÐòÉè¼Æ¡£
¡¡¡¡·ËüÌṩÁËÐí¶àÓëWebÏà¹ØµÄ¹¦ÄÜ£¬Èç¹ú¼Ê»¯¡¢Ö÷Ìâ½âÎö¡¢ÎļþÉÏ´«µÈ¡£
¡¡¡¡ÕâЩÊÇSpringÖеÄÖ÷ÒªIOCÈÝÆ÷£¬ÎÒÃÇ¿ÉÒÔ¸ù¾ÝÏîÄ¿µÄÐèÇóÑ¡ÔñÊʺϵÄÈÝÆ÷¡£Í¨³££¬ApplicationContextÊÇ×î³£ÓõÄÈÝÆ÷£¬ÒòΪËüÌṩÁ˸ü¶àµÄ¹¦ÄÜºÍÆóÒµ¼¶Ö§³Ö¡£µ«ÔÚijЩÇé¿öÏ£¬Ò²¿ÉÒÔʹÓÃÆäËûÈÝÆ÷À´Âú×ãÌØ¶¨µÄÐèÇó¡£
±±¾©Ð£Çø