我知道这似乎是一种亵渎神灵的东西,它可能会破坏单身自然,所以请不要伤害我!我只是问。
假设下面的例子只是一个随机的情况(实际上是我的情况,巧合?我不这么认为......)我的问题是通用的。
我有一个像这样的单身人士课程:
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;
}
}
而不是我用来调用//hibernate config...bla bla bla & bla...
和setProperty(..)
硬编码的行addAnnotatedClass(..)
。
我想知道在我的MyHibernateConfiguration
中使用自定义属性对象(通过实例:getSingleSession()
类)是否合适,其中包含一些属性来存储Hibernate属性(作为"hibernate.dialect", "org.hibernate.dialect.PostgreSQLDialect"
)和注释类。以这种方式注入或传递或......等等......"所有这些事情"可以动态传递,这将是非常酷的,不是很好吗?
反正:
问:有可能吗? A1:是的,当然!最好的方法是......A2:不!这太疯狂了!我会低估这个问题然后把你送到地狱! Muha-ha-ha-haaaa ......(是的,邪恶的笑......)
那是所有人!