2017-07-12 9 views
-1

私はSpring-data-restを使用してRESTful APIを作成しています。私にはエンティティがあります。ゲッター&セッターに今 エンティティゲッターはJSONに含めるには "s"で終わる必要があります

@Entity 
@Table(name = "pricingoptionsets") 
@JsonIdentityInfo(generator=ObjectIdGenerators.IntSequenceGenerator.class, property="@pricingOptionSetId") //To prevent fetch loops 
public class PricingOptionSet { 

//Region Properties 
@Id 
@GeneratedValue(strategy=GenerationType.AUTO) 
@Column(name="PricingOptionSetId", nullable=false, unique=true) 
private Long pricingOptionSetId; 

@ManyToOne 
@JoinColumn(name = "ProductId") 
private Product product; 

、私が持っている場合は、以下:

public Product getProducts() { 
     return product; 
    } 

私は応答のJSONに製品情報を受け取ります。しかし、ゲッターはある場合:

public Product getProduct() { 
     return product; 
    } 

そして、製品情報はもう含まれていません:S

任意のアイデアをどのように修正するには? Btw、私はCRUDRepositoryを拡張する単純なリポジトリを使用しています。

+0

セッターとjsonの外観はどうですか? { "pricingOptionSets":[{ "@pricingOptionSetId":1、 "名前": "AgentRate30"、 "製品":{ "@productid":4、 JSON { "_embedded" 厥 –

+0

"productId":1、 }、 これはセッターです: public void setProduct(Product product){ this.product = product; } – totalx

答えて

0

ここでgetProducts()はgetProducts()またはgetProduct()として定義する天気に関係なくメソッドです。

ここで発生する唯一の問題は、このメソッドを使用している実装もメソッド名に従って変更する必要があることです。

これを試してみてください。そうでない場合は、同じ問題のjsonレスポンスを投稿してください。問題の内容を把握できるようになりますが、メソッド名はレスポンスの変更に関係しません。

+0

あなたが言ったことを考えて、私は複数のゲッターを期待していると思いますので、私はスプリングコードを変更できません... eventhoの関係はそうではありません.. – totalx

+0

ゲッターとセッターをライターしているか、セッター? –

+0

im using auto – totalx

0

あなたはプロパティがgetProducts setProducts`すべきセッターとゲッターを持っているproductsので、あなたの必要性である必要があり、あなたのJSON

{ "_embedded" : { "pricingOptionSets" : [ { "@pricingOptionSetId" : 1, "name" 
: "AgentRate30", "products" : { "@productId" : 4, "productId" : 1, } 

から見ることができるように - もちろんフィールドも

と一致していることが望ましいです

また、それは次のようになり、この答えは、あなたのケースでhttps://stackoverflow.com/a/12583772/2310289

ごとに@jsonPropertyを使用することを検討することもでき

+0

しかし、そのプロパティはProductです。 – totalx

+0

アレックス、あなたは正しいですが、JSON(おそらく間違っている)は '製品 'としてそれを指定します –

+0

アレックス、私の更新された答えを見てください –

関連する問題