1

次のようなJPAエンティティがあります。

@Entity
@DynamicUpdate
public class Message {

    @NotNull
    @ManyToOne(fetch = FetchType.LAZY)
    private Member sender;

    @NotNull
    @ManyToOne(fetch = FetchType.LAZY)
    private Member recipient;

    @NotNull
    @Temporal(TemporalType.TIMESTAMP)
    @DateTimeFormat(pattern = "dd/MM/yyyy HH:mm:ss")
    private Date sendDate;

    private boolean messageRead;

    @NotNull
    @Size(min = 5, max = 500)
    @Column(length = 500)
    private String message;

    //Getter/Setters omitted

}

Spring MVC コントローラーから、次のように JSON 配列/コレクションをブラウザーに返します。

List<Message>

私が抱えている問題は、Message の各インスタンスにMember senderプロパティとMember recipientプロパティがあり、Member クラス自体にコレクションなどの多くの関係があることです。

ブラウザーは、オブジェクト/関係の巨大な JSon グラフで詰まってしまいます。

私がやりたいのは、JSon のsenderandrecipientプロパティを無視することだけです (これらのプロパティはとにかく Java レイヤーで設定されます)。それは可能ですか?

それが不可能な場合、上記の問題を回避するために推奨される方法は何ですか?

4

1 に答える 1

3

@JsonIgnorePropertiesでクラスにアノテーションを付けてみましたか?

@JsonIgnoreProperties({"sender", "recipient"})
public class Message {
于 2013-03-19T15:43:13.560 に答える