day01
2022-07-18
day01
Spring
Java Bean
类定义,符合如下规则的java对象称为Java Bean
-
必须有包
-
必须有无参数构造器
-
必须实现 序列化接口
-
有get set方法声明的"Bean属性".
- bean属性 不是对象属性,指get,set方法
- boolean类型的get属性方法,可以声明为 isXXX
符合一定规范的Java对象
Spring IOC
Spring IOC用于管理(创建,修改属性等)Java Bean对象.
- Spring IOC可以创建Java Bean对象
- Spring IOC可以修改Bean属性
- Spring IOC可以作为Java Bean的工厂使用
Spring 可以管理Bean属性
Bean属性注入:修改"Bean属性" 不是对象的属性!实际上是调用了setXXX方法,修改了Bean属性.
工厂方法
- 简单理解就是利用方法创建对象
- 将对象复杂的创建过程封装到方法中
- 使用时候调用方法就重用了复杂的对象创建过程,简洁的得到对象.
静态工厂方法:(类调用(静态))
Connection getConnection()
Connection conn = DBUtils.getConnection();
Calendar rightNow = Calendar.getInstance();
动态工厂方法:(对象调用)
Statement st = conn.createStatement();
Date date = cal.getTime();
Spring创建对象的3种方式
Spring 帮助创建JavaBean对象,Spring支持创建3种对象创建方式
- 利用构造器创建Java Bean
- 利用静态"工厂方法"创建对象
- 利用动态工厂方法创建对象
Bean的作用域
-
Spring 在默认情况下,其中Bean都是单例的!
- 单例: 在软件中一个永远唯一的对象,称为单例!
Bean的生命周期管理
Spring中的Bean对象,由Spring控制对象的创建和销毁,这个过程称为Spring中Bean对象的生命周期管理.
-
单例对象 singleton (单例)
- 创建: 在Spring容器初始化时候,创建单例对象,如果设置了init-method属性,则在创建对象以后调用初始化方法.
- 使用: 每次调用getBean时候,返回的都是同一个对象
- 销毁: 在Spring容器关闭时候,会自动销毁单例对象.如果指定了destory-method属性,则会在销毁之前执行销毁方法.
-
多例对象 prototype 原型
- 创建: 在调用getBean方法时候,创建对象,如果设置了init-method属性,则在创建对象以后调用初始化方法.
- 使用: 每次调用getBean时候,返回的都是新对象
- 销毁: Spring不管!!也不会调用destroy-method!!