文档章节

spring mvc 异常处理手动回滚 SQL log不回滚

微笑出品
 微笑出品
发布于 2017/02/16 19:37
字数 125
阅读 11
收藏 0
/**
     * 购买股权
     *
     * @param map
     * @return
     */
    @Override
    @Transactional
    public Map<String, String> buyStock(Map<String, Long> map) {
        Assert.notNull(map.get("memberId"));
        Assert.notNull(map.get("id"));
        Map<String, String> requestBody = null;
        try {
//        查询股权价格
            StockPrice stockPrice = stockPriceService.queryStockPriceById(map.get("id"));
            if (stockPrice != null) {
//        返回融宝请求体
                requestBody = payLogService.getPostBody(map.get("memberId").toString(), stockPrice.getPrice());
                if (requestBody != null) {
//        添加一条订单信息
                    stockOrderService.addStrockOrder(new StockOrder(map.get("memberId"), requestBody.get("order_no"),
                            map.get("id"), stockPrice.getStockNum(), stockPrice.getPrice(), Constant.ORDER_BUY, Constant.ORDER_UNDONE));
                }
            }
        } catch (Exception e) {
            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
            requestBody = null;
            //exception_log 表存储引擎不能为innodb
            exceptionLogService.addExceptionLog(new ExceptionLog("购买股权失败", e.getMessage()));
        }
        return requestBody;
    }

© 著作权归作者所有

共有 人打赏支持
微笑出品
粉丝 1
博文 56
码字总数 5691
作品 0
大连
私信 提问
关于Spring 声明式事务处理时,throws exception不回滚的问题

文章转自:http://cn-done.iteye.com/blog/775519 前一段时间,项目代码评审,发现有TX不使用Spring的事务处理,而直接封装方法,手动进行数据的回滚,得悉原因是:抛出异常以后事务不起作 ...

巴顿
2013/11/28
0
0
spring 事务加try catch就不回滚 @Transactional加上(rollbackFor = { Exception.class }),下面catch里面还需要手动回滚或抛运行异常了吗?

spring 事务加try catch就不回滚, @Transactional加上(rollbackFor = { Exception.class }) ,下面catch里面还需要手动回滚或抛运行异常了吗?...

Jordan裔
04/17
0
0
运用@Transactional,自己抛出异常时不会回滚的原因,经验之谈

查看spring API可知 http://www.kuqin.com/spring2.0doc/index.html 对EJB来说,默认的行为是EJB容器在遇到系统异常 (通常指运行时异常)时自动回滚当前事务。EJB CMT遇到应用异常 (例如,...

孙斐
2011/12/04
0
0
Spring事务——Spring 2.X的事务配置策略

Spring 2.X的事务配置策略 虽然前面介绍的TransactionProxyFactoryBean配置策略简单易懂,但配置起来极为麻烦:每个目标Bean都需要配置一个TransactionProxyFactoryBean代理,这种方式将导致...

摆渡者
2014/03/27
0
0
Spring事务异常回滚,捕获异常不抛出就不会回滚

最近遇到了事务不回滚的情况,我还考虑说JPA的事务有bug? 我想多了....... 为了打印清楚日志,很多方法我都加tyr catch,在catch中打印日志。但是这边情况来了,当这个方法异常时候 日志是打...

binhu
2015/11/23
218
0

没有更多内容

加载失败,请刷新页面

加载更多

小白创建一个spring boot项目

进入 https://start.spring.io/

lilugirl
21分钟前
0
0
Alibaba Java诊断利器Arthas实践--使用redefine排查应用奇怪的日志来源

背景 随着应用越来越复杂,依赖越来越多,日志系统越来越混乱,有时会出现一些奇怪的日志,比如: [] [] [] No credential found 那么怎样排查这些奇怪的日志从哪里打印出来的呢?因为搞不清...

hengyunabc
今天
1
0
home hosts

home hosts lwk@qwfys:~$ cat /etc/hosts127.0.0.1 localhost127.0.1.1 qwfys192.168.56.101vm600.qwfys.com39.108.212.91alpha1.ppy.com39.108.117.122alpha2.p......

qwfys
今天
1
0
大数据教程(6.1)hadoop生态圈介绍及就业前景

1. HADOOP背景介绍 1.1、什么是HADOOP 1.HADOOP是apache旗下的一套开源软件平台 2.HADOOP提供的功能:利用服务器集群,根据用户的自定义业务逻辑,对海量数据进行分布式处理 3.HADOOP的核心组...

em_aaron
今天
4
0
hadoop垃圾回收站

在生产生,hdfs回收站必须是开启的,一般设置为7天。 fs.trash.interval 为垃圾回收站保留时间,如果为0则禁用回收站功能。 fs.trash.checkpoint.interval 回收站检查点时间,一般设置为小于...

hnairdb
昨天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部