2010-05-25 9 views
3

Dans le projet, je suis dans Hibernate et Spring jdbctemplate sont mélangés. J'ai ajouté un verrouillage optimiste. Hibernate fonctionne très bien avec le versioning mais maintenant je dois transformer tout ce code jdbctemplate pour utiliser le versioning.jdbctemplate et verrouillage optimiste

Existe-t-il quelque chose comme LockingJdbcTemplate (comme SimpleJdbcTemplate)? Je pensais que je pourrais mettre en œuvre une méthode de mise à jour générique

 

update(String tableName, String columnsSql, String whereSql, Long version, Object... params) 
 

où je pouvais:

  • append version = Version + 1 à columnSql
  • append version =? à whereSql
  • ajouter le numéro de version pour corriger lieu dans params (param séparé est contraint de passer cette valeur)
  • Vérifiez exactement 1 point a été mis à jour et jeter StaleObjectStateException autrement

Y at-il bibliothèque qui envelopperait jdbctemplate et faire quelque chose de similaire pour moi? Vous ne voulez pas inventer quelque chose qui existe ... :)

Répondre

0

Non, vous devrez ajouter manuellement le comportement de verrouillage optimiste à vos requêtes de mise à jour.