springboot try+catch 无法保证事务一致性 如何解决

方法上面加    @Transactional 注解    catch 加  TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
 @Override 
    @Transactional
    public Object qypay(HttpServletRequest request, String cardno, double total, String mchid, String openid, String canteenid, CardJsonVO cardJsonVO, CanteenEntity canteen) {
   
        } catch (Exception e) {
            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
            logger.info("微信签名异常,请稍后再试。"+e.getMessage());
            return "微信签名异常,请稍后再试。";
        }finally {
            // 释放锁
            if (res) {
                mylock.unlock();
            }
        }
    }

< END >

程序员NBA

一个有故事的程序员

或者加我微信1414200300一起讨论java技术,有什么问题群里人也可以帮你一起解决

你可能感兴趣的:(springboot)