0

このコードを考えると、ここに私の質問があります:

studentOutcomeService.getAll()
                     .get(getStudentOutcomeByID(
                            selectedStudentOutcome.getId().intValue()))
                     .setDescription(description);

studentOutcomeService.getAll()
                     .get(getStudentOutcomeByID(
                            selectedStudentOutcome.getId().intValue()))
                     .setSequenceNumber(Integer.valueOf(sequenceNumber));

studentOutcomeService.getAll()
                     .get(getStudentOutcomeByID(
                            selectedStudentOutcome.getId().intValue()))
                     .setShortName(shortName);

studentOutcomeService.getAll()
                     .get(getStudentOutcomeByID(
                            selectedStudentOutcome.getId().intValue()))
                     .setIdentifier(identifier);

フィールドを常に更新するためにデータベースに 4 回クエリを実行しているという事実に不満があります。

私は StudentOutcome オブジェクトを作成し、そこにあるものを保存し、作成したオブジェクトを変更しましたが、=、演算子を使用して、データベースで見つかったものと同じに設定されているにもかかわらず、新しいオブジェクトが作成されたようです。新しい StudentOutcome オブジェクトに加えられた変更は、最初に設定されたものには適用されません。

これをより効率的にするにはどうすればよいですか?私はもっ​​と良い方法があることを知っています。

4

1 に答える 1