Spring
文章平均质量分 64
xiaoping8411
一个走在路上的人,前面有太多太多的路。一个为了学习与生活,要不停奔走的人。
展开
-
Spring 与 ibatis 整合
我们要知道Spring和ibatis都是无侵入性和低耦合性的框架,所以,我们是可以单独的进行开发,也就是可以不需要进行整合也可以开发。如果我们要在ibatis中使用Spring的IOC容器的注入和AOP来管理事务的话,将两个框架进行整合起来开发是我们一个很好的选择,但决不是唯一选择,我曾经就没有整合两个框架就做过项目。下面我将简单介绍一个如何整合?希望大家能明白。 1.原创 2009-11-18 13:21:00 · 1211 阅读 · 0 评论 -
Spring整理13 -- 面对切面(AOP)3 -- 使用CGLIB实现AOP
在上面的两种情况实现AOP中的目标对象UserManagerImpl都实现了接口,如果没有实现接口,该如何做呢?使用CGLIB。下面简单介绍spring对AOP的支持的几种情况:1、如果目标对象实现了接口,默认情况下会采用JDK的动态代理实现AOP2、如果目标对象实现了接口,可以强制使用CGLIB实现AOP3、如果目标对象没有实现了接口,必须采用CGLIB库,spring会自动在J原创 2010-01-06 12:45:00 · 1131 阅读 · 1 评论 -
Spring整理9 -- 自动装配(autowire)
根据名称自动装配根据属性名自动装配。此选项将检查容器并根据名字查找与属性完全一致的bean,并将其与属性自动装配。例如,在Bean1定义Bean2类型bean2属性(同时提供setBean2 (..)方法),Spring就会在配置文件中查找id为bean2的bean定义,并用它来装配给bean2属性。步骤:1、 必须在当前bean定义的配置文件(applicationContex原创 2010-01-06 12:21:00 · 881 阅读 · 0 评论 -
Spring整理11 -- 面对切面(AOP)1 -- 注解配置的方式实现AOP
AOP是使用动态代理而现实的,在上面动态代理中,我们可以想一下几个概念,我们写一个验证方法,在现实类中我们在拿几个方法中应用这个方法。那在Spring AOP中是如何表述这些概念?下面先来看AOP中几个比较重要的概念:² 切面(Aspect)切面,对象操作过程中的截面。这可能是AOP中最关键的一个术语。例如,我们上面介绍的用户权限验证,不同身份的用户可以做什么,不可以做什原创 2010-01-06 12:33:00 · 2784 阅读 · 0 评论 -
Spring整理10 -- 动态代理
问题:我们有一个实现类,分别有添加、删除、更新、查询等方法,如果我们现在要在执行方法加一个验证权限的方法,我们该如何做呢?有人会这还不简单,新建一个方法,在每个方法前调用一个就行。这种是可以完成功能,但它不够灵活,也破坏了我们的原有的代码。那该如何做才能更灵活呢?我们现在用jdk提供的动态代理模式来实现。首先,我们新建一个接口UserManagerpublic interf原创 2010-01-06 12:30:00 · 702 阅读 · 0 评论 -
Spring整理8 -- 初始化函数和消亡函数的使用
配置文件: "http://www.springframework.org/dtd/spring-beans.dtd"> 配置init-method属性表示初始化方法 destroy-method属性表示消亡方法 --> 属性方法注入 -->原创 2010-01-06 12:16:00 · 1374 阅读 · 0 评论 -
Spring整理6 -- 构造方法注入
配置文件 构造函数方法注入--> sunDriver原创 2010-01-05 16:46:00 · 699 阅读 · 0 评论 -
Spring整理4 -- 公共属性的注入
如何将公共的注入定义描述出来?* 通过标签定义公共的属性,指定abstract=true* 具有相同属性的类在标签中指定其parent属性例如:一个对象有三个属性分别为:id、name、password,另一个对象有四个属性为id、name、loginpass例子代码:Bean1.javapublic class Bean1 { private原创 2010-01-04 11:30:00 · 734 阅读 · 0 评论 -
Spring整理1 -- 实现模块的切换
对象的生成由Spring通过读取配置文件(applicationContext.xml)动态设置,主调类仅仅面对接口编程,无需知道具体的实现类。这样我们就可以根据配置文件进行实现类的切换。从而降低耦合性。对象的生成,由框架通过反射机制完成,控制权从前端主程序转化到了框架, 这种思想叫做控制反转(IOC),Inverse Of Control,可以很好的实现模块切换。例如:实现USB原创 2010-01-04 11:17:00 · 713 阅读 · 0 评论 -
Spring整理2 -- 普通属性注入
可以根据配置文件的信息动态的对象行为,动态的注入对象的属性值。下面我们将基本数据类型、String类型、数组类型以及集合类型进行动态的注入。例子代码如下:对象Bean1:public class Bean1 { private String strValue; private int intValue; private List原创 2010-01-04 11:20:00 · 1183 阅读 · 0 评论 -
Spring整理3 -- 自定义属性编辑器
在我们注入属性时,遇到是日期类型,如果按普通属性去注入,则会报错,那我们该怎么解决?解决办法:自定义属性编辑器。什么是属性编辑器,作用?自定义属性编辑器,spring配置文件中的字符串转换成相应的对象进行注入spring已经有内置的属性编辑器,我们可以根据需求自己定义属性编辑器。步骤:1、 定义一个属性编辑器必须继承java.beans.PropertyEditorSupport原创 2010-01-04 11:24:00 · 1194 阅读 · 0 评论 -
Spring整理5 -- 模块的组装
如何实现三个模块良好的切换? 配置文件 将dao装配到DaoCaller内dao属性 --> 程序package dao; p原创 2010-01-05 16:37:00 · 633 阅读 · 0 评论