用于配置Hibernate的库,它允许键接口的实例,而不仅仅是类名和属性或字符串
我真的很讨厌Hibernate如何不允许在Configuration上简单地设置TransactionManager或CacheProvider以及所有其他重要的接口。相反,它具有变体,例如将类名或类名带到查找或提供者。同样,它不可能直接传递实例,并且必须使用诸如设置threadlocal之类的hacks,设置一些类定位器名称并让它读取threadlocal。丑陋的讨厌等等当然有人已经清理了这一切,这就是我问q的原因。
RANT
想想如果可以简单地设置Config对象会有多简单,Configuration类将不再具有数十个和几十个String属性并且很容易注入。
游泳池
事务管理器查找
缓存提供者
数据源
简单
编写新的提供程序将变得如此简单,不再需要重新发明协议以从字符串和适配器读取配置。通过适当的依赖注入,只需要编写后者
工作解决方案
我开始通过子类化一些Hibernate类来工作,所以我可以用实例或包装器替换默认值。
配置 - 必须创建一个带有SessionFactory的子类,因为获取SessionFactory的ctor受到保护。没有其他方法被触及。
SettingsFactory - 覆盖返回实例的关键方法。
等等
写我自己的SessionFactory
没有找到相关结果
已邀请:
0 个回复