基于aspecj的注解aop操作:
- 创建对象
- 在spring核心配置文件中,开启AOP操作
- 在增强类上使用注解完成AOP操作
- 测试:
Spring的jdbcTemplate操作:
1、spring 框架—站式框架
- 针对javaee三层,每一层都有解决技术
- 在dao层,使用jdbcTemplate
2、spring对不同的持久化层技术都进行了封装
- jdbcTemplate对jdbc进行封装
3、jdbcTemplate和dbutils使用很相似,都对数据库进行crud操作
jdbcTemplate实现crud操作(添加操作)
1、导入jdbcTemplate使用的jar包
2、创建对象,设置数据库的信息
3、创建jdbcTemplate对象,设置数据源
4、调用jdbcTemplate对象里面的方法实现操作
jdbcTemplate实现crud操作(修改操作)
jdbcTemplate实现crud操作(删除操作)
jdbcTemplate实现crud操作(查询操作)
1、使用jdbc进行查询
2、具体实现
- 查询返回某一个值
- 第一个参数是sql语句
- 第二个参数是返回类型的class
- 查询返回对象--最原始方法:
数据库表:
- 查询返回对象:
- 第一参数:sql语句
- 第二个参数:RowMapper,是接口,类似于dbutils里面接口
- 第三个参数:可变参数
- 查询返回list集合
- 第一个参数:sql语句
- 第二个参数:RowMapper接口,自己写类实现数据封装
- 第三个参数:可变参数,可省略
spring配置c3p0连接池:
(1)导入jar包
(2)创建Spring配置文件,配置连接池
- 代码中实现:
- 把代码在Spring的配置文件中配置出来:
spring事务管理两种方式:
- 第一种编程式事务管理(不用)
- 第二种声明式事务管理
- 基于xml配置文件实现
- 基于注解实现
spring的事务api介绍:
接口:PlatTransactionManager事务管理器
- spring针对不同的dao层框架,提供接口不同的实现类
- 配置事务管理器
Spring的事务管理(转账环境搭建):
1、创建数据库表,添加数据
2、创建service和dao类,完成注入关系
(1)service又叫事务逻辑层:(小王转账给小马1000元,那么小王少1000,小马多1000)
(2)dao层,单纯对数据库层操作层,在dao层不添加业务
- 业务实现:(分层的思想)
- 测试:
3、产生问题(除0异常)
如果转账过程中突然停电,小王少了1000,但是小马没有增加1000,前丢失了
4、解决
添加事务解决,出现异常进行回滚操作;
spring的事务管理(配置文件实现)
1、配置事务管理器
2、配置事务增强
3、配置切面
spring的事务管理(注解实现):
1、配置事务管理器
2、开启事务注解
3、在要使用事务的方法所在类的上面添加注解