解决mybatis中字段重名的问题尝试和总结

来源:互联网 发布:软件开发java 高级证书 编辑:程序博客网 时间:2024/05/19 14:18

1.多表查询时,当列id重名时,mybatis会默认使用查询出的第一个id列(另一个列被覆盖),为了区分同名的列,给列取一个别名。取完别名后找到对应的colume中也要做出修改。
查询时给列取别名(多表查询):
SELECT u.*,o.id as oid,CODE,total,user_id
FROM tb_order o,tb_user u
WHERE o.user_id = u.id
AND o.id = #{id}
映射的column也要对应查询时的别名:

<id property="id" column="oid" /><result property="code" column="code" /><result property="total" column="total" />

2.当对查询出来的数据有疑惑时,可以复制sql语句到navicat中查询,与真正的结果比较,因为mybatis的查询机制可能会不同,除非自己封装框架。以后遇到sql语句问题也一样。
3.还有的就是如果在配置文件中(xml,properties)eclipse给出了拼写警告可能会影响程序正常执行。可通过在eclipse下的Window–Preference输入spell,然后把第一个复选框“Enable spell checking“给去掉就可以了。

以上就是我在解决mybatis中字段重名的问题过程中的尝试和总结。

阅读全文
0 0
原创粉丝点击