私は、Spring DataのMongoTemplateに、save、upsert、insert、updateFirstなどのさまざまな種類の「オブジェクトの保存」操作が多数存在することに気付きました。なぜSpring DataのMongoRepositoryが制限されていますか?
一方、Spring DataのMongoRepositoryインターフェースには、「保存」という1つの永続性メソッドがあります。さて、明らかに、私がcreate/update/upsert機能を望むなら、かなり簡単に実装することができます。 "保存"を呼び出す前に取得して、エンティティが存在するかどうかを確認してください。しかし、MongoTemplateにはこのような多様なオプションがあります(私は保存とアップサーットの違いを理解できません)が、Spring Dataのリポジトリは非常に限られています。
作成/更新のセマンティクスを使用する場合、またはget + null check + repository.saveとaとの違いは、Spring Data MongoRepositoriesをそのメソッドをカスタマイズせずに使用するのは無駄だと思いますか? mongoTemplate.insertも気にするのに無関係ですか?
はい、私はそれを前にしています。しかし、これは、Spring Dataのリポジトリの主なポイントが定型コードIMOを減らすことである場合に、更新と作成メソッドを得るために書く定型コードです。 – CorayThan