Java 在单例中使用对象配置好吗?
我知道这似乎是亵渎神明,它(可能)打破了单身的天性,所以,请不要伤害我!我只是问问 假设下面的例子只是一个随机情况(实际上是我的情况,巧合?我不这么认为…),我的问题是一般性的 我有一个这样的单身班:Java 在单例中使用对象配置好吗?,java,hibernate,singleton,Java,Hibernate,Singleton,我知道这似乎是亵渎神明,它(可能)打破了单身的天性,所以,请不要伤害我!我只是问问 假设下面的例子只是一个随机情况(实际上是我的情况,巧合?我不这么认为…),我的问题是一般性的 我有一个这样的单身班: public class SingleSessionFactory { private SingleSessionFactory() { } private static class SingleSessionHelper { private
public class SingleSessionFactory {
private SingleSessionFactory() {
}
private static class SingleSessionHelper {
private static final SessionFactory SESSION_FACTORY = getSingleSession();
private static SessionFactory getSingleSession() {
if (SESSION_FACTORY == null) {
Configuration hConf = new Configuration();
//hibernate configuration I wish to set by an object or sth dynamic not hard-coded!
try {
return hConf.buildSessionFactory();
} catch (ExceptionInInitializerError ex) {
System.out.println(ex.getMessage());
}
}
return SESSION_FACTORY;
}
}
public static SessionFactory getInstance() {
return SingleSessionHelper.SESSION_FACTORY;
}
}
我以前调用setProperty(..)
和addAnnotatedClass(..)硬编码,而不是行//hibernate config…bla bla bla&bla…
我想知道在我的getSingleSession()
中使用自定义属性对象(按实例:MyHibernateConfiguration
类)是否合适,它位于存储Hibernate属性(如“Hibernate.dial”、“org.Hibernate.dial.PostgreSQLdial”
)和注释类的某些属性中。注射或通过或…无论什么。。。通过这种方式,“所有这些东西”都可以动态传递,这将非常酷,不是吗
无论如何:
问:可能吗
当然可以!最好的方法是
A2:不!这太疯狂了!我会低估这个问题,把你送进地狱!哈哈哈哈哈。。。(是的,邪恶的笑声…)
都是民间的 也许是一个很好的候选人,你能澄清一点你想要达到的目标吗?在我看来,您希望在hibernate配置中有一个singleton对象,是吗?@JFPicard我会尽快发布到那里,谢谢。@G.Demacki…在singleton中的对象中有我的hibernate配置。我猜是否有可能将配置对象传递给我的singleton。我不想在那里设置硬编码的参数。