公司用的是 hibernate 做数据库查询,其中 jar 包是这些。
在翻阅源码的时候有些问题不得解。在不懈努力下,以及前辈大神的指导下终于明白了。
String biz_stage = "007";
StringBuilder sql1 = new StringBuilder();
sql1.append(" SELECT C.TASK_HANDLER,C.STATUS FROM C_CLAIM_TASKS C WHERE C.CASENO = ? AND C.BIZ_STAGE = ?");
List<Map<String, Object>> list = databaseDao.findAllBySqlMap(sql1.toString(), caseNo, biz_stage);
InjectionCheckUtils.checkValidSql(sql);
final String fnSql = processQL(sql, values);
上面是重要代码(我有疑问的,以及大家阅读懂所必须的)。
SQL 正则校验(这块我弱项,没懂),然后就是 SQL 分析:
protected static String processQL(final String ql, final Object... values) {
String newQL = ql;
int