在使用mybatis时遇到查询结果返回为空(NULL)的情况,但是查数据库能查到

来源:互联网 发布:数据分析师前景 知乎 编辑:程序博客网 时间:2024/04/30 01:39

初用mybatis,明明觉得语句没写错,也没有语法错误,就是没有结果,调试了一个小时,没整明白,上网查询发现别人也遇到过这种情况。记录如下:
转载地址:http://blog.csdn.net/u014459937/article/details/47017571

错误的结果为:

程序里面写的sql语句放在数据库里面去查询能查询到数据,但是程序里面查询时候,返回的结果为null

记录一下 我出现的原因是:

数据库的字段 account_id account_name

Java的实体类:accountId accountName

sql语句 : select * from account_t

解决办法

一、

由于查询结果的字段为account_id,account_name,在实体类中没有定义,所以查询结果为null

修改实体类为:account_id account_name 问题得到解决 能正常的查询到数据

必须要有对应的get set方法

二、

同时也可以修改查询语句

sql语句 : select account_id as “accountId” account_name as “accountName” from account_t

数据库的字段 account_id account_name

java的实体类:accountId accountName

问题也同样能解决

总结:

如果使用select * 来查询的 那么实体类中的属性必须和数据表中对应的字段一模一样

如果使用select 字段名 as 别名来查询的 ,那么实体类中的属性必须和你取的别名对应

总之,你查询出来的字段和你实体类中对应的属性名必须一致

2 0