我使用JavaFX + Hibernate創建桌面應用程序,但是在用戶使用他/她的用戶名登錄後,我希望用戶名是分配給一個類似於PHP $_SESSION
變量的全局變量,該變量可以從任何地方訪問。
這是我的HibernateUtil.java類
package models;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;
public class HibernateUtil {
private static final SessionFactory sessionFactory = buildSessionFactory();
public static SessionFactory buildSessionFactory(){
try{
// Create the SessionFactory from hibernate.cfg.xml
System.out.println("creating SessionFactory using HibernateUtil.java");
SessionFactory f = new Configuration().configure().buildSessionFactory();
System.out.println("session created successfully");
return f;
} catch (Throwable ex){
// Make sure you log the exception, as it might be swallowed
System.err.println("Initial SessionFactory creation failed." + ex);
throw new ExceptionInInitializerError(ex);
}
}
public static SessionFactory getSessionFactory() {
return sessionFactory;
}
}
這是不好的做法,並可能不應該在這裏建議J2EE Web應用程序,即使你提供警告。 –
我把這個答案當成是,因爲它是在Java中用PHP中的'$ _SESSION'的替代方法,但是我將使用依賴注入或者使用私有變量創建我自己的方法。 –