Определяет поведение JPA для повторной установки того же значения? - PullRequest
1 голос
/ 19 февраля 2010

Интересно, есть ли у JPA какое-либо определение поведения, если вы устанавливаете значение равно для какого-либо свойства. Я не нашел ни одного слова в спецификации.

Я тестировал с помощью TopLink Essentials и Hibernate, что произойдет, если я загружу объект из базы данных и снова установлю свойство с тем же значением.

@Entity
public class MyEntity {
  @Id
  @GeneratedValue(strategy = GenerationType.IDENTITY)
  private Integer id;

  @Column(length = 20)
  private String value;

  @Version
  private long version;

  // Define setter and getter...
}

Установка того же значения с помощью

entity.setValue(new String(myChars));

не изменяет значение версии.

Можно ли ожидать такого поведения для каждой реализации. Я так не думаю ...

1 Ответ

1 голос
/ 19 февраля 2010

Итак, вы устанавливаете значение на то же самое, чтобы оно не изменилось, так почему же что-то должно происходить?DataNucleus ничего не изменит ... так как ничего не изменилось.QED

...