繁体   English   中英

不要使用 spring jpa 从 db 获取信息

[英]Don't get info from db with spring jpa

我正在尝试从 Oracle 获取数据。

我在 class “Home”中有@OneToMany关系

@OneToMany(cascade = CascadeType.ALL)
@JoinColumn(name = "obj_id", referencedColumnName = "obj_id", insertable = false, updatable = false)
private List<Room> roomCollection;

我有这个存储库:

    @Repository
    public interface FkvaRepository extends JpaRepository<ROOM, Long> {

    @Query(value = "SELECT * FROM ROOM WHERE OBJ_ID=?1", nativeQuery = true)
    List<ROOM> findAllByObjectId(Long id);
}

我有一个 controller ,它通过家庭 ID 获取所有房间:

@RequestMapping(value = "/room/{id}",
            method = RequestMethod.GET,
            produces = { MediaType.APPLICATION_JSON_VALUE })
    public List<Room> getRoom(@PathVariable(name = "id") Long id) {

        List<Room> roomCollection = roomRepository.findAllByObjectId(id);
        return roomCollection;
    }

但是当我尝试

http://localhost:9000/room/466

我在结果中有正确的房间对象计数,但它们都是第一个的重复。

我该如何解决?

SELECT * FROM ROOM WHERE OBJ_ID=?1 是这里的问题。

使用以下

List<ROOM> findAllByRoomId(Long id);

其中 Id 是房间的实体主 ID。 删除本机查询代码。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM