Spring Data本机mySQL查询不返回ID

时间:2019-11-15 15:19:08

标签: spring-data-jpa

我正在尝试在JpaRepository实现中实现一个方法,该方法将部分克隆数据库记录。我希望避免通过实体管理器创建自定义存储库和构建查询。另外,我希望该方法直接在JpaRepository中实现 将通过REST端点公开。这是我的实现:

@RepositoryRestResource(collectionResourceRel = "inventory", path = "inventory")
public interface InventoryRepository extends JpaRepository<Inventory, Integer> {

    @Transactional
    @Modifying
    @Query(nativeQuery = true, name = "Inventory.cloneItem", value = "INSERT INTO Inventory (name, param, param1)  SELECT name, param, param1 from Inventory WHERE Inventory.id = :id")
    @RestResource(exported = true, path = "cloneItem", rel = "cloneItem")
    Integer cloneItem(@Param("id") Integer id);
}

我假设cloneItem()将返回创建的实体的ID,但它始终返回1。是否可以修改接口方法以使其返回创建的实体的ID或实体本身?

另一个问题是,即使使用@RestResource注释了该方法,它似乎也没有公开为REST端点

0 个答案:

没有答案