为了账号安全,请及时绑定邮箱和手机立即绑定

java 线程安全问题

java 线程安全问题

忽然笑 2018-10-03 17:26:10
  String hql = "from ReviewStepInfo where pjtfsn=? and code=?";        ReviewStepInfo saveObject = (ReviewStepInfo) reviewStepInfoDAO                .findUnique(hql, pjtfsn, "XXPS");        if (saveObject == null) {            saveObject = new ReviewStepInfo();            saveObject.setId(StringUtils.uuid());            saveObject.setPjtfsn(pjtfsn);            saveObject.setStatus(0);            saveObject.setCode("XXPS");            saveObject.setCreateTime(new Date());            saveObject.setNotConsistentCount(list.size());            saveObject.setReivewCount(0);            reviewStepInfoDAO.saveOrUpdate(saveObject);        }    根据表的两个字段 判断数据库是否有这条数据,如果没有就创建,但是,不知道什么原因 在数据库出现三条一致的数据。 每隔三秒由ajax发出请求执行这个方法。我猜想的原因是由于浏览器的原因 ajax阻塞了?同时发出三条请求让后台处理才导致的?遇到这种情况只能加锁吗?
查看完整描述

2 回答

?
翻阅古今

TA贡献1780条经验 获得超5个赞

加锁比较简单,但是性能不高。
建议使用数据库的事务,隔离读操作。

查看完整回答
反对 回复 2018-10-14
  • 2 回答
  • 0 关注
  • 871 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信