spring - 使用标准 api 获取最后一条记录
问题描述
每个人。我的任务是从我的数据库中获取最后添加的记录。由于数据库中最后一条记录的id最大,所以我写了一个这样的方法,但它总是返回null给我。
@Override
public Address getLast() {
CriteriaBuilder criteriaBuilder = entityManager.getCriteriaBuilder();
CriteriaQuery<Address> criteriaQuery = criteriaBuilder.createQuery(Address.class);
Root<Address> root = criteriaQuery.from(Address.class);
criteriaQuery
.select(root)
.orderBy(criteriaBuilder.desc(root.get(Address_.id)));
TypedQuery<Address> findAllSizes = entityManager.createQuery(criteriaQuery);
return findAllSizes.getResultStream().findFirst().orElse(null);
}
解决方案
一切正常。我需要添加的只是在调用指定方法的方法上添加 @Transactional
推荐阅读
- reactjs - 微软 OCR-Form-Tools 项目 v2.0-GA 版本中的 yarn start 失败
- python-3.x - 我收到“AttributeError:‘str’对象没有属性
- python - ZeroMQ RADIO 套接字发送没有设置组的选项
- python - Discord.py 在不使用消息功能的情况下返回用户名?
- php - 使用PHP从mysql中动态选择一个表
- javascript - Svg 火焰多边形动画
- javascript - 在javascript中读取本地json文件作为要在javascript文件中使用的对象
- php - 在 WooCommerce 自定义订单历史记录中添加永久链接到产品标题
- regex - 从bash中的行中提取列的最佳方法?
- ios - 如何在 firebase 中创建聚合事件(使用 SDK 自动触发的事件)?