我使用JAX-RS,我想从我的资源中获取一个JSON对象。
例如,我有下一个代码:
图书课程:
@XmlRootElement
public class Book {
private int id;
private String name;
}
和人类:
@XmlRootElement
private class Person {
private int id;
@XmlElement(name="full_name")
private String fullName;
@XmlElement(name="book_id")
private Book book;
}
我想得到这个:
{
"id": 1,
"full_name": "Gustavo Pacheco",
"book_id": 8
}
不要这样:
{
"id": 1,
"full_name": "Gustavo Pacheco",
"book": {
"id": 8,
"name": "Cien Años De Soledad"
}
}
如何从book类中获取id属性以获得更简单的JSON?
答案 0 :(得分:0)
对于这些情况,最好的办法是让DTO独立的类和与数据库模型对应的实体独立。
例如:
package com.github.ryctabo.example.entity;
/* Entity class */
@Entity
public class Person implements Serializable {}
package com.github.ryctabo.example.dto;
/* Data Transfer Object class */
@XmlRootElement
public class PersonData {}
这确保了数据库模型的完整性,并且您可以独立地了解如何在不同的类中显示数据。