hibernate的Map,有些问题

Hibernate 的Map 用起来的确方便,但是对字段的命名,可能是 aj_key和aj_value,这样不好。

另外发现,hibernate3,不能根据map的key查value。不得不把Map都查出来,在内存里查找。

hql="select elements(p1.variablesEncode) from ProcessInstance p1 where p1.dbId = 145 and index(p1.variablesEncode)='"
+ AutojobConstants.$BusiPathHasErr$ + "'"

生成的mysql的sql:
select variablese3_.aj_mapvalue from aj_processinstance processins2_, aj_pi_variables variablese3_, aj_pi_variables variablese4_ where processins2_.aj_dbid=variablese3_.aj_pi_dbid and processins2_.aj_dbid=variablese4_.aj_pi_dbid and processins2_.aj_dbid=145 and variablese4_.aj_mapkey='$BusiPathHasErr$'

这里aj_pi_variables表出现两次,但彼此没有进行连接,查出的结果是错的。

你可能感兴趣的:(hibernate的Map,有些问题)