Hibernate 生成的查询语句拿到数据库能查出数据 但是在调试的时候没有数据是怎么回事

2024-11-18 00:11:13
推荐回答(3个)
回答1:

hibernate能够生成查询语句 说明它已经进行了查询操作
返回结果数据记录为0 很可能出现的情况 是 : 该查询未未访问到指定数据库表 。
当使用的数据库为 oracle数据库 时,你会在bean配置文件(.hbm.xml)中设置 时会有如下的class设置:

schema 表示该表的存放用户,所以如果你的表放在了其他用户(如system),查询语句就无法得到相应结果了。
所以,移植项目时也需要查看此用户是否为你正使用的用户。
另外表与表之间存在关系映射(一对多、多对多等)时,不管你的本class name属性是否为全路径,在映射到的另一class属性最好写全称,否则很可能出现无法到指定映射bean的错误

回答2:

将字段类型改为varchar2类型 (项目中使用,推荐使用),另外建议优先使用varchar2类型
http://blog.csdn.net/honghailiang888/article/details/73770344

mysql, mssqlserver 都没问题,就是oracle这个会查询不出,改一下字段类型就好了

回答3:

你Spring的配置文件中没有将sessionFactory注入到Dao中