Spring-IoC对象管理

原创 2016年05月31日 23:03:07

1.spring

       springJ2EE应用程序框架,是轻量级的IoCAOP的容器框架,主要是针对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 我们不在负责开启和关闭。

  面向接口编程,减少了代码中的耦合,将耦合推迟到了配置文件中,如果发生变化更容易控制。


版权声明:本文不足之处在所难免,敬请各位批评指正,留下宝贵意见。

Spring 管理对象

– Start 当我们需要某个对象时,通常的做法是 new 一个对象,然后使用它。使用 Spring 后,套路完全变了,Spring 帮我们创建对象,然后缓存到它的容器中,当我们需要一个对象时,问 ...
  • shangboerds
  • shangboerds
  • 2017年05月20日 23:09
  • 1121

Spring笔记(一):Ioc 之 Bean的管理

2、Spring主要核心是: 1)控制反转(IOC):以前传统的java开发模式中,当需要一个对象时我们,我们会自己使用new或者getInstance等直接或者间接调用构造方法创建一个对象,而在Sp...
  • u012228718
  • u012228718
  • 2015年01月15日 22:07
  • 1301

在spring 中如果使用new创建一个对象时 这个对象将不在受spring管理器管理

文章如标题具体如下 比如现在有一个service 层 package com.zyc.service.impl; import javax.annotation.Resource; im...
  • zhaoyachao123
  • zhaoyachao123
  • 2017年01月06日 08:34
  • 1190

Spring学习(二)spring ioc注入的三种方式

一、spring ioc注入有哪三种方式: a setter 原理 : 在目标对象中,定义需要注入的依赖对象对应的属性和setter方法; “让ioc容器调用该setter方...
  • CCUTwangning
  • CCUTwangning
  • 2017年02月13日 11:18
  • 518

Spring管理的Bean的生命周期

bean的初始化时机前面讲解了Spring容器管理的bean的作用域。接着我们就要思考一个问题:bean到底是在什么时候才进行实例化的呢?我们以这个问题为引子来展开本文的说明。 bean对象无外乎是...
  • yerenyuan_pku
  • yerenyuan_pku
  • 2016年10月16日 23:00
  • 2267

Spring之为什么要使用IOC

简介      控制反转(Inversion of Control,英文缩写为IoC)是一个重要的面向对象编程的法则来削减计算机程序的耦合问题,也是轻量级的Spring框架的核心。 控制反转一般分为...
  • zhushuai1221
  • zhushuai1221
  • 2016年04月25日 23:11
  • 712

Spring IOC、对象依赖关系

引入Struts与Hibernate可以做什么事:Struts,Mvc中控制层解决方案 可以进行请求数据自动封装、类型转换、文件上传、效验…Hibernate, 持久层的解决方案; ...
  • guanhang89
  • guanhang89
  • 2016年09月21日 01:36
  • 1235

【Spring源码--IOC容器的实现】(五)Bean对象的创建

本文主要讲述通过bean的不同配置根据不同的策略生成对象的源码,并附带了lookup-method和replace-method的简单解释。...
  • u013185616
  • u013185616
  • 2016年08月22日 20:42
  • 2204

【Spring】非SPRING管理的对象要引用SPRING容器管理的对象?对象之间如何引用?

最近项目中就有如题的一个需求,有些对象,不希望将其交给spring容器去管理,想通过自己new的方式去实例化,以便自己更好的去维护这个对象。 这里非SPRING管理的对象,即自己实例化的对象,用A来...
  • chiweitree
  • chiweitree
  • 2016年05月31日 15:52
  • 1722

spring IOC容器创建对象的三种方式

SpringIOC容器,是spring核心内容。 作用:创建对象 & 处理对象的依赖关系,把对象的创建交给IOC容器   IOC容器创建对象(默认单例): 创建对象, 有三种方式: 1) 调...
  • xyffly
  • xyffly
  • 2017年02月26日 12:13
  • 1334
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Spring-IoC对象管理
举报原因:
原因补充:

(最多只允许输入30个字)