spring的bean管理注解准备:
- 代码里面持殊标记,使用注解可以完成功能
- 注解写法@注解名称(属性名称-属性值)
- 注解使用在类上面,方法上面和属性上面
Spring注解开发准备:
- 导入jar包:
1、导入基本的jar包
2、导入aop的jar包
- 创建类,创建方法
- 创建Spring的配置文件,引入约束
- 第一天做 ioc 基本功能,引入约束beans
- 做spring 的 ioc 注解开发,引入新的约束
开启注解的扫描,如果要扫描的包很多,那么可以使用逗号进行分割,或者写包的前面部分!
spring的bean管理(注解创建对象):
测试:
常用注解:(4种)
Spring中提供@Component的三个衍生注解:(功能目前来讲是一致的)
- @controller:WEB层
- @service:业务层
- @Repository:持久层
这三个注解是为了让标注类本身的用途清晰,Spring在后续版本会对其增强
spring的bean管理(注解注入属性):
1、创建service类,创建dao类,在service得到dao对象,注入属性第一个注解 @Autowired
(1)创建dao和 service对象
(2)在service类里面定义dao类型属性
整体实现:
注入属性第二个注解 @Resource
AOP概念:
AOP:面向切面(方面)编程,扩展功能不修改源代码实现
AOP采取横向抽取机制,取代了传统纵向继承体系重复性代码
AOP操作术语:
Spring的AOP操作:
- 在 spring 里面进行aop操作,使用 aspectj 实现
- aspectj 不是spring—部分,和spring—起使用进行aop操作。
- Spring2.0以后新增了对 AspectJ支持。
- 使用aspectj实现AOP有两种方式:
- 基于aspectj的xml配置
- 基于aspectj的注释方式
AOP的准备工作:
1、除了导入基本的jar包之外,还需要导入aop相关的jar包
2、创建Spring核心配置文件,导入AOP约束
使用表达式配置切入点:
1、切入点:实际增强的方法
2、常用的表达式:execution(<访间修饰符>?<返回类型>方法名>(<参数>)<异常>)
- execution(* cn.itcast.aop.Book.add(..))
- execution(* cn.itcast.aop.Book.*(..)
- execution(**.*(..))
- 匹配所有save开头的方法 execution(* save*(..))
aspectj的aop操作:
前置通知:
aspectj的aop其他操作:
后置通知:
环绕通知:
log4j介绍:
1、通过log4j可以看见运行过程中更详细的信息;
- 经常使用log4j查看日志;
2、使用
- 导入架包
- 复制log4j的配置文件,复制到src下面
3、设置日志级别
- info:看到基本信息
- debug:看到更详细的信息