- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我收集了一些关于我的系统的统计数据,比方说,使用我的系统的人数以及他们这一天花费的总时间。我的统计实体如下所示:
class Stats {
Date date;
Long numUsers;
Long totalTime;
}
白天我需要更新这些统计信息基于以前的值,例如:
stats.numUsers += 1;
stats.totalTime += timeSpentByLastUser;
当然,如果这是今天的第一次,我需要初始化这些数据:
stats.numUsers = 1;
stats.totalTime = timSpentByFirstUserForToday;
现在我想将它全部移动到数据库。也就是说,使 Stats
成为一个实体,并根据先前的值进行原子插入/更新。那么我该怎么做呢?我正在使用 JPA,因此适合其模型的任何解决方案都适用。
请注意,JPA 具有用于插入或更新的机制 - EntityManager.merge()
- 但它没有考虑实体的先前状态,这在这里是必不可少的。
最佳答案
是的,您通过强制用于持久性的事务锁定机制来维护原子性。
示例
Employee employee = entityManager.find(Employee.class, id);
employee.getAddress().setCity("Ottawa");
entityManager.lock(employee, LockModeType.WRITE);
引用下面的链接,它提供了 JPA 2.0 中可用的锁定模式
关于java - 根据先前的值以原子方式插入或更新实体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15225942/
我的应用将 SceneKit 内容的“页面”与图像和文本交替。当我从图像页面前进到新的 SceneKit 页面时,前一个 SceneKit 页面中的内容会短暂显示,然后被新内容替换。时髦。 我只使用一
我正在尝试处理(在 C# 中)包含一些数字数据的大型数据文件。给定一个整数数组,如何对其进行拆分/分组,以便如果下一个 n(两个或更多)是负数,则前一个 n 元素被分组。例如,在下面的数组中,应该使用
刚接触promises,研究过。所以我的代码和我的理解: sql.connect(config).then(function(connection) { return connection.req
目前我在 if (roobaf) block 中有一些代码,这取决于 foo 和 bar 是否为假。我可以在 block 内再次检查这些条件,但感觉像是不必要的代码重复。 if (foo) {
我是一名优秀的程序员,十分优秀!