记录我的Spring学习过程,大神勿看
2015-07-13 14:57
288 查看
我的spring入门学习
1. Spring 基础知识: A. 使用BeanFactory来管理Bean。B.使用ApplicationContext的3个接口来创建ApplicationContext容器。
2. 依赖注入: 依赖注入有三个类型,Spring支持后两种。 A. 借口注入(Spring不支持) B.setter注入 C.构造器注入。
B.setter注入: 使用在配置文件中的<Property>元素来为JavaBean的setter()传递参数。
例如: <bean name="user" class="com.user">
<proprety name="name">
<value>小强</value>
</proprety>
C.构造器注入: 就是通<constructor-arg>来实现构造方法传参。注意:在使用这个办法的时候应该注意赋值的顺序和参数类型。可以通过index和type属性来解决这个问题。
例如: <bean name="user" class="com.user">
<constructor-arg>
<value>小强</value>
</construct-arg>
<constructor-arg>
<value>学生</value>
</construct-arg>
注意: 在Spring中可以通过<ref>元素来引用其他javaBean实例对象。
3.在完成spring的自动装载时,使用sutowire来实现,其中语法结构为: <bean autowire="byName" id=" " class=" ">
注意其中autoWire的类型不同,其自动装载的方式也不同。
类型 说明
no 不使用自动装配,必须通过ref元素指定依赖,默认设置。 byName 根据属性名自动装配。此选项将检查容器并根据名字查找与 属性完全一致的bean,并将其与属性自动装配。 byType 如果容器中存在一个与指定属性类型相同的bean,那么将与 该属性自动装配;如果存在多个该类型bean,那么抛出异 常,并指出不能使用byType方式进行自动装配;如果没有找 到相匹配的bean,则什么事都不发生,也可以通过设置 dependency-check="objects"让Spring抛出异常。 constructor 与byType方式类似,不同之处在于它应用于构造器参数。如 果容器中没有找到与构造器参数类型一致的bean,那么抛出 异常。 autodetect 通过bean类的自省机制(introspection)来决定是使用 constructor还是byType方式进行自动装配。如果发现默认的 构造器,那么将使用byType方式。
4. JavaBean的作用域:
singleton:当一个bean的作用域为singleton, 那么Spring IoC容器中只会存在一个共享的bean实例,并且所有对bean的请求,只要id与该bean定义相匹配,则只会返回bean的同一实例。
注意:Singleton作用域是Spring中的缺省作用域。要在XML中将bean定义成singleton,可以这样配置:
<bean id="empServiceImpl" class="cn.csdn.service.EmpServiceImpl" scope="singleton">
prototype:一个bean定义对应多个对象实例。Prototype作用域的bean会导致在每次对该bean请求(将其注入到另一个bean中,或者以程序的方式调用容器的getBean()方法)时都会创建一个新的bean实例。根据经验,对有状态的bean应该使用prototype作用域,而对无状态的bean则应该使用singleton作用域。
相关文章推荐
- 一个jar包里的网站
- 一个jar包里的网站之文件上传
- 一个jar包里的网站之返回对媒体类型
- spring+html5实现安全传输随机数字密码键盘
- Spring中属性注入详解
- struts2 spring整合fieldError问题
- spring的jdbctemplate的crud的基类dao
- 读取spring配置文件的方法(spring读取资源文件)
- java实现简单美女拼图游戏
- java基本教程之线程休眠 java多线程教程
- JSP开发中在spring mvc项目中实现登录账号单浏览器登录
- 基于Spring框架的Shiro配置方法
- Spring MVC中上传文件实例
- 实例讲解Java的Spring框架中的AOP实现
- 解析Java中如何获取Spring中配置的bean
- Spring的注解配置与XML配置之间的比较
- java Spring整合Freemarker的详细步骤
- Java 二维码,QR码,J4L-QRCode 的资料整理
- java当中的定时器的4种使用方式
- java中 spring 定时任务 实现代码