JavaWeb——事务管理、AOP

目录

一、事管理

1.开启事务管理日志

2.开启事务管理

3.传播行为

二、AOP

1.通知类型

2.通知顺序

3.切入点表达式

4.连接点


一、事务管理

1.开启事务管理日志

2.开启事务管理

3.传播行为

 当一个事务方法被另一个事务方法调用时,这个事物方法应该如何进行事物控制

二、AOP

Aspect Oriented Programming(面向切面编程、面向方面编程),其实就是面向特定方法编程

连接点:JoinPoint,可以被AOP控制的方法

通知:Advice,指那些重复的逻辑,也就是共性功能

切入点:PointCut,匹配连接点的条件,通知仅会在切入点方法执行时被应用

切面:Aspect,描述通知与切入点的对应关系(通知+切入点)

目标对象:Target,通知所应用的对象

1.通知类型

@PointCut:

package com.itheima.tialswebmanagementapplication.aop;import org.aspectj.lang.ProceedingJoinPoint;
import org.aspectj.lang.annotation.Around;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Pointcut;
import org.springframework.stereotype.Component;@Component
@Aspect
public class TimeAspect {@Pointcut("execution(* com.itheima.tialswebmanagementapplication.Severice.impl.*.*(..))")private void pt(){};@Around("pt()")public Object testTime(ProceedingJoinPoint joinPoint) throws Throwable {long begin = System.currentTimeMillis();Object proceed = joinPoint.proceed();long end = System.currentTimeMillis();System.out.println(joinPoint.getSignature()+"执行时间:"+(end-begin));return proceed;}}

注意:private,仅能在当前切面类中引用该表达式,public,在其他外部的切面类中也可以引用该表达式 

2.通知顺序

当有多个切面的切入点都匹配到目标方法,目标方法运行时,多个通知方法都会被执行

3.切入点表达式

execution: 

注意:根据业务需要,可以使用且(&&)、或(||)、非(!)来组合比较复杂的切入点表达式

annotation:

4.连接点

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/75896.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

okhttp3网络请求

一、使用okhttp3和gson build.gradle ... dependencied {...implementation com.squareup.okhttp3:okhttp:3.9.0implementation com.google.code.gson:gson:2.10.1 }二、响应模型 可根据实际情况进行调整,目前我所需的就是这三个变量 HttpResponseData.java im…

【蓝桥杯每日一题】3.28

🏝️专栏: 【蓝桥杯备篇】 🌅主页: f狐o狸x "今天熬的夜,会变成明天奖状的闪光点!" 目录 一、唯一的雪花 题目链接 题目描述 解题思路 解题代码 二、逛画展 题目链接 题目描述 解题思路 解题代…

【MinIO】Bucket的生命周期管理

👻创作者:丶重明 👻创作时间:2025年3月7日 👻擅长领域:运维 目录 1.ILM使用介绍2.生命周期配置实例 1.ILM使用介绍 对象生命周期管理(ILM)是现代对象存储系统的核心功能之一&#x…

Android 中隐藏标题栏和状态栏的方法

在Android开发中,隐藏标题栏和状态栏是实现全屏显示的常见需求。 一、隐藏标题栏 1、通过代码隐藏 对于继承自 AppCompatActivity 的 Activty,可在 onCreate() 方法中调用supportRequestWindowFeature 或 getSupportActionBar 方法来隐藏标题栏。 ove…

进程间通信——信号量

进程间通信——信号量 目录 一、基本概念 1.1 概念 1.2 基本操作 1.3 相关函数 1.3.1 semget创建/获取 1.3.2 semop操作信号量 1.3.3 semctl初始化/删除 二、代码操作 2.1 不用PV的 2.2 用PV 的 2.2.1 a.c 2.2.2 b.c 2.2.3 sem.h 2.2.4 sem.c 一、基本概念 1.1…

Linux内核2-TFTP与NFS环境搭建

Uboot:引导程序 初始化硬件设备,初始化c语言环境,为内核加载做准备 zImage:内核文件 rootfs:文件系统,为用户提供一个与硬件设备数据交互的系统 1.TFTP和NFS功能 TFTP:简单文件传输协议网络配置 pc可以下载 2.minicom bootargs…

TDengine 中的命名与边界

简介 本章主要介绍命名的合法字符集和限制规则,这对于正确使用 TDengine,减小报错很重要,这些规则在 SQL 语句中都生效,在使用过程中要注意,避免不必要的错误。 名称命名规则 合法字符:英文字符、数字和…

C++ 中将函数作为参数传递

C 中将函数作为参数传递 1. 通过指针传递函数 函数可以通过传递函数的地址来作为参数传递&#xff1b;简而言之&#xff0c;就是通过指针实现这一点。 示例代码 #include <iostream> using namespace std;// 定义加法和减法函数 #include <iostream> #include …

