Java, Hibernate 및 SQL Server로 응용 프로그램을 만들고 있습니다. 세션 및 세션 팩토리에 대한 객체 선언과 관련하여 의심의 여지가 있습니다. 처음에는 응용 프로그램을 만들 때 필요할 때마다 세션 및 세션 팩토리를 만드는 데 사용되었습니다. 하지만 이제는 세션과 팩토리를 만들 때 응용 프로그램이 느려져서 로그인 페이지에 필요한 세션과 세션 팩토리를 모두 만들고 공용 정적으로 수정자를 지정했습니다.최대 절전 모드 세션 및 세션 팩터
public static Session session = null;
public static SessionFactory sessionfactory = new org.hibernate.cfg.Configuration().configure().buildSessionFactory();
public static Session session1 = null;
public static SessionFactory sessionfactory1 = new org.hibernate.cfg.Configuration().configure().buildSessionFactory();
public static Session session2 = null;
public static SessionFactory sessionfactory2 = new org.hibernate.cfg.Configuration().configure().buildSessionFactory();
는 지금은 세션과 세션 공장 내가 Login.session (loginpagefilename.sessionobject)로 세션을 호출하는 데 사용을해야 할 때마다.
Login.session = Login.sessionfactory.openSession();
Login.session.beginTransaction();
String hql = "FROM TEST_SERVICES_POJO lts WHERE NOT EXISTS (SELECT lsm.inttestid FROM PARAMETER_MAPPING_POJO lsm WHERE lsm.status = 1 and lsm.inttestid=lts.inttestid)";
org.hibernate.Query query = Login.session.createQuery(hql);
DefaultTableModel model = (DefaultTableModel) testtable.getModel();
model.setRowCount(0);
for (Iterator it = query.iterate(); it.hasNext();) {
TEST_SERVICES_POJO slp = (TEST_SERVICES_POJO) it.next();
Object[] row = {slp.getTestname()};
model.addRow(row);
}
Login.session.getTransaction().commit();
여기서 처음에는 최대 절전 모드의 롤백 기능을 사용하지 않았습니다. 하지만 이제 최대 절전 모드의 롤백 기능을 구현하고 싶습니다. 따라서 어떤 방법을 쓰면 성능이 향상 될지 알 수 있습니다. 친절하게 나에게 길을 제안 해주세요. 미리 감사드립니다.