6

これは簡単なことです。しかし、私はこれまで答えを見つけることができませんでした。明らかな何かが欠けているか、明らかな何かが欠けています...

Person と言うクラスがあります。「id」、「name」、「reputation」の 3 つのフィールドがあります。「名前」の更新は喜んで受け付けますが、「評判」の更新は受け付けません。Spring Data が DB から取得するときに「レピュテーション」の値をフェッチするようにしたいのですが、Bean を保存するときは無視します。

@Transient アノテーションはありますが、Spring はフィールドを完全に無視し、まったく入力しません。理想的には、@ReadOnly アノテーションのようなものを探しています。

詳細

  • 私は Neo4j に Spring Data を使用していますが、これはどの Spring Data フレーバーにも当てはまると思います。
  • これは、Jersey/Jackson ベースの RESTful サービスのバックエンドです。** GET 要求を満たすときに、「評判」の値を提供したいと考えています。しかし、PUT の更新を受け取ったとき、受け取りたくありません。** これまでのところ、Jackson の機能を使用できました。しかし、最初に既存の Person オブジェクトを取得しなくても DB を更新できるようにしたいと考えています。
  • これを機能させるために私が理解できる唯一の方法は、「評判」フィールドを持つクラスと持たないクラスの 2 つのクラスを定義することです。しかし、これは本当に厄介なようです。もっと簡単なものはありませんか?
4

2 に答える 2

2

セッターなしで一時的なプロパティを使用できます。その一時的なプロパティは、保護される db プロパティ値を返します。

于 2013-03-30T02:55:12.213 に答える