day01

2022-07-18

day01

Spring

Java Bean

类定义,符合如下规则的java对象称为Java Bean

  1. 必须有包

  2. 必须有无参数构造器

  3. 必须实现 序列化接口

  4. 有get set方法声明的"Bean属性".

    • bean属性 不是对象属性,指get,set方法
    • boolean类型的get属性方法,可以声明为 isXXX

符合一定规范的Java对象

Spring IOC

Spring IOC用于管理(创建,修改属性等)Java Bean对象.

  1. Spring IOC可以创建Java Bean对象
  2. Spring IOC可以修改Bean属性
  3. Spring IOC可以作为Java Bean的工厂使用

Spring 可以管理Bean属性

Bean属性注入:修改"Bean属性" 不是对象的属性!实际上是调用了setXXX方法,修改了Bean属性.

工厂方法

  1. 简单理解就是利用方法创建对象
  2. 将对象复杂的创建过程封装到方法中
  3. 使用时候调用方法就重用了复杂的对象创建过程,简洁的得到对象.

静态工厂方法:(类调用(静态))

	Connection getConnection()

	Connection conn = DBUtils.getConnection();

	Calendar rightNow = Calendar.getInstance();

动态工厂方法:(对象调用)

	Statement st = conn.createStatement();
	Date date = cal.getTime();

Spring创建对象的3种方式

Spring 帮助创建JavaBean对象,Spring支持创建3种对象创建方式

  1. 利用构造器创建Java Bean
  2. 利用静态"工厂方法"创建对象
  3. 利用动态工厂方法创建对象

Bean的作用域

  1. Spring 在默认情况下,其中Bean都是单例的!

    • 单例: 在软件中一个永远唯一的对象,称为单例!

Bean的生命周期管理

Spring中的Bean对象,由Spring控制对象的创建和销毁,这个过程称为Spring中Bean对象的生命周期管理.

  1. 单例对象 singleton (单例)

    • 创建: 在Spring容器初始化时候,创建单例对象,如果设置了init-method属性,则在创建对象以后调用初始化方法.
    • 使用: 每次调用getBean时候,返回的都是同一个对象
    • 销毁: 在Spring容器关闭时候,会自动销毁单例对象.如果指定了destory-method属性,则会在销毁之前执行销毁方法.
  2. 多例对象 prototype 原型

    • 创建: 在调用getBean方法时候,创建对象,如果设置了init-method属性,则在创建对象以后调用初始化方法.
    • 使用: 每次调用getBean时候,返回的都是新对象
    • 销毁: Spring不管!!也不会调用destroy-method!!