ITPub博客

首页 > IT职业 > IT生活 > spring基础(1:基本概念)

spring基础(1:基本概念)

IT生活 作者:freefancy 时间:2021-09-09 09:47:37 0 删除 编辑

本系列笔记来自对《Spring实战》第三版的整理,Spring版本为3.0


  spring是为了解决企业级应用开发的复杂性而创建的,spring最根本的使命是:简化Java开发。为降低开发复杂性有以下四种关键策略。

  • 基于POJO的轻量级和最小侵入性编程

  • 通过依赖注入和面向接口实现松耦合

  • 基于切面和惯例进行声明式编程

  • 通过切面和模板减少样板式代码

1.依赖注入

  假设类A依赖类B,通常做法是在类A中声明类B,然后使用,这样一方面具有极高的耦合性,将类A与类B绑定在一起;另一方面也让单元测试变得很困难,无法在A外部获得B的执行情况。

  通过依赖注入,对象的依赖管理将不用对象本身来管理,将由一个第三方组件在创建对象时设定,依赖关系将被自动注入到对应的对象中去。

2.创建应用上下文

  • ClassPathXmlApplicationContext()从类路径创建

  • FileSystemXmlApplicationContext()读取文件系统下的xml配置

  • XmlWebApplicationContext() 读取web应用下的XML配置文件并装载上下文定义

3.声明Bean

  1. 最简单

  2. 带构造器

    
           //基本数据类型使用value      //对象使用ref
  3. 通过工厂方法创建

    如果想声明的Bean没有一个公开的构造函数,通过factory-method属性来装配工厂生产的Bean

    //getInstance为获取实例的静态方法。

4.Bean的作用域

所有Spring Bean默认都是单例的。通过配置scope属性为prototype可每次请求产生一个新的实例。

scope可选值:

  • singleton:每个容器中,一个Bean对象只有一个实例。(默认)

  • prototype:允许实例化任意次 ,每次请求都会创建新的

  • request:作用域为一次http请求

  • session:作用域为一个http session会话

  • global-session:作用域为一个全局http session,仅在Protlet上下文中有效

5.初始化和销毁Bean

当实例化需要执行初始化操作,或者销毁时需要执行清理工作。两种实现方式:

  1. xml配置,类中编写初始化方法和销毁方法,在bean中定义。

    也可在Beans中定义默认初始化和销毁方法。

  2. 实现InitializingBean和DisposableBean接口

6.setter注入

在bean中使用元素配置属性,使用方法类似于

 //注入基本数据类型  //注入类
可使用p简写,**-ref**后缀说明装配的是一个引用

7.注入内部Bean

既定义其他Bean内部的Bean,避免共享问题,可在属性节点或者构造器参数节点上使用。


      //没有id属性,因为不会被其他bean使用
    

8.装配集合

集合元素 用途
装配list类型,允许重复
set,不能重复
map类型
properties类型,键值都为String
  • list

    
      
        
        
        
      用来定义上下文中的其他引用,还可使用,,
  • set

    
      

    用法和list相同,只是不能重复

  • Map

    
        

    entry元素由一个key,一个value组成,分别有两种形式。

    key 键为String
    key-ref 键为Bean的引用
    value 值为String
    value-ref 值为Bean的引用
  • props

    
      guitar

    键值都是String

9.装配空值

原文出处:https://www.cnblogs.com/wuyoucao/p/9427388.html

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/1371/viewspace-2812463/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: Handler
请登录后发表评论 登录
全部评论

注册时间:2019-04-15

  • 博文量
    118
  • 访问量
    798