Java笔记 第27节 Spring.doc

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Spring概述 Spring是一个DI和AOP容器的开源框架,为简化企业级应用开发而生。使用Spring可以使得意的JavaBean实现以前只有EJB才能实现的功能。 Spring模块:DAO, ORM, JEE, AOP, WEB,这些模块都被装入Spring容器,由Spring统一管理。 二.Spring中的Bean配置 1.IOC和DI IOC是一种思想,其思想是反转资源获取的方向。传统的资源查找方式要求组件向容器发起请求查找资源,作为回应,容器适时的返回资源。而应用了IOC之后,则是容器该去地将资源推送给它所管理的组件,组件所要做的仅是选择一种合适的方式来接收资源。这种行为也叫查找的被动形式。 DI是IOC思想的一种实现,是一种具体的设计模式。在DI模式里,容器以一些预先定义好的方式(如setter方法)将匹配的资源注入到每个组件里。DI和IOC经常混用。 2.在Spring的IOC容器里配置Bean setter注入:最流行的DI类型。需要提供setter方法,注入根据Bean节点的属性值。使用property元素,其中name属性映射属性名,value为属性值。 构造器注入:注入根据配置文件中参数的位置顺序。使用constructor-arg元素 Spring容器 在Spring ICO容器读取Bean配置创建Bean实例之前,必须对它进行实例化。只有在容器实例化后,才可以从IOC容器里获取Bean实例并使用。实现方式有两种: BeanFactory:IOC容器的基本实现。 ApplicationContext:提供了更多的高级特性。是BeanFactory的子接口。 实例化接口ApplicationContext:它的实现类有: ClassicPathXmlApplicationContext:从classpath下加载配置文件,最常用 FileSystemXmlApplicationContext:从文件系统中加载配置文件 XmlWebApplicationContext:只能用于web应用中 从IOC容器中获取Bean:调用ApplicationContext的getBean()方法 4.Bean配置 指定Bean的引用:为使应用程序的Bean能够相互访问,引用的方法有: 在Bean配置文件中,通过ref元素为Bean的属性或构造器参数指定对Bean的引用。 也可以在属性或构造器里再次声明Bean,这样的Bean称为内部Bean。内部Bean声明直接包含在property或constructor-arg元素里,不需要设置任何id或name属性。同时内部Bean不能使用在任何其他地方。也不能被引用。 继承Bean配置:Spring允许将通用的Bean配置抽象出来,组成一个父Bean。继承这个Bean的Bean称为子Bean。通过bean的parent属性来指定父Bean。 子Bean从父Bean继承的属性包括Bean的属性和在bean元素里的属性。 子Bean可以覆盖从父Bean继承过来的配置。 可以将父Bean作为配置模板,设置bean的abstract属性为true,这样Spring将不会实例化这个Bean 并不是bean元素里的所有属性都会被继承。比如:autowire, dependency-check, abstract等。 当子Bean想要覆盖父Bean中的class属性时,父Bean中的abstract属性必须为true。 检查属性:当Bean较多进用来检查属性是否设置成功。 通过依赖检查来检查属性:依赖检查只适用于setter注入。同时检查所有的属性。在bean的dependentcy-check属性里指定依赖检查模式。 通过@Required注解检查属性:可以针对个别属性进行检查。需要先注册后置处理器。 5.后置处理器 注册RequiredAnnotationBeanPostProcessor后置处理器 加入jar包:common-annotations.jar(如使用JavaSE6则不用导入) 导入context命名空间,同时在配置文件加入如下配置:context:annotation-config/ 三.Sping的事务操作 Spring支持的事务传播行为 当一个事务的操作牵扯到其它事务操作时。需要将这两个事务放入一个事务中,同时这两个事务也要有自己的事务。这样才能保证当某个事务不能通过时,整个事务同样可以提交。添加这样的事务可以有两种方式: 使用注解的方式,在@Transactional注解的propagation属性中定义传播行为,默认是REQUIRED,需要设置为REQUIRES_NEW。 在配置文件中配置事务的属性,在tx:method元素中设定传播事务属性 设置事务的隔

文档评论(0)

kehan123 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档