私はSpringデータHibernateなどでRESTアプリケーションを開発しています。私はすべての基本的なアクションをセットアップしましたが、今は何かしたいです特定。 データベース内の別のテーブルに外部キーを持つ項目のリストを取得すると、hibernateはその外部キーの行全体を返します。たとえば:spring-data/hibernate/restでオブジェクトが返される方法を変更する方法
[ {
"id":1,
"school": {"id":1, "name":"De regenboog", password":"800e30e9bb3b82ce955a127650d835d0", "street":"Plantaanstraat", "number":"2", "zipCode":"1234AS", "city":"Amsterdam", "contactName":"Arends", "contactPhoneNumber":"06-45648466", "contactEmail":"[email protected]"},
"name":"Groep",
"dateCreated":"2012-04-25"
}
]
(これらは方法によって、すべて架空のデータがある)
今の事である学校は、その全体が返されることしたくないです。私はschool_idを表示したいだけです。 私はウェブを検索し、 "サービスレベルのマッピング"についていくつかのことを読んだが、例は見つけられなかった。 >サービス - - > DAO - >リポジトリ
セットアップ私は
コントローラで自分のアプリケーションを構築しました。
私があなたを助けてくれることを願っています! (もっと多くのソースコードが必要な場合はお知らせください)。私は追加したい事は、私のMySQLのテーブルはこのようになっていることである
EDIT
たくさん
ありがとう:
ID | SCHOOL_ID | NAME | DATE_CREATED
それでは、私は戻ってきたいと思いする代わりに(この状況で)対象校の単なるschool_idある
EDIT2 私は@Dandy答えに働いていると私は、表示したいです私が今持っているコード:
@ManyToOne
@JoinColumn(name = "SCHOOL_ID")
private School school;
@Column(name = "SCHOOL_ID", insertable = false, updatable = false)
private long schoolId;
public long getSchoolId() {
return schoolId;
}
public void setSchoolId(long schoolId) {
this.schoolId = schoolId;
}
public School getSchool() {
return school;
}
public void setSchool(School school) {
this.school = school;
}
私はダニーのようにコードを変更すると、私はほんの少しの結果が得られます。 これは私が今、クエリを実行する場合、私が得るものです:
[ {
"id":1,
"school": {"id":1, "name":"De regenboog", password":"800e30e9bb3b82ce955a127650d835d0", "street":"Plantaanstraat", "number":"2", "zipCode":"1234AS", "city":"Amsterdam", "contactName":"Arends", "contactPhoneNumber":"06-45648466", "contactEmail":"[email protected]"},
"schoolId": 1
"name":"Groep",
"dateCreated":"2012-04-25"
}
]
事は、私は、この特定のクエリに対してschool
を無効にしたいということです。それは可能ですか?
この問題は(私が思うのですが)、私は彼らが見せたいと思う状況があるということです。それらを管理するには? (私が学校に照会するときのように) –