spring基础思维导图
分类:
文章
•
2022-12-07 00:13:25
- spring
-
1、加载配置文件:BeanFactory
bf =
new ClassPathXmlApplicationContext("applicationContext.xml");
-
User user
= (User)
bf.getBean("user");
-
-
IOC控制反转,利用bean工厂创建对象
-
bean标签:id代表创建的对象名,class代表类名,scope代表是单例还是多例,(prototype, singleton 默认单例)
lazy-init="true" 是否懒加载,
init-method="toString”,对象创建时就执行的方法,destroy-method对象销毁是执行的方法
-
DI依赖注入,与set方法名有关,获得对象
-
属性设置: <property
name=“属性名”
value=“值”></property>
-
<property name=“属性名”>
-
<value>值</value>
-
</property>
- value只能放四类八种和String,ref注入对象
-
<property name=“属性名”>
-
<list><value>w值</value>
-
</list></property>
-
map:<property
name="map"><map><entry><key><value>键值</value>
</key>
<value>值</value></entry></map></property>
-
对象:<property
name="userinfo"
ref=“对象的bean的id”></property>
- 构造方法注入
-
<bean
id="tom"
class="com.lanou.spring.beans.Cat"
lazy-init="true">
-
<constructor-arg>
-
<!-- 参数 --><value>第一个参数值</value>
-
</constructor-arg><constructor-arg>
- <!-- 第二个对象参数 --><ref
bean="user"
/>
-
</constructor-arg>
-
</bean>
-
2、加载文件: ApplicationContext
context=new
ClassPathXmlApplicationContext("sptingtest.xml");
-
User
user=(User)
context.getBean("user");
-
注解:IOC 对象,相当与bean@Component("user”)相当于id
-
@Scope("prototype”)设置多里
-
@Lazy(false)设置是否懒加载
- DI注入:
-
在需要设置的属性上加@Value("liguocheng")
-
引用对象类型加 @Autowired根据类型自动加载
是spring提供的,自动选择对应的类 ,或加按名称注入 java自带的@Resource(name="info")
-
@PostConstruct//构造方法执行晚一会立即执行相当于init-menthod