Spring-IoC对象管理
2016-05-31 23:03
471 查看
1.spring
spring是J2EE应用程序框架,是轻量级的IoC和AOP的容器框架,主要是针对javaBean的生命周期进行管理的轻量级容器
2.主动查找和依赖注入
2.1主动查找:
new的方式由我们的应用程序负责服务(对象)定位查找。而且依赖都写在代码中,如果修改的话比较麻烦。
工厂:工厂配置好之后,还是我们要主动的实例化工厂,然后用工厂来拿要使用的类,还是主动查找。
2.2、IoC(控制反转):本来是由应用程序管理的对象之间的依赖关系,现在交给容器管理,这就是控制反转,及交给Ioc容器。Spring的IoC主要使用DI方式实现,不需要主动查找,对象的查找、定位和创建全部由容器管理。spring中有三种注入方式,一种是set注入,一种是接口注入,另一种是构造方法注入。
<span style="font-family:FangSong_GB2312;font-size:18px;">public class UserService{
private UserDao userdao; //通过注入的方式,直接使用UserDao,而不需要管理UserDao的创建。
public UserDao getUserdao() {
returnuserdao;
}
public void setUserdao(UserDao userdao) {
this.userdao= userdao;
}
publicvoid insert(User user){
userdao.insert(user);
}
</span>
3、IoC的好处:
大量减少了Factory和Singleton的数量,使代码层次更加清晰。
SpringIoC容器是轻量级的容器,没有侵入性,不需要依赖容器的API,也不需要实现一些特殊接口。
对于资源hibernate session 和JDBC Connection 我们不在负责开启和关闭。
面向接口编程,减少了代码中的耦合,将耦合推迟到了配置文件中,如果发生变化更容易控制。
spring是J2EE应用程序框架,是轻量级的IoC和AOP的容器框架,主要是针对javaBean的生命周期进行管理的轻量级容器
2.主动查找和依赖注入
2.1主动查找:
new的方式由我们的应用程序负责服务(对象)定位查找。而且依赖都写在代码中,如果修改的话比较麻烦。
工厂:工厂配置好之后,还是我们要主动的实例化工厂,然后用工厂来拿要使用的类,还是主动查找。
<span style="font-family:FangSong_GB2312;font-size:18px;">public class UserService{ public void insert(User user){ UserDao userdao = new UserDaoMySqlImpl(); userdao.insert(user); } } </span>
2.2、IoC(控制反转):本来是由应用程序管理的对象之间的依赖关系,现在交给容器管理,这就是控制反转,及交给Ioc容器。Spring的IoC主要使用DI方式实现,不需要主动查找,对象的查找、定位和创建全部由容器管理。spring中有三种注入方式,一种是set注入,一种是接口注入,另一种是构造方法注入。
<span style="font-family:FangSong_GB2312;font-size:18px;">public class UserService{
private UserDao userdao; //通过注入的方式,直接使用UserDao,而不需要管理UserDao的创建。
public UserDao getUserdao() {
returnuserdao;
}
public void setUserdao(UserDao userdao) {
this.userdao= userdao;
}
publicvoid insert(User user){
userdao.insert(user);
}
</span>
3、IoC的好处:
大量减少了Factory和Singleton的数量,使代码层次更加清晰。
SpringIoC容器是轻量级的容器,没有侵入性,不需要依赖容器的API,也不需要实现一些特殊接口。
对于资源hibernate session 和JDBC Connection 我们不在负责开启和关闭。
面向接口编程,减少了代码中的耦合,将耦合推迟到了配置文件中,如果发生变化更容易控制。
相关文章推荐
- 一个jar包里的网站
- 一个jar包里的网站之文件上传
- 一个jar包里的网站之返回对媒体类型
- Spring和ThreadLocal
- Spring Boot 开发微服务
- Spring整合Quartz(JobDetailBean方式)
- Spring整合Quartz(JobDetailBean方式)
- 模拟Spring的简单实现
- Spring整合WebSocket应用示例(上)
- spring+html5实现安全传输随机数字密码键盘
- Spring中属性注入详解
- springmvc 发送ajax出现中文乱码的解决方法汇总
- SpringMVC框架下JQuery传递并解析Json格式的数据是如何实现的
- struts2 spring整合fieldError问题
- spring的jdbctemplate的crud的基类dao
- 读取spring配置文件的方法(spring读取资源文件)
- Spring Bean基本管理实例详解
- java实现简单美女拼图游戏
- 浅析Java中的set集合类型及其接口的用法