Vala 编程语言教程-继承

继承‌ 在 Vala 中&#xff0c;一个类可以继承自 ‌一个或零个‌ 其他类。尽管实际开发中通常继承一个类&#xff08;不同于 Java 等语言的隐式继承机制&#xff09;&#xff0c;但 Vala 并不强制要求必须继承。 当定义继承自其他类的子类时&#xff0c;子类的实例与父…

Crypto Architecture Kit简介

HarmonyOS 5.0.3(15) 版本的配套文档&#xff0c;该版本API能力级别为API 15 Release 文章目录 约束与限制能力范围基本概念与相关Kit的关系 Crypto Architecture Kit屏蔽了第三方密码学算法库实现差异的算法框架&#xff0c;提供加解密、签名验签、消息验证码、哈希、安全随机…

交流电机类型及其控制技术

交流电机可分为同步电机和异步电机两大种类&#xff0c;如果电机转子的转速与定子旋转磁场的转速相等&#xff0c;转子与定子旋转磁场在空间同步地旋转&#xff0c;这种电机就称为同步电机。如果电机转子的转速不等于定子旋转磁场的转速&#xff0c;转子与定子旋转磁场在空间旋…

SQL语言分类及命令详解(一)

目录 1. DQL&#xff08;Data Query Language&#xff09;数据查询语言 主要命令&#xff1a; SELECT 2. DDL&#xff08;Data Definition Language&#xff09;数据定义语言 主要命令&#xff1a; CREATE ALTER DROP TRUNCATE&#xff08;清空表数据&#xff0c;保留…

fluent_UDF学习笔记

UDF源代码路径 D:\Program Files\ANSYS Inc\v231\fluent\fluent23.1.0\src关于颗粒反弹速度的计算 /* 通过面法向单位向量计算速度的法向向量、切向向量&#xff0c;再通过法向、切向恢复系数重新计算反弹速度*//* Compute normal velocity.将颗粒速度向面法线方向投影&#x…

Go 语言标准库中sort模块详细功能介绍与示例

Go语言的 sort 模块提供了对切片和自定义数据结构的排序功能&#xff0c;支持基本类型排序、自定义排序规则、稳定排序和二分查找。以下是 sort 模块的核心方法及示例说明&#xff1a; 1. 基本类型排序 sort.Ints、sort.Float64s、sort.Strings 直接对基本类型的切片进行排序…

第十六届蓝桥杯模拟二(串口通信)

由硬件框图可以知道我们要配置LED 和按键 一.LED 先配置LED的八个引脚为GPIO_OutPut,锁存器PD2也是,然后都设置为起始高电平,生成代码时还要去解决引脚冲突问题 二.按键 按键配置,由原理图按键所对引脚要GPIO_Input 生成代码,在文件夹中添加code文件夹,code中添加fun.…

06-ADC

ADC简介 Analog-Digital Converter 模拟-数字转换器 ADC可以将引脚上连续变化的模拟电压转换为内存中存储的数字变量&#xff0c;建立模拟电路到数字电路的桥梁。 12位逐次逼近型ADC&#xff0c;1us转换时间&#xff1b;输入电压范围&#xff1a;0-3.3V&#xff0c;转换结果…

二层综合实验

拓扑图 实验要求 1.内网IP地址使用172.16.6.0/16分配 2.sw1和sW2之间互为备份 3.VRRP/STP/VLAN/Eth-trunk均使用 4.所有Pc均通过DHCP获取IP地址 5.ISP只能配置IP地址 6.所有电脑可以正常访问IsP路由器环回 实验思路 这是一个二层综合实验每当拿到一个实验看清楚要求之后都有…

Java实现pdf中动态插入图片

今天接到一个需求&#xff0c;需要在pdf中的签名处&#xff0c;插入签名照片&#xff0c;但签名位置不固定&#xff0c;话不多说上代码&#xff1a; 1、首先引入itextpdf依赖包&#xff1a; <dependency><groupId>com.itextpdf</groupId><artifactId>…

OpenCV 图形API(2)为什么需要图形API?

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 G-API背后的动机 G-API模块为OpenCV带来了基于图的执行模型。本章简要描述了这种新模型如何在两个方面帮助软件开发者&#xff1a;优化和移植图像处理算法…

基于Spring AI开发本地Jenkins MCP Server服务

前言 首先介绍下MCP是什么&#xff1f; MCP是由开发了 Claude 模型的 Anthropic 公司2024年12月提出并开源的一项开放标准&#xff0c;全称&#xff1a;Model Context Protocol&#xff0c;它是一个开放协议&#xff0c;它使 LLM 应用与外部数据源和工具之间的无缝集成成为可能…