在Hibernate映射一个属性为boolean类型,hibernate在oracle数据库里使用NUMBER类型,1表示true,0表示flase。
我的程序原来运行在tomcat5下,使用类似这样的HQL语句没有问题——
from User u where u.loginFlag=false
但将程序步署到weblogic10下时,产生错误!更改为
from User u where u.loginFlag=0
正确!
原因未知,以后研究。
本文探讨了在Hibernate中将Boolean类型映射到Oracle数据库时遇到的问题。在不同应用服务器下(Tomcat与WebLogic),相同的HQL查询语句表现不一致的现象。文章指出,在WebLogic环境下需要直接使用数字0和1进行比较而非Boolean值。
在Hibernate映射一个属性为boolean类型,hibernate在oracle数据库里使用NUMBER类型,1表示true,0表示flase。
我的程序原来运行在tomcat5下,使用类似这样的HQL语句没有问题——
from User u where u.loginFlag=false
但将程序步署到weblogic10下时,产生错误!更改为
from User u where u.loginFlag=0
正确!
原因未知,以后研究。

被折叠的 条评论
为什么被折叠?
