目录
1、spring的bean管理(注解)
(1)使用注解创建对象
(2)使用注解注入属性
(3)xml和注解方式混合使用
2、AOP
(1)aop概述
(2)aop底层原理
(3)aop操作相关术语
3、spring的aop操作(基于aspectj的xml方式)
4、log4j介绍
5、spring整合web项目演示
一、spring的bean管理(注解)
1、注解介绍
1> 代码里面特殊标记,使用注解可以完成功能
2> 注解写法: @注解名称(属性名称=属性值)
3> 注解可以使用在类、方法和属性上面
2、spring注解开发准备
第一步、导入jar包
(1)导入基本的jar包
(2)导入aop的jar包
第二步、创建类,创建方法
第三步、创建spring配置文件,引入约束
(1)引入基本约束beans
(2)做spring的IOC注解开发,需要引入新的约束
第四步、开启注解扫描
扩展:
1、关于Spring中的<context:annotation-config/>配置
https://www.cnblogs.com/iuranus/archive/2012/07/19/2599084.html
3、注解创建对象
(1)在创建对象的类上面使用注解实现
@Component(value="user")
public class User {
public void add () {
System.out.println("add ......");
}
}
(2)创建对象有四个注解
(3)创建对象是单实例还是多实例,scope配置,默认是单实例
4、注解注入属性
(1)创建service类,创建dao类,在service得到dao对象
1> 创建dao和service对象
2> 在service类里面定义dao类型属性
注入属性第一个注解 @Autowird
注入属性第二个注解 @Resource
扩展:
Spring注解@Resource和@Autowired区别对比
https://www.cnblogs.com/think-in-java/p/5474740.html
5、配置文件和注解混合使用
(1)创建对象操作使用配置文件方式实现
(2)注入属性操作使用注解方式实现
二、AOP
1、aop概念
(1)aop:面向切面编程,扩展功能不修改源代码实现
(2)aop采用横向抽取机制,取代了传统纵向继承体系重复性代码
2、aop底层原理
扩展:
动态代理的几种方式:
https://blog.csdn.net/happy_wu/article/details/78842371
3、aop操作相关术语
三、spring的aop操作
1、aop操作准备
(1)除了导入基本的jar包之外,还需要导入aop相关的jar包
(2)创建spring的核心配置文件,导入aop的 约束
2、使用表达式配置切入点
3、aspectj的aop操作
MyBook的增强Book的add方法
四、spring整合web项目演示
1、演示问题
(1)action调用service,service调用dao
bean1.xml
struts.xml
web.xml
每次访问action时候,都会加载spring配置文件
2、解决方案
(1)在服务器启动时候,创建对象加载配置文件
(2)底层使用监听器,ServletContext对象
3、在spring里面不需要我们自己写代码实现,已经封装好了
(1)帮我们封装了一个监听器,只需要配置监听器就可以了
(2)配置监听器之前做的事情:导入spring整合web项目jar包
(3)指定加载spring配置文件位置
spring默认加载配置文件:WEB-INF/applicationContext.xml
扩展:
1、系统中获取bean方式
2、spring bean生命周期