spring boot 代理(not eligible for auto-proxying)
问题一:
在同一个对象中有两个方法,分别未方法A,方法B(添加了事务),在方法A中调用方法B,出现了事务不能回滚的情况:
/**
* 方法A
*/
public void methodA(){
System.out.println("I an methodA ...");
}
/**
* 方法B
*/
@Transactional
public void methodB(){
System.out.println("I an methodB ...");
//手动回滚事务
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
}
此时报异常
org.springframework.transaction.NoTransactionException: No transaction aspect-managed TransactionStatus in scope
解决方案:新建一个类,将方法B放在新建的类中,定义格式不变,然后在原来的类中调用即可,这是因为spring的事务依赖的是AOP,spring在初始化bean 是生成了一个代理类,在第一个方法中有代理类的存在,调用本类其他方法是是使用的对象本身而不是代理类,故而事务不能回滚。
问题二:
springboot项目中不知因为什么原因有些service未生成代理类,在启动时:
is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying
虽然此条日志信息时info级别的不影响正常的运行。可是出现此问题的类中service 就是不回滚,不知道此问题的原因,有知道的烦请告知一二,万分感谢。
解决方案:在此类中添加注解
@Scope(proxyMode = ScopedProxyMode.INTERFACES)
此注解意思是生成一个jdk代理类,从而解决此问题
转载于:https://www.cnblogs.com/matd/p/11127500.html
spring boot 代理(not eligible for auto-proxying)相关推荐
- Spring Boot 打包一站式解决方案
文章目录 一.场景介绍 二.项目搭建 二.打包方案一(Fat Jar) 三.打包方案二(Thin Jar) 一.场景介绍 众所周知 Spring Boot 应用是目前企业最主流的一套快速搭建项目的脚手 ...
- Spring Boot文档阅读比较-@SpringBootApplication Auto Configuration
maven如下: <?xml version="1.0" encoding="UTF-8"?> <project xmlns="ht ...
- Spring AOP动态代理实现,解决Spring Boot中无法正常启用JDK动态代理的问题
Spring AOP动态代理实现,解决Spring Boot中无法正常启用JDK动态代理的问题 参考文章: (1)Spring AOP动态代理实现,解决Spring Boot中无法正常启用JDK动态代 ...
- Spring Boot实践——Spring AOP实现之动态代理
Spring AOP 介绍 AOP的介绍可以查看 Spring Boot实践--AOP实现 与AspectJ的静态代理不同,Spring AOP使用的动态代理,所谓的动态代理就是说AOP框架不会去修改 ...
- Spring Boot四大神器之Auto Configuration
Spring Boot非常简单容易上手,它隐藏了很多内容而不需要你去关心.但对于一个好的开发人员也许希望知道Spring Boot自动配置背后到底发生了什么? Spring Boot并不属于一种新的技 ...
- Spring/Boot/Cloud系列知识(2)— — 代理模式
本文转自:https://blog.csdn.net/yinwenjie/article/details/77848285 代理模式是23种设计模式中的一种,属于一种结构模式.用一句大白话解释这个设计 ...
- 基于Servlet体系的HTTP请求代理转发Spring Boot组件
背景概述 两个项目组原本都是各自负责两个产品线(产品A.产品B),由于公司业务的发展,目前需要将两个产品合并成一个大产品(功能整合,部分做取舍,最终产出产品C),前后端代码必然也需要整合,包括两个产品 ...
- java版Spring Cloud+Spring Boot+mybatis+uniapp b2b2c 多商户入驻商城 直播商城 直播带货商城之分销代理列表
1. 涉及平台 平台管理.商家端(PC端.手机端).买家平台(H5/公众号.小程序.APP端(IOS/Android).微服务平台(业务服务) 2. 核心架构 Spring Cloud.Spring ...
- MyBatis-Plus,搭配 Spring Boot 使用,一篇就够了
以下文章来源方志朋的博客,回复"666"获面试宝典 MyBatis-plus 是一款 Mybatis 增强工具,用于简化开发,提高效率.下文使用缩写 mp来简化表示 MyBatis ...
最新文章
- oracle查询保留2位小数
- C++ string类型与数值型变量的相互转换
- C语言标量变向量的函数,GLSL 详解(基础篇)
- java字符串标胶大小_Java 标签上显示string长度如果超出标签大小
- 【转】2.2【MySQL】运行原理(二):InnoDB 内存结构、磁盘结构及update sql执行过程分析
- 用java编写日历添加窗口一角_Java 实训4 编写一个窗体程序显示日历
- 查看Ubuntu系统的版本
- Java 集合(初稿)
- linux g++ 链接,Linux G++将64位共享库代码链接到静态库
- Matlab45度边缘连接,为什么Matlab的delaunayn()的delaunay边缘与非相邻的Voronoi区域连接点?...
- 【笔试/面试】排列组合与概率计算(三)
- Oracle PLSQL 从入门到精通
- 微信公众号小白的进阶之路
- javascript 字符串的排列与组合
- 1068 万绿丛中一点红 (20 分)测试点3、5
- PM2部署React项目(Ubuntu服务器)
- Week1.3-金融会计指标案例分析
- CINTA作业一:加减乘除
- jquery ajax json文件,jQuery ajax读取本地json文件
- 特征方程求数列的通项公式(二阶线性递推式)
热门文章
- c语言快速复数的比较大小,c语言中的复数操作
- 【Python画图01】一张图上两条线,坐标图例设置
- 京东亿级商品搜索核心技术解密
- 你只需画草稿,剩下都交给AI!哈佛『机器学习』最新课程;Evernote收费又难用?试试这款开源工具;提示工程资源整合笔记;前沿论文 | ShowMeAI资讯日报
- 无法勾选远程连接到计算机,客户端无法连接到远程计算机错误的解决方法
- HashTable常用方法,不积硅步无以至千里
- 雷军狂拿99亿奖励刷新世界纪录,营收同比大增68.3%
- 贪心策略:请你设计最优的安排会议日程表,以使得举行的会议数最多
- 计算机网络基本概念汇总
- 华为发布新一代5G网络解决方案,加速5G生态发展