Spring_beginning
Spring最常用的特性
l 利用Spring来创建对象(JavaBean工厂)
l 利用Spring构建业务逻辑层
l 管理依赖关系
l 适应需求变更
l 利用Spring创建数据访问对象(DAO)
l 利用Spring进行事务处理
环境搭建
1、spring依赖库
* SPRING_HOME/dist/spring.jar
* SPRING_HOME/lib/jakarta-commons/commons-logging.jar
* SPRING_HOME/lib/log4j/log4j-1.2.14.jar
2、拷贝spring配置文件到src下
applicationContext.xml
3、拷贝log4j配置文件到src下
log4j.properties
4、在UserManagerImpl中提供构造函数或setter
方法
快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载
,spring将实例化好的UserDao实现注入给我们
5、让spring管理我们的对象创建和依赖,必须在spring配置中进行定义
6、编写客户端
//获取BeanFactory
BeanFactory factory =
new ClassPathXmlApplicationContext("applicationContext.xml");
//从容器中获取userManager对象
UserManager userManager = (UserManager)factory.getBean("userManager");
userManager.save("伟超", "1234");
spring Ioc容器的关键点:
* 必须将被管理的对象定义到spring配置文件中
* 必须定义构造函数或setter方法,让spring将对象注入过来
l 只需改动ApplicationContext.xml的配置,即可实现实际功能的切换
IOC/DI
l 控制反转(Inversion of Control,IoC)与依赖注入(Dependency Injection)
l 由容器来管理对象之间的依赖关系(而不是对象本身来管理),就叫“控制反转”或“依赖注入”
l 以上代码,已清楚阐述IOC/DI出现的原因,以及IOC的基本原理
l Spring框架的基本思想就是IOC/DI
l Spring就是一个IOC容器
l IOC与DI,说的是一回事,但DI这个名词更能
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
达这种设计模式的思想
依赖注入的类型
l 构造器注入
l 通过类的构造方法注入依赖关系
l 设值方法注入
l 通过类的setter方法注入依赖关系
l 第三种:接口注入(不常用)
l 定义一个注入接口,在需要注入的类中实现此接口,由于这种方法具有侵入性,所以不常用
2. Injection
2.1 spring的普通属性注入
参见:spring文档3.3章节
2.2 什么是属性编辑器,作用?
2.2.1 自定义属性编辑器
自定义属性编辑器:spring配置文件中的字符串转换成相应的对象进行注入
心得:从此处可以看出,spring里面输入的都是字符串,但是可以更根据POJO设置的类型做相应的转换
spring已经有内置的属性编辑器,我们可以根据需求自己定义属性编辑器
2.2.2 如何定义属性编辑器?
①继承PropertyEditorSupport类,覆写setAsText()方法,参见:UtilDatePropertyEditor.java
SimpleDateFormat sdf = new SimpleDateFormat(format);
setValue(d);
②将属性编辑器注册到spring中,参见:applicationContext-editor.xml