springÖжÁÈ¡xmlÅäÖÃÎļþ¡¢»ñÈ¡beanµÄ¼¸ÖÖ·½Ê½
»ñÈ¡Spring¿ò¼Ü¹ÜÀíµÄÀàʵÀýµÄ·½·¨ÓжàÖÖ,ÈçÏ£º
·½·¨Ò»£ºÔÚ³õʼ»¯Ê±±£´æApplicationContext¶ÔÏó
´úÂ룺
ApplicationContext ac = new FileSystemXmlApplicationContext("applicationContext.xml");
ac.getBean("beanId");
˵Ã÷£º
ÕâÖÖ·½Ê½ÊÊÓÃÓÚ²ÉÓÃSpring¿ò¼ÜµÄ¶ÀÁ¢Ó¦ÓóÌÐò£¬ÐèÒª³ÌÐòͨ¹ýÅäÖÃÎļþÊÖ¹¤³õʼ»¯SpringµÄÇé¿ö¡£
·½·¨¶þ£ºÍ¨¹ýSpringÌṩµÄ¹¤¾ßÀà»ñÈ¡ApplicationContext¶ÔÏó
´úÂ룺
import org.springframework.web.context.support.WebApplicationContextUtils;
ApplicationContext ac1 = WebApplicationContextUtils.getRequiredWebApplicationContext(ServletContext sc)
ApplicationContext ac2 = WebApplicationContextUtils.getWebApplicationContext(ServletContext sc)
ac1.getBean("beanId");
ac2.getBean("beanId");
˵Ã÷£º
ÕâÖÖ·½Ê½ÊʺÏÓÚ²ÉÓÃSpring¿ò¼ÜµÄB/Sϵͳ£¬Í¨¹ýServletContext¶ÔÏó»ñÈ¡ApplicationContext¶ÔÏó£¬È»ºóÔÚͨ¹ýËü»ñÈ¡ÐèÒªµÄÀàʵÀý¡£
ÉÏÃæÁ½¸ö¹¤¾ß·½Ê½µÄÇø±ðÊÇ£¬Ç°ÕßÔÚ»ñȡʧ°ÜʱÅ׳öÒì³££¬ºóÕß·µ»Ønull¡£
·½·¨Èý£º¼Ì³Ð×Ô³éÏóÀàApplicationObjectSupport
˵Ã÷£º
³éÏóÀàApplicationObjectSupportÌṩgetApplicationContext()·½·¨£¬¿ÉÒÔ·½±ãµÄ»ñÈ¡µ½ApplicationContext¡£Spring³õʼ»¯Ê±£¬»áͨ¹ý¸Ã³éÏóÀàµÄsetApplicationContext(ApplicationContext context)·½·¨½«ApplicationContext ¶ÔÏó×¢Èë¡£
·½·¨ËÄ£º¼Ì³Ð×Ô³éÏóÀàWebApplicationObjectSupport
˵Ã÷£º
ÀàËÆÉÏÃæ·½·¨£¬µ÷ÓÃgetWebApplicationContext()»ñÈ¡WebApplicationContext
·½·¨Î壺ʵÏÖ½Ó¿ÚApplicationContextAware
˵Ã÷£º
ʵÏָýӿڵÄsetApplicationContext(ApplicationContext context)·½·¨£¬²¢±£´æApplicationContext ¶ÔÏó¡£Spring³õʼ»¯Ê±£¬»áͨ¹ý¸Ã·½·¨½«ApplicationContext ¶ÔÏó×¢Èë¡£
ÒÔÉÏ·½·¨Êʺϲ»Í¬µÄÇé¿ö£¬Çë¸ù¾Ý¾ßÌåÇé¿öÑ¡ÓÃÏàÓ¦µÄ·½·¨¡£
ÕâÀïÖµµÃÌáÒ»µãµÄÊÇ£¬ÏµÍ³ÖÐÓõ½ÉÏÊö·½·¨µÄÀàʵ¼ÊÉϾÍÓÚSpring¿ò¼Ü½ôÃÜñîºÏÔÚÒ»ÆðÁË£¬ÒòΪÕâЩÀàÊÇÖªµÀËüÃÇÊÇÔËÐÐÔÚSpring¿ò¼ÜÉϵģ¬Òò´Ë£¬ÏµÍ³ÖУ¬Ó¦¸Ã¾¡Á¿µÄ¼õÉÙÕâÀàÓ¦Óã¬Ê¹ÏµÍ³¾¡¿ÉÄܵĶÀÁ¢ÓÚµ±Ç°ÔËÐл·¾³£¬¾¡Á¿Í¨¹ýDIµÄ·½Ê½»ñÈ¡ÐèÒªµÄ·þÎñÌṩÕß¡£
±¾ÈËÈÏΪ£¬·½·¨Îå±È½Ï¿ÉÐУ¬¿ÉÒÔÉè¼ÆÒ»¸ö¹¤¾ßÀ࣬רÃÅÀ´»ñÈ¡SpringÖеÄÀà¡£¼õÉÙ¶ÔÒµÎñ´úÂëµÄÇÖÈëÐÔ¡£
¶ÁÈ¡xmlÎļþ
/**
* ÀûÓÃXmlBeanFactory(Resource resource)
* ÕâÀïResource±
Ïà¹ØÎĵµ£º
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStreamWriter;
import java.io.Writer;
import java.util.Iterator;
import java.util.List;
import org.dom4j.Documen ......
XML½âÎöÆ÷µÄ×÷ÓãºÎªÓ¦ÓóÌÐò´ÓXMLÎļþÖнâÎö³öËùÐèÒªµÄÊý¾Ý¡£
ÏÂÃæÍ¨¹ýÒ»¸öÀý×Ó£¬À´Á˽⣬ÈçºÎÓÃXML½âÎöÆ÷£¬À´½âÎöÒ»¸öXMLÎļþÖеÄÊý¾Ý¡£
1¡¢Types.xml£¨ÏÔʾ¼ªËûµÄÀà±ð£©
<?xml version="1.0" encoding="UTF-8"?>
<types>
<name>µç¼ªËû
<music>ÍæÒ¡¹ö</music>
</name>
......
·¶ÀýÈçÏ£º
var xml:XML=
<body>
text1
<bar>barText1</bar>
& ......
2£©ÈçºÎ´´½¨Ò»¸öxmlÎĵµ
ÓÉÓÚxmlʵÖÊÒ²Ö»ÊÇÒ»¸öÎı¾Îļþ£¬ËùÒÔ×î¼òµ¥Äã¿ÉÒÔÖ±½ÓʹÓÃSystem.IOϵÄÀàÉú³ÉÒ»¸öÎļþ£¬²¢´æ´¢³ÉxmlÎļþ£¬µ±È»£¬ÄãÐèÒªÊÖ¶¯±£Ö¤¸ÃÎļþÐÎʽÁ¼ºÃ£¬±ÈÈç±ØÐëÓиùÔªËØ¡¢±ØÐëÓйرձêÇ©¡¢±ØÐëÕýȷǶÌ׵ȵȡ£
Èç¹ûÄãÀÁµÃ×Ô¼ºÈ¥ÏëÎļþµÄÐÎʽ£¬¿ÉÒÔʹÓÃSystem.XmlϵÄÀà¡£
Code
Xml ......
public class yzzSerialize
{
private yzzSerialize()
{ }
private static yzzCache cache = new yzzCache();
public static T GetfromXml<T>(string xmlpath, T t)
{
using (FileStream fs = new FileStream(xmlpath, FileMode.Open, FileAcces ......