En effet, voici ce qui clochait dans mon fichier de configuration :
<property name="hbm2ddl.auto">create</property>
Je savais que c'était un truc bidon, merci.
PS : n'y aurait il pas un moyen plus simple de procéder pour le CRUD avec hibernate que ça ?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
| if(request.getParameter("action") != null && request.getParameter("id") != null)
{
String action = request.getParameter("action");
int id = Integer.parseInt(request.getParameter("id"));
System.out.println("ID : " + id);
try
{
if(action.equals("delete"))
{
session.createQuery("delete from Arrete where id = :id").setParameter("id", id).executeUpdate();
}
tx = session.beginTransaction();
tx.commit();
}
catch(Exception e)
{
System.out.println(e.getMessage());
tx.rollback();
}
finally
{
response.sendRedirect("ArreteServlet");
}
}
if(request.getParameter("titre") != null && request.getParameter("date") != null)
{
if(request.getParameter("titre").length() > 2 && request.getParameter("titre").length() < 15 && request.getParameter("date").length() == 10)
{
Arrete ar = new Arrete();
ar.setTitre(request.getParameter("titre"));
ar.setDate(request.getParameter("date"));
if(request.getParameter("description") != null && request.getParameter("description").length() > 2 && request.getParameter("description").length() < 50)
{
ar.setDecription(request.getParameter("description"));
}
session.save(ar);
try
{
tx = session.beginTransaction();
tx.commit();
}
catch(Exception e)
{
System.out.println(e.getMessage());
tx.rollback();
}
finally
{
response.sendRedirect("ArreteServlet");
}
}
} |
En instanciant un POJO, puis lui assignant via le setter l'id récupéré en paramètre, est ce que supprimer ensuite cet objet supprime l'enregistrement avec le même id dans la base ? Ou faut il obligatoirement exécuter une requête ? (hql ou sql)
J'essaie de suivre la doc chez jboss mais elle n'est pas très complète au niveau des exemples qui sont limités à chaque fois aux requêtes select.
Partager