(一)物理路徑(能夠複製)java
IResource input = new FileSystemResource(@"self.xml");web
IObjectFactory fac = new XmlObjectFactory(input);spring
(二)程序集方法app
url語法:ide
file://文件名(複製)
assembly://程序集名/命名空名/文件名(嵌入)url
要將文件設置爲「嵌入的資源」 否則會報以下錯誤spa
Error creating context 'spring.root': InputStream is null from Resource = [assembly [Spring_2, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null], resource [Spring_2.Objects.xml]].net
IApplicationContext context = new XmlApplicationContext("file://self.xml");orm
IObjectFactory fac = (IObjectFactory)context;xml
還能夠:
IApplicationContext context = new XmlApplicationContext("assembly://SpringSample/SpringSample/self.xml");
IObjectFactory fac = (IObjectFactory)context;
(三)配置文件
app.config 或web.config文件內容或無,xml文件嵌入
app.config文件
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<sectionGroup name="spring">
<section name="context" type="Spring.Context.Support.ContextHandler, Spring.Core" />
<section name="objects" type="Spring.Context.Support.DefaultSectionHandler, Spring.Core" />
</sectionGroup>
</configSections>
<spring>
<context>
<resource uri="assembly://SpringSample/SpringSample/self.xml"/>
<resource uri="config://spring/objects" />
</context>
<objects xmlns="http://www.springframework.NET">
</objects>
</spring>
</configuration>
Self.xml文件
<?xml version="1.0" encoding="utf-8" ?>
<objects xmlns="http://www.springframework.net">
<object id="Customer" name="Customer" type="SpringSample.Customer"></object>
</objects>
IApplicationContext context = ContextRegistry.GetContext();
(context.GetObject("Customer") as Customer).ShowMessage();