Spring与日志框架进行整合,日志框架就可以在控制台中,输出Spring框架运行过程中的一些重要的信息。
好处:便于了解Spring框架的运行过程,利于程序的调试。
Spring如何整合日志框架
默认
> Spring1 .2.3早期都是于commons- logging.jar
> Spring5.x默认整合的日志框架logback log4j2
Spring5.x整合1og4j
1.引入log4j jar包
2.引入log4. properties配置文件
1.pom
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.25</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
2.log4j.properties
3.注入(injection)
3.1 什么是注入
通过Spring⼯⼚及配置⽂件,为所创建对象的成员变量赋值。
3.2 为什么要注入
通过编码的⽅式,为成员变量进⾏赋值,存在耦合
ApplicationContext ctx = new ClassPathXmlApplicationContext("/applicationContext.xml");
Person person = (Person) ctx.getBean("person");
person.setId(1);
person.setName("wang");
System.out.println(person);
运行结果:
Person{name='wang', id=1}
//虽然赋值成功 但是存在耦合 因为如果要再次改id name 则需要在代码中改掉原先的值
//改代码要涉及重新编译、部署
3.3 如何注入
1.类的成员变量提供set get⽅法
2.配置spring的配置⽂件
name属性的值对应实体类的成员变量
<bean id="person" class="com.dy.basic.Person">
<property name="id">
<!-- 等同为id属性注入10-->
<value>10</value>
</property>
<property name="name">
<value>douan</value>
</property>
</bean>
3.4 注入好处
解耦合 不涉及重新编译 重新部署的过程.
4. 注入的原理分析(简易版)
Spring通过底层调⽤对象属性对应的set⽅法,完成成员变量的赋值,这种⽅式我们也称之为**set注⼊**
(bean标签等效于创建了对象(底层源码是通过反射创建了对象);property标签等效于调用了set方法(底层源码是通过反射调用了set方法))
本系列文章从Spring5原理开始深入浅出,从工厂特性=>依赖注入–IOC=>AOP编程=>Spring事务=>纯注解开发。本文来自观看B站孙帅Spring教程后做的笔记。持续更新…