实验六 AOP,JdbcTemplate及声明式事务

实验六 AOP,JdbcTemplate及声明式事务

一 实验目的

熟悉动态代理,掌握Aop基本概念、原理,并掌握应用spring aop的开发步骤,掌握声明式事务的使用方法。

二 实验内容

1.基于注解的aop开发

1)添加依赖

2)写一个切面类,分别包含before,after,afterreturning,afterthrowing,around五种通知方法

3)将目标类交由ioc管理:

4)spring配置文件中加入:

5)测试

2 JdbcTemplate使用

1)在之前依赖的基础上再加入相关依赖

2)配置ioc容器

3)编写测试类,并测试利用JDBCTEMPLATE类进行CRUD操作。注意两个注释的意义

3 声明式事务

1)准备三层架构所需接口和类

(下图中人为增加了异常)

2)在spring配置文件中增加如下内容

3)编写测试类进行测试,观察出现异常和无异常时程序执行结果

实验内容

2.基于注解的aop开发

1)添加依赖

2)写一个切面类,分别包含before,after,afterreturning,afterthrowing,around五种通知方法


3)将目标类交由ioc管理:

4)spring配置文件中加入:

5)测试

结果:

2 JdbcTemplate使用

1)在之前依赖的基础上再加入相关依赖

2)配置ioc容器

3)编写测试类,并测试利用JDBCTEMPLATE类进行CRUD操作。注意两个注释的意义

增删改:

查询:

查询数据返回对象:

查询数据返回List集合:

3 声明式事务

数据库建表:

1)准备三层架构所需接口和类

(下图中人为增加了异常)


2)在spring配置文件中增加如下内容

3)编写测试类进行测试,观察出现异常和无异常时程序执行结果

结果:

事务执行成功,

发生异常,事务回滚:


三 实验收获

收获:

深入掌握了 AOP、JdbcTemplate 及声明式事务的核心知识与应用。学习 AOP 时,理解其将横切逻辑分离的理念,通过动态代理实现切面编程,减少代码冗余。JdbcTemplate 简化了 JDBC 操作,让数据库增删改查更高效,通过 RowMapper 可灵活映射数据。声明式事务则以注解或配置方式,自动管理事务,保障数据完整性,实现业务与事务逻辑分离。这些技术的应用,提升了开发效率,对程序结构设计和数据处理有了更深刻的认识。

相关推荐
cndes17 分钟前
给Miniconda换源,让包下载更迅速
开发语言·python
乐观的Terry24 分钟前
1、为什么要自己造发布系统
java·spring boot·后端·spring cloud·架构
咏方舟【长江支流】31 分钟前
【开源】跨语言·跨平台·跨数据库(2) —— 用宝轻量框架设计必读
数据库·架构·开源·ai编程·咏方舟-长江支流·用宝框架
LuminousCPP35 分钟前
C 语言集中实践全记录:顺序表 + 单链表原理实现与通讯录项目实战【附可运行源码】
c语言·开发语言·数据结构·经验分享·笔记
兰令水38 分钟前
hot100【acm版】【2026.7.13打卡-java版本】
java·开发语言·数据结构·算法·leetcode·面试
手握风云-1 小时前
Redis:不只是缓存那么简单(十五)
数据库·redis·缓存
铅笔侠_小龙虾1 小时前
Rust 学习(4)-函数与注释
开发语言·学习·rust
weixin_307779131 小时前
Linux下Docker Compose里运行PostgreSQL数据库故障诊断Shell脚本
linux·运维·数据库·docker·postgresql
名字还没想好☜1 小时前
用 Redis + Redisson 实现分布式锁:从踩坑到生产可用
java·redis·分布式·junit·分布式锁·redisson
醉城夜风~1 小时前
MySQL 常用内置函数全解:字符串、数值、日期、流程控制实战教程
数据库·mysql