Я много исследовал, но ни одно из решений, которые я пытался реализовать, не сработало... У меня есть класс ниже, который имеет много отношений @JoinColumn @ManyToOne:
public class Consultas implements Serializable {
@Basic(optional = false)
@Column(name = "status")
private boolean status;
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Basic(optional = false)
@Column(name = "idconsultas")
private Integer idconsultas;
@Basic(optional = false)
@Column(name = "data_consulta")
@Temporal(TemporalType.DATE)
private Date dataConsulta;
@Basic(optional = false)
@Column(name = "hora_consulta")
@Temporal(TemporalType.TIME)
private Date horaConsulta;
@JoinColumn(name = "idforma_pagamento", referencedColumnName = "idforma_pagamento")
@ManyToOne(optional = false)
private FormaPagamento idformaPagamento;
@JoinColumn(name = "idfuncionario", referencedColumnName = "idfuncionario")
@ManyToOne(optional = false)
private Funcionario idfuncionario;
@JoinColumn(name = "idpaciente", referencedColumnName = "idpaciente")
@ManyToOne(optional = false)
private Paciente idpaciente;
@JoinColumn(name = "idplano", referencedColumnName = "idplano")
@ManyToOne(optional = false)
private Plano idplano;
Когда я пытаюсь сопоставить экземпляр этого класса с кодом ниже, исходящим из интерфейса:
JSON.generateJSON(this.consultas, Consultas.class);
Метод генерации JSON:
public static String generateJSON(Object o, Class valueType)
{
if (valueType == Consultas.class) {
Consultas k = (Consultas) o;
mapper.writeValue(json, k);
}
Выходной файл также содержит КАЖДЫЙ атрибут из отношений @JoinColumn@ManyToOne (т. е. каждый атрибут из класса «Plano», «Paciente», «FormaPagamento» и «Funcionario»). Почему он отображает все атрибуты, а не только «id», содержащийся внутри класса Consultas?
Моя проблема в том, что я хочу написать в формате JSON просто атрибуты из класса Consultas, без каких-либо дополнительных атрибутов из его отношений.
Возможно, у него уже есть ответ, но я вообще не мог найти подходящего решения. заранее спасибо
o
и откуда оно берется? - person Alan Hay   schedule 07.11.2018