Je me demande, s'il y a une définition par JPA pour le comportement, si vous définissez la valeur égale à n'importe quelle propriété. Je n'ai trouvé aucun mot dans la spécification.Définit le comportement JPA pour définir à nouveau la même valeur?
J'ai testé avec TopLink Essentials et Hibernate, que se passe-t-il si je charge une entité à partir de la base de données et redéfinit la propriété avec la même valeur.
@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...
}
Réglage de la même valeur avec
entity.setValue(new String(myChars));
ne change pas la valeur de version. Puis-je attendre ce comportement pour chaque implémentation. Je ne pense pas ...
La question est de savoir si je peux compter sur cela à chaque implémentation, ou non. – marabol
La spécification JPA est notoirement vague sur plusieurs choses et, comme vous ne trouvez rien de spécifique à propos de cette action particulière, alors ne comptez sur rien. – DataNucleus