管理

随笔分类 -  【45】Spring.net(转载)

摘要:当NVelocity应用于Web开发时,界面设计人员可以和.net程序开发人员同步开发一个遵循MVC架构的web站点,也就是说,页面设计人员可以只关注页面的显示效果,而由.NET程序开发人员关注业务逻辑编码。NVelocity将.NET代码从web页面中分离出来,这样为web站点的长期维护提供了便利 阅读全文

posted @ 2018-11-05 17:40 lzhdim 阅读(177) 评论(0) 推荐(0) 编辑

摘要:你曾经需要应用执行一个任务吗?这个任务每天或每周星期二晚上11:30,或许仅仅每个月的最后一天执行。一个自动执行而无须干预的任务在执行过程中如果发生一个严重错误,应用能够知到其执行失败并尝试重新执行吗?你和你的团队是用.net编程吗?如果这些问题中任何一个你回答是,那么你应该使用Quartz.NET 阅读全文

posted @ 2018-11-05 17:39 lzhdim 阅读(270) 评论(0) 推荐(0) 编辑

摘要:虽然目前.net对WebService支持的非常好,Spring.NET认为还是有几个方面可以改进: 第一、.NET在.asmx文件中保存WebService请求和服务对象的关联关系,这些.asmx文件不管有用没用都得放在那儿。 第二、Spring.NET希望能通过IoC容器对WebService进 阅读全文

posted @ 2018-11-05 17:36 lzhdim 阅读(234) 评论(0) 推荐(0) 编辑

摘要:在Spring.Services命名空间的支持下,可以用IoC容器中的服务导出对象将任一个普通对象发布为Web服务、企业服务组件或远程对象。这里说的“普通对象”是指不继承或应用基础框架中任何特殊的基类(如MarshalByRefObject)或特性(如WebMethod)的对象。目前Spring.n 阅读全文

posted @ 2018-11-05 17:35 lzhdim 阅读(235) 评论(0) 推荐(0) 编辑

摘要:今天带给大家的就是期待以久的ASP.net MVC与Spring.NET和NHibernate的组合,视图打造.NET版的SSH(Spring-Struts-Hibernate)。是不是听到名字都很兴奋?我认为目前的ASP.NET MVC比Struts在某些功能上要好用的多,而且代码量要少,这就是我 阅读全文

posted @ 2018-11-05 17:34 lzhdim 阅读(222) 评论(0) 推荐(0) 编辑

摘要:Spring.net对NHibernate提供了很好的支持与封装。Spring.Data.NHibernate.Generic.Support和Spring.Data.NHibernate.Support下的HibernateDaoSupport是Spring.NET提供的数据库访问对象(DAO)的 阅读全文

posted @ 2018-11-05 17:33 lzhdim 阅读(455) 评论(0) 推荐(0) 编辑

摘要:上篇我们学习了Spring.net的事务机制。回顾一下,实现事务需要在方法上标记[Transaction]。在很多情况下,事务往往与业务分离。Spring.NET提供了事务代理帮我们管理这些事务,我们可以通过TransactionProxyFactoryObject使用声明式事务。在很多情况下Tra 阅读全文

posted @ 2018-11-05 17:32 lzhdim 阅读(289) 评论(0) 推荐(0) 编辑

摘要:目前有很多种数据访问技术。在.net FCL中,有三类API可以执行事务管理,分别是ADO.NET、企业服务和System.Transactions。其它的数据访问技术,如对象关系映射(object relational mappers)和结果集映射(result-set mapping)等等的应用 阅读全文

posted @ 2018-11-05 17:31 lzhdim 阅读(262) 评论(0) 推荐(0) 编辑

摘要:上篇我学习了Spring.net的四种通知类型,AOP的实现方案比较复杂,是通过代码实现的。而Spring.NET框架给我们提供了配置的方式来实现AOP的功能。到目前为止,我们已经讨论过使用ProxyFactoryObject或其它类似的工厂对象显式创建AOP代理的方法。如果应用程序需要创建很多AO 阅读全文

posted @ 2018-11-05 17:29 lzhdim 阅读(262) 评论(0) 推荐(0) 编辑

摘要:上篇我们学习了AOP的基本概念,我们回顾一下上篇提到的Advice(通知):所谓通知是指拦截到joinpoint(连接点)之后所要做的事情就是通知.通知分为前置通知,后置通知,异常通知,环绕通知。 Spring.net的通知既可由某个类的所有对象共享,也可由该类型的单个实例独占。共享的通知称为基于类 阅读全文

posted @ 2018-11-05 17:28 lzhdim 阅读(257) 评论(0) 推荐(0) 编辑

摘要:上篇我们简单的了解了AOP的应用场景,知道AOP编程的重要性。这篇我们先看一段代码,来开始今天的学习。 回顾与上篇类似的代码:SecurityService类的IsPass判断用户名为“admin”则有权限保存数据。OrderService为保存数据的类,实现IOrderService接口。 pub 阅读全文

posted @ 2018-11-05 17:27 lzhdim 阅读(200) 评论(0) 推荐(0) 编辑

摘要:AOP即面向切面编程(ASPect Oriented Programming的缩写),是OOP(面向对象编程)的一种延续形式。是通过预编译方式和运行期动态代理实现在不修改源代码的情况下给程序动态统一添加功能的一种技术,它从一个不同于OOP的角度来看待程序的结构:OOP将应用程序分解为一系列表现为继承 阅读全文

posted @ 2018-11-05 17:26 lzhdim 阅读(242) 评论(0) 推荐(0) 编辑

摘要:Spring.net通过几个专门的接口来控制容器中对象的行为。说到对象的行为无非就要提到对象的生命周期控制。类似在WinForm开发,Form生命周期中,Load方法为Form的载入方法和Dispose方法为Form的销毁方法。Spring.NET都能完美的实现这些需求。 一、生命周期接口 在使用S 阅读全文

posted @ 2018-11-05 17:25 lzhdim 阅读(192) 评论(0) 推荐(0) 编辑

摘要:多数用户都会将容器中的大部分对象布署为singleton模式。当一个singleton对象需要和另一个singleton对象协作,或者一个非singleton对象需要和另一个非singleson对象协作时,Spring.net都能很好的处理它们的依赖关系。但是,如果对象的生存周期不同,就可能会产生问 阅读全文

posted @ 2018-11-05 17:19 lzhdim 阅读(256) 评论(0) 推荐(0) 编辑

摘要:我们在第三篇中学习里一个简易的IoC框架。今天我们接着上次的程序,实现带参数构造函数对象的实例和属性的注入。 我们知道可以通过反射获取类的构造函数及参数(GetConstructors方法);可以获取属性和属性的类型(GetProperties方法)。通过Activator的CreateInstan 阅读全文

posted @ 2018-11-05 17:18 lzhdim 阅读(246) 评论(0) 推荐(0) 编辑

摘要:Spring.net还支持集合类型的注入。而且使用起来也比较方便。 一、ILIst类型 使用<list>元素作为ILIst的标签,value为集合中元素的值。也可以注入对象,甚至关联其它对象,使用 <ref/>元素表示关联的对象,object 属性为所关联对象的id或name。集合可以为空,用<nu 阅读全文

posted @ 2018-11-05 17:17 lzhdim 阅读(304) 评论(0) 推荐(0) 编辑

摘要:一、属性注入 上篇我们简单提到依赖注入的用途。回顾一下所讲内容,发现在object节点下使用了<property name="Tool" ref="computer"/>。而property 标签正是用来属性注入的。而ref是用来标识是关联到哪个object。而name属性是指属性名。如下: <ob 阅读全文

posted @ 2018-11-05 17:16 lzhdim 阅读(207) 评论(0) 推荐(0) 编辑

摘要:谈到高级语言编程,我们就会联想到设计模式;谈到设计模式,我们就会说道怎么样解耦合。而Spring.net的IoC容器其中的一种用途就是解耦合,其最经典的应用就是:依赖注入(Dependeny Injection)简称DI,目前DI是最优秀的解耦方式之一。下面我就来谈谈依赖注入的应用场景。 我模拟了三 阅读全文

posted @ 2018-11-05 17:15 lzhdim 阅读(197) 评论(0) 推荐(0) 编辑

摘要:容器中对象的部署分为两种方式:singleton和非singleton(Java里叫prototype)。这里的singleton指的是“单例模式”,就是说当一个对象被定义为singleton时,容器中就只会有一个共享的实例,任何时候通过id或别名请求该对象都会返回这个共享实例的引用(也就是说这个对 阅读全文

posted @ 2018-11-05 17:14 lzhdim 阅读(216) 评论(0) 推荐(0) 编辑

摘要:学过了前面的课程,我们来一起学习Spring.net的IoC容器对象的创建。 创建对象一般有3种方式:1.构造器创建,2.静态工厂创建,3.实例工厂创建 多数情况下,容器会根据对象定义中的type属性值去直接调用相应类型的某个构造器。另外,容器也可以调用工厂方法来创建对象,这时type属性的值就应该 阅读全文

posted @ 2018-11-05 17:07 lzhdim 阅读(268) 评论(0) 推荐(0) 编辑

Copyright © 2000-2022 Lzhdim Technology Software All Rights Reserved