您的位置:首页 > 编程语言 > Java开发

Spring.Net入门学习

2011-11-24 16:11 429 查看
一、建立类库项目SpringNetDemo.DAO,同时建立两个文件

1、IBLL.cs

namespace SpringNetDemo.DAO
{
public interface IPersonDao
{
void Save();
}
}

2、BLL.cs

namespace SpringNetDemo.DAO
{
public class PersonDao:IPersonDao
{
public void Save()
{
Console.WriteLine("save person....");
}
}
}

二、建立控制台应用程序,命名SpringNetDemo.Test,并引用[b]SpringNetDemo.DAO[/b]

通常我们操作对象的方法如下

class Program
{
static void Main(string[] args)
{

IPersonDao pd = new PersonDao();
pd.Save();

}
}

此时调用者必须要依赖于IPersonDao ,PersonDao,如果要隐藏PersonDao类的实现,我们可以使用工厂模式来实现,那么我们再建立一个

类库SpringNetDemo.DaoFactory并引用SpringNetDemo.DAO,并且建立工厂数据访问类DataAccess.cs

namespace SpringNetDemo.DaoFactory
{
public static class DataAccess
{
public static IPersonDao CreatePersonDao()
{
return new PersonDao();
}
}

}

此时我们要操作对象可以用如下方法,调用者只要知道IPersonDao ,工厂就可以了,而不需要知道PersonDao

class Program
{
static void Main(string[] args)
{

IPersonDao pd1 = DaoFactory.DataAccess.CreatePersonDao();
pd.Save();

}
}

到了这里我们可能会思考,如果我们有一个框架可以帮我们来管理PersonDao对象就好了,继续。。。

SpringNetDemo.Test

1、添加对Spring.Core.dll,Common.Logging.dll引用

2、新建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="config://spring/objects" />-->
<resource uri="objects.xml"></resource>
</context>
<!--<objects xmlns="http://www.springframework.net/">
<description>一个简单的控制反转例子</description>
<object id="PersonDao" type="SpringNetDemo.DAO.PersonDao,SpringNetDemo.DAO" />
</objects>-->

</spring>

</configuration>

3建立一个objects.xml

<?xml version="1.0" encoding="utf-8" ?>
<objects xmlns="http://www.springframework.net/">
<description>一个简单的控制反转例子</description>

<object id="PersonDao" type="SpringNetDemo.DAO.PersonDao,SpringNetDemo.DAO" />

</objects>

配置完成,下面通过程序调用

class Program
{
static void Main(string[] args)
{

IApplicationContext ctx = ContextRegistry.GetContext();
IPersonDao dao = ctx.GetObject("PersonDao") as IPersonDao;
if (dao != null)
{
dao.Save();
Console.WriteLine("我是IoC方法");
}

}

}

完成。。。。

spring.net+ibatis.net

源代码:IBatisNet+SpringNet
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: