У меня есть объект A
, который сопоставляется с таблицей A
в БД
class A {
Integer id;
String field2,field2;field3 ,... fieldN;
//lots of other attribute
}
Теперь я хочу написать API DAO, который просто обновляет одно поле. Один из подходов заключается в том, что я могу сначала загрузить объект, затем изменить атрибут, который мне нужен, а затем использовать API слияния
//start transcation
A a = session.load(A.class, id);
A.setfieldP(newValue)
session.merge(A)
//commit transcation
Теперь, если я использую следующий код
//start transcation
A a = new A();
a.setId(id); //set a id by which object A exists in DB
A.setfieldP(newValue)
session.merge(A)
//commit transaction
Теперь второй подход ко всем полям, кроме id и fieldP установлено значение null
1) Есть ли другой подход?
2) Могу ли я использовать обновление вместо слияния?