0

有人知道如何从表中修改最后一行吗?例如:

我有一个带有“汽车”实体的服务生成器,该实体有一个名为“LastModified”的列。我想要一些能够获得“汽车”(最后一辆改装的购物车)的东西。

我不知道使用 where 子句创建查找器是否是一个好习惯。谢谢!

4

1 回答 1

1

首先,服务生成器实体默认有一个名为“modifiedDate”的列。只是想确保您知道这一点,因此您不会创建冗余列:“LastModified”和“modifiedDate”。

其次,您可以使用自定义 SQL 查询或动态查询来获取具有最近修改日期的 Car。两种方法都记录在案:

就个人而言,我会首先尝试动态查询方法(利用休眠的条件 API)。我认为它稍微简单一些。

在您的 finder 方法中,您可以执行以下操作:

    Order order = OrderFactoryUtil.desc("modifiedDate");

    DynamicQuery carQuery = DynamicQueryFactoryUtil.forClass(Car.class).addOrder(order).setLimit(0, 1);

    List<Car> cars = CarLocalServiceUtil.dynamicQuery(carQuery);

setLimit(0, 1) 将查询结果限制为仅第一辆车。

于 2018-04-26T14:56:23.510 回答