我正在浏览一个不是我的代码,我想手动更改应用程序数据库中的一些数据。该代码使用休眠来处理其与数据库的通信,但我无法准确确定提到数据库相关信息(表名、访问点等)的位置。我试图通过深入类树来找到更多,但最终总是找到休眠黑盒类(即使使用反编译器我也无法理解)。
基本上,似乎最接近我的观点的部分是这个:
getElements(String businessKey, String businessKeyBis, ProcessType processType) {
Session session = getSession();
BusinessProcessInstance result = null;
//Hibernate creates a criteria
Criteria criteriaQuery = session.createCriteria(BusinessProcessInstance.class)
.add(Restrictions.in("state", new ProcessState[]{ProcessState.RUNNING, ProcessState.NEW}))
.add(Restrictions.eq("businessKey", businessKey))
.add(Restrictions.eq("processType", processType))
.addOrder(Order.desc("id"));
if (null != businessKeyBis) {
criteriaQuery.add(Restrictions.eq("businessKeyBis", businessKeyBis));
}
@SuppressWarnings("unchecked")
//Then at this point it uses the 'list' method to question the database
List<BusinessProcessInstance> bpiList = criteriaQuery.list();
if (bpiList.size() > 0) {
result = bpiList.get(0);
}
return result;
周围有没有休眠专家可以帮助我弄清楚是否有某种“配置”文档,我们可以在其中提及休眠的所有相关参数?或者如果有什么我应该知道的可以帮助我理解框架的行为方式?
谢谢 !