struts2 action 同步锁 计策

struts2 action 同步锁 策略

1.action中的流程是这样的:

 

  • 1.查询数据库字段field值为a的记录是否存在
  • 2.若1存在,返回此记录,流程终止
  • 3.若1不存在,new 一个对象,并写入数据库,并返回此对象,流程终止

 

 

但是数据库必须保证数据库字段field的值在数据库中不能有重复。

 

 

2 如果不做任何处理,当并发量大的时候,由于查询和写入之间存在时间差,所以会出现数据库字段field的值在数据库中有重复,这就实现不了需求

 

3,如果在action中加同步锁,如何加才能达到效率和需求的平衡,不能锁定整个action吧?