Spring.net(一)----Spring.NET框架简介及模块说明
简介:
Spring.NET框架包括很多功能,Spring.NET 1.0包括完整的IoC容器和AOP类库。1.1版加入Web、ORM和数据模块。Spring.NET的下载包中并不包含与其它类库(如NHibernate,TIBCO EMS,Anthem,和IIOP.NET)集成的模块,如果需要您可以单独下载。
Spring Framework天生丽质,因为其先进的架构和对一系列前沿开发思想的集成,使它从一产生就深得开发者欢迎,它将设计模式运用到了炉火纯青的地方,它的幽雅和魅力征服了许多JAVA开发者,使这些开发者成为了它的信徒,得程序员心者得天下,Spring引领了J2EE开发的潮流,同时Spring和各种框架的强强联手也为它的信徒的尽早飞翔插上了翅膀,比如老大哥SSH(配置烦琐的struts和Hibernate、Spring的集成)、后起之秀EJSA(身材轻便使用灵活及零配置的EASYJWEB+JPA+Spring+Acegi,适合与注重高效率开发的个人和企业)等都借助Spring走向了成熟,为开发者带来了无尽方便。
那么做为.Net开发者我们能不能欣赏和品尝Spring这道大餐呢,答案是肯定的,Spring开发团队对应用与JAVA的Spring框架思想进行移植,贡献出了适合与.Net项目开发的Spring.NET框架。网上Spring.Net的中文资料很少,在BAIDU上目前搜索不到关于spring.net的中文资料,这里我们尽可能的使用中文来说明。
首先我们来认识一下Spring.NET,简而言之Spring.NET就是利用各种强大的设计模式做为工具来管理我们的项目体系结构。 Spring.NET使用优秀和久经考验的设计模式,使我们能够科学合理的管理和整合我们企业级开发中的各个层面及一些分散的组件,并良好的协调和处理它们之间的关系,增强项目的健壮性。
Spring.NET的IoC容器所解决的,正是如何在企业应用中将类、对象和服务组合成应用程序的问题。IoC容器通过很正统(按:formalized,言下之意是这些方式都是已经定型了的、经过了业界多年考验的)的方式将分散的组件组合成完整的应用程序。Spring.NET框架所采用的,都是被业界无数应用程序考验多年的、已经被定型为设计模式的最佳编程方式,实际上,这些模式已经成为我们架构和开发时的法典,而通过Spring.NET,我们可以直接将它们整合到自己的应用程序中。目前已有很多组织和机构用Spring框架开发出了强壮的、维护性好的应用程序,这确实是一件非常好的事情。
模块说明:
一.Spring.Core作为整个框架的基础,实现了依赖注入的功能。
Spring.NET的大部分模块都要依赖或扩展该模块。Spring.Core的基础是IObjectFactory接口,该接口用一个简单而
优雅的方式实现了工厂模式,使我们可以无需自行编写singleton类型和众多的服务定位器,并允许将对象配置及其依
赖关系与具体的程序逻辑解耦。该模块中的IApplicationContext接口是IObjectFactory的扩展,增加了诸多企业级
功能,包括使用资源文件进行文本本地化、事件传播和资源装载等等。
二.Spring.AOP为业务对象提供面向方面编程(AOP)的支持。
AOP完善了IoC容器的功能,为创建企业应用和使用声明式服务奠定了坚实的基础。
三.Spring.Web对ASP.NET进行了一系列功能扩展,包括对ASP.NET页面进行依赖注入、双向数据绑定、在ASP.NET 1.1中
使用Master page、以及增强的本地化功能支持等。
四.Spring.Services允许将任意的“普通”对象(意为没有继承任何指定基类型的对象)发布为企业服务(COM+)或远程
对象。
通过依赖注入和特性元数据覆盖等功能,该模块可使.NET的Web服务获得极大的灵活性。同时也支持Windows后台服务。
五.Spring.Data定义了一个抽象的数据访问层,可以跨越各种数据访问技术(从ADO.NET到各种ORM)进行数据访问。
该模块包含一个ADO.NET的抽象层,减少了使用传统ADO.NET进行编码和事务管理时的工作量。
六.Spring.ORM为时下流行的ORM类库提供了一个整合层,其中包含声明式事务管理等诸多功能。
Spring.NET框架包括很多功能,Spring.NET 1.0包括完整的IoC容器和AOP类库。1.1版加入Web、ORM和数据模块。Spring.NET的下载包中并不包含与其它类库(如NHibernate,TIBCO EMS,Anthem,和IIOP.NET)集成的模块,如果需要您可以单独下载。
Spring Framework天生丽质,因为其先进的架构和对一系列前沿开发思想的集成,使它从一产生就深得开发者欢迎,它将设计模式运用到了炉火纯青的地方,它的幽雅和魅力征服了许多JAVA开发者,使这些开发者成为了它的信徒,得程序员心者得天下,Spring引领了J2EE开发的潮流,同时Spring和各种框架的强强联手也为它的信徒的尽早飞翔插上了翅膀,比如老大哥SSH(配置烦琐的struts和Hibernate、Spring的集成)、后起之秀EJSA(身材轻便使用灵活及零配置的EASYJWEB+JPA+Spring+Acegi,适合与注重高效率开发的个人和企业)等都借助Spring走向了成熟,为开发者带来了无尽方便。
那么做为.Net开发者我们能不能欣赏和品尝Spring这道大餐呢,答案是肯定的,Spring开发团队对应用与JAVA的Spring框架思想进行移植,贡献出了适合与.Net项目开发的Spring.NET框架。网上Spring.Net的中文资料很少,在BAIDU上目前搜索不到关于spring.net的中文资料,这里我们尽可能的使用中文来说明。
首先我们来认识一下Spring.NET,简而言之Spring.NET就是利用各种强大的设计模式做为工具来管理我们的项目体系结构。 Spring.NET使用优秀和久经考验的设计模式,使我们能够科学合理的管理和整合我们企业级开发中的各个层面及一些分散的组件,并良好的协调和处理它们之间的关系,增强项目的健壮性。
Spring.NET的IoC容器所解决的,正是如何在企业应用中将类、对象和服务组合成应用程序的问题。IoC容器通过很正统(按:formalized,言下之意是这些方式都是已经定型了的、经过了业界多年考验的)的方式将分散的组件组合成完整的应用程序。Spring.NET框架所采用的,都是被业界无数应用程序考验多年的、已经被定型为设计模式的最佳编程方式,实际上,这些模式已经成为我们架构和开发时的法典,而通过Spring.NET,我们可以直接将它们整合到自己的应用程序中。目前已有很多组织和机构用Spring框架开发出了强壮的、维护性好的应用程序,这确实是一件非常好的事情。
模块说明:
一.Spring.Core作为整个框架的基础,实现了依赖注入的功能。
Spring.NET的大部分模块都要依赖或扩展该模块。Spring.Core的基础是IObjectFactory接口,该接口用一个简单而
优雅的方式实现了工厂模式,使我们可以无需自行编写singleton类型和众多的服务定位器,并允许将对象配置及其依
赖关系与具体的程序逻辑解耦。该模块中的IApplicationContext接口是IObjectFactory的扩展,增加了诸多企业级
功能,包括使用资源文件进行文本本地化、事件传播和资源装载等等。
二.Spring.AOP为业务对象提供面向方面编程(AOP)的支持。
AOP完善了IoC容器的功能,为创建企业应用和使用声明式服务奠定了坚实的基础。
三.Spring.Web对ASP.NET进行了一系列功能扩展,包括对ASP.NET页面进行依赖注入、双向数据绑定、在ASP.NET 1.1中
使用Master page、以及增强的本地化功能支持等。
四.Spring.Services允许将任意的“普通”对象(意为没有继承任何指定基类型的对象)发布为企业服务(COM+)或远程
对象。
通过依赖注入和特性元数据覆盖等功能,该模块可使.NET的Web服务获得极大的灵活性。同时也支持Windows后台服务。
五.Spring.Data定义了一个抽象的数据访问层,可以跨越各种数据访问技术(从ADO.NET到各种ORM)进行数据访问。
该模块包含一个ADO.NET的抽象层,减少了使用传统ADO.NET进行编码和事务管理时的工作量。
六.Spring.ORM为时下流行的ORM类库提供了一个整合层,其中包含声明式事务管理等诸多功能。