问题一:
    在同一个对象中有两个方法,分别未方法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)相关推荐

  1. Spring Boot 打包一站式解决方案

    文章目录 一.场景介绍 二.项目搭建 二.打包方案一(Fat Jar) 三.打包方案二(Thin Jar) 一.场景介绍 众所周知 Spring Boot 应用是目前企业最主流的一套快速搭建项目的脚手 ...

  2. Spring Boot文档阅读比较-@SpringBootApplication Auto Configuration

    maven如下: <?xml version="1.0" encoding="UTF-8"?> <project xmlns="ht ...

  3. Spring AOP动态代理实现,解决Spring Boot中无法正常启用JDK动态代理的问题

    Spring AOP动态代理实现,解决Spring Boot中无法正常启用JDK动态代理的问题 参考文章: (1)Spring AOP动态代理实现,解决Spring Boot中无法正常启用JDK动态代 ...

  4. Spring Boot实践——Spring AOP实现之动态代理

    Spring AOP 介绍 AOP的介绍可以查看 Spring Boot实践--AOP实现 与AspectJ的静态代理不同,Spring AOP使用的动态代理,所谓的动态代理就是说AOP框架不会去修改 ...

  5. Spring Boot四大神器之Auto Configuration

    Spring Boot非常简单容易上手,它隐藏了很多内容而不需要你去关心.但对于一个好的开发人员也许希望知道Spring Boot自动配置背后到底发生了什么? Spring Boot并不属于一种新的技 ...

  6. Spring/Boot/Cloud系列知识(2)— — 代理模式

    本文转自:https://blog.csdn.net/yinwenjie/article/details/77848285 代理模式是23种设计模式中的一种,属于一种结构模式.用一句大白话解释这个设计 ...

  7. 基于Servlet体系的HTTP请求代理转发Spring Boot组件

    背景概述 两个项目组原本都是各自负责两个产品线(产品A.产品B),由于公司业务的发展,目前需要将两个产品合并成一个大产品(功能整合,部分做取舍,最终产出产品C),前后端代码必然也需要整合,包括两个产品 ...

  8. java版Spring Cloud+Spring Boot+mybatis+uniapp b2b2c 多商户入驻商城 直播商城 直播带货商城之分销代理列表

    1. 涉及平台 平台管理.商家端(PC端.手机端).买家平台(H5/公众号.小程序.APP端(IOS/Android).微服务平台(业务服务) 2. 核心架构 Spring Cloud.Spring ...

  9. MyBatis-Plus,搭配 Spring Boot 使用,一篇就够了

    以下文章来源方志朋的博客,回复"666"获面试宝典 MyBatis-plus 是一款 Mybatis 增强工具,用于简化开发,提高效率.下文使用缩写 mp来简化表示 MyBatis ...

最新文章

  1. oracle查询保留2位小数
  2. C++ string类型与数值型变量的相互转换
  3. C语言标量变向量的函数,GLSL 详解(基础篇)
  4. java字符串标胶大小_Java 标签上显示string长度如果超出标签大小
  5. 【转】2.2【MySQL】运行原理(二):InnoDB 内存结构、磁盘结构及update sql执行过程分析
  6. 用java编写日历添加窗口一角_Java 实训4 编写一个窗体程序显示日历
  7. 查看Ubuntu系统的版本
  8. Java 集合(初稿)
  9. linux g++ 链接,Linux G++将64位共享库代码链接到静态库
  10. Matlab45度边缘连接,为什么Matlab的delaunayn()的delaunay边缘与非相邻的Voronoi区域连接点?...
  11. 【笔试/面试】排列组合与概率计算(三)
  12. Oracle PLSQL 从入门到精通
  13. 微信公众号小白的进阶之路
  14. javascript 字符串的排列与组合
  15. 1068 万绿丛中一点红 (20 分)测试点3、5
  16. PM2部署React项目(Ubuntu服务器)
  17. Week1.3-金融会计指标案例分析
  18. CINTA作业一:加减乘除
  19. jquery ajax json文件,jQuery ajax读取本地json文件
  20. 特征方程求数列的通项公式(二阶线性递推式)

热门文章

  1. c语言快速复数的比较大小,c语言中的复数操作
  2. 【Python画图01】一张图上两条线,坐标图例设置
  3. 京东亿级商品搜索核心技术解密
  4. 你只需画草稿,剩下都交给AI!哈佛『机器学习』最新课程;Evernote收费又难用?试试这款开源工具;提示工程资源整合笔记;前沿论文 | ShowMeAI资讯日报
  5. 无法勾选远程连接到计算机,客户端无法连接到远程计算机错误的解决方法
  6. HashTable常用方法,不积硅步无以至千里
  7. 雷军狂拿99亿奖励刷新世界纪录,营收同比大增68.3%
  8. 贪心策略:请你设计最优的安排会议日程表,以使得举行的会议数最多
  9. 计算机网络基本概念汇总
  10. 华为发布新一代5G网络解决方案,加速5G生态发展