Spring synchronized method NOT SYNCHRONIZED

前端 未结 2 707
甜味超标
甜味超标 2020-12-17 04:58

Environment:

  • apache tomcat 7

  • java 7

  • oracle 11g

  • eclipse

  • apache jmeter 2.1

2条回答
  •  無奈伤痛
    2020-12-17 05:34

    The problem is that @Transactional begins the session before entering the synchronized method and commits the changes after the method is finished, so changes to the database will not be applied inside the synchronized method.

    Please check Spring @Transactional section 10.5.1.

    You can try adding a synchronized block when calling this method instead of making it synchronized:

    synchronized(this){
       generateSequenseNumber();
    }
    

提交回复
热议问题