[Hibernate] Fonctionnement et questions.
Bonjour,
Je suis en train d'apprendre le développement web avec Java EE et Hibernate.
J'ai recherché plusieurs façon de gérer les transactions avec la base de données de manière optimale.
J'ai pensé tout d abord à ouvrir une Session pour chaque requête Http que je fais et la fermer à la fin. Un peu comme cet article le décrit:
http://www.jroller.com/HazemBlog/ent...en_session_per
Le problème est que ce type d’implémentation n'est pas très bon pour les attaques de type DDOS apparemment.
Vous faites comment vous, des
Code:
1 2 3 4
|
Session session = HibernateUtil.getSession().getCurrentSession();
session.beginTransaction();
session.getTransaction().commit(); |
Dès que vous avez besoins de faire une requêtes sur la BDD ?
Ps: J'utilise la class là pour mes sessions:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
public class HibernateUtil
{
private static SessionFactory sessionFactory;
private static ServiceRegistry serviceRegistry;
private static SessionFactory configureSessionFactory() throws HibernateException
{
Configuration configuration = new Configuration();
configuration.configure();
serviceRegistry = new ServiceRegistryBuilder().applySettings(configuration.getProperties()).buildServiceRegistry();
sessionFactory = configuration.buildSessionFactory(serviceRegistry);
return sessionFactory;
}
public static SessionFactory getSession()
{
if (sessionFactory == null)
sessionFactory = configureSessionFactory();
return sessionFactory;
}
} |