spring学习01
文章目录
1 项目配置
1.1 spring简介
spring框架
SSM框架之一,用来创建对象、管理对象、实现组件之间的解耦,也可以使用spring框架整合其他框架,实现简化代码提高开发效率。
1.1 spring的IOC
IOC——控制反转(Inversion of Control),将对象的创建和管理由spring框架实现,以前由自己创建和管理对象(用new创建对象)
1.2 spring优点
简化代码,提高开发效率
能够实现IOC
集成其他框架
支持AOP
解耦:降低组件之间的耦合(耦合度:高内聚,低耦合)
1.3 实现IOC
新建maven项目quickstart,公司域名com.fk
导入spring框架包,包含spring框架和springMVC框架
补齐目录
resources目录下新建spring配置文件spring.xml
2.1 DI
依赖注入:将spring容器中的对象或者是属性的值,通过特定的方式,注入(引用)到别的组件中
2.2 依赖注入方式:
2.2.1 set注入
新建Teacher类,将id、name、salry属性生成set和toString方法
PS: toString()方法属于Object类方法,在Object类中toString()方法默认输出对象内存地址值,子类重写父类的toString()可以查看类的属性值(类属性的具体信息)。
package com.fk.pojo;
public class Teacher {
private Integer id;
private String name;
private Integer salry;
public void setId(Integer id) {
this.id = id;
}
public void setName(String name) {
this.name = name;
}
public void setSalry(Integer salry) {
this.salry = salry;
}
@Override
public String toString() {
return "Teacher{" +
"id=" + id +
", name='" + name + '\'' +
", salry=" + salry +
'}';
}
}
在resource目录下的spring.xml内用bean
<!--测试Spring通过set方法将属性注入到Teacher类的属性中-->
<bean id="t" class="com.fk.pojo.Teacher">
<property name="id" value="10"></property>
<property name="name" value="zhangsan"></property>
<property name="salry" value="3000"></property>
</bean>
在测试里新建TestSpring类里测试Spring通过set方法将属性注入到Teacher类的属性中
//测试Spring通过set方法将属性注入到Teacher类的属性中
@Test
public void test2(){
//加载spring框架配置文件
ClassPathXmlApplicationContext ac = new ClassPathXmlApplicationContext("spring.xml");
//从Spring容器里获取Teacher对象
Teacher t = ac.getBean("t", Teacher.class);
System.out.println(t);
}