我有一个classe通知,具有类型为User的属性接收器,如下所示:
@ManyToOne(cascade = CascadeType.MERGE)
@JoinColumn(name = "sender", referencedColumnName = "id")
@JsonIgnore
private User sender;
并且用户具有属性床:
@ManyToOne
(fetch = FetchType.LAZY)
@JoinColumn(nullable = false, name = "idBed")
@JsonIgnore
private Bed idBed;
床有属性室:
@ManyToOne
(fetch = FetchType.LAZY)
@JoinColumn(nullable = false, name = "idroom")
@JsonIgnore
private Room room;
房间有属性:
@ManyToOne
(fetch = FetchType.LAZY)
@JoinColumn(nullable = false, name = "idCarePost")
@JsonIgnore
private CarePost carePost;
请阅读所有这些数据,请问我该怎么做?
您可以使用JPARepository。它将提供开箱即用的CRUD功能,您不需要编写任何查询。例如,如果在服务类中使用save(object(方法,它将保存对象,而无需编写插入查询。
如果您想在存储库中编写自定义查询,可以使用@query("编写自定义查询",nativeQuery=true(注释进行编写。
@Repository
public interface BlogRepository extends JpaRepository<Post, Integer> {
@Query(value = "select * from posts p where p.author like %:value%", nativeQuery = true)
List<Post> findByAuthor(String value);
}
上面的例子是使用JPARepository编写本机查询的一种方法。
您有如下的jpa存储库方法。
按以下某些属性查找用户。
List<User> findByName();
按床查找用户,如下所示。
List<User> findByBed( bed object);
使用continue对象查找用户。
List<User> findByBedRoomCarePostName(string
carePostName);