【发布时间】:2017-05-22 17:31:23
【问题描述】:
我目前使用 Spring Boot 和 JPA,这是我的 DAO 类:
public interface UserDao extends JpaRepository<User,String> {
@Query("select x from User x")
public List<User> findAllActivit();
}
从这个 Dao 中,如果我访问探索这个 JpaRepository 的控制器,json 数据应该如下所示:
{
"id" : "56e74ac5-d40e-11e6-846c-308d99bdc4d0",
"user_name" : "alexander",
"user_password" : "e46fc836cca3acec03944314d1457c2ae6c68ef3",
"user_real_name" : "alexander darmawan",
"user_cuti_amount" : 9,
"user_position" : "head of business analyst",
"user_join" : "2012-09-10",
"activityList" : [ {
"id" : "185aeb3b-d52b-11e6-bd89-308d99bdc4d0",
"activity_date" : "2017-01-18",
"activity_name" : "Reject Julia Eka Ananda's cuti"
}, {
"id" : "a22af0d9-d529-11e6-bd89-308d99bdc4d0",
"activity_date" : "2017-01-02",
"activity_name" : "Accept Danu Nugraha's cuti"
} ]
}
有谁知道使上面的 json 数据变成这样的查询:
{
"idfromuser" : "56e74ac5-d40e-11e6-846c-308d99bdc4d0",
"idactivity" : "185aeb3b-d52b-11e6-bd89-308d99bdc4d0",
"activity_date" : "2017-01-18",
"activity_name" : "Reject Julia Eka Ananda's cuti"
},{
"idfromuser" : "56e74ac5-d40e-11e6-846c-308d99bdc4d0",
"idactivity" : "a22af0d9-d529-11e6-bd89-308d99bdc4d0",
"activity_date" : "2017-01-02",
"activity_name" : "Accept Danu Nugraha's cuti"
}
每一个帮助对我来说都是宝贵的
【问题讨论】:
-
JPA 和 Spring 数据存储库与 JSON 没有任何关系。如果要更改 JSON,则将其他对象序列化为 JSON,或者更改这些对象的 JSON 映射。
-
我还是新手,所以我尝试将查询更改为这样的 @Query("select activityList from User x") 并且结果只是从 activityList 公开列表。那我想我只需要用身份证加入它吗?因为有2个id,可以用别名吗?
标签: mysql json hibernate spring-boot spring-data-jpa