mybaits sql查询有数据 映射时返回结果却是null 为什么呢求解

biubiubilibili 2017-04-21 09:35:47
<select id="TestSelect" resultType="guet.com.po.Document">
SELECT * FROM document WHERE (doc_id =2)
</select>




日志:
DEBUG [http-apr-8080-exec-2] - JDBC Connection [435841503, URL=jdbc:mysql://localhost:3306/instru_sys, UserName=root@localhost, MySQL-AB JDBC Driver] will not be managed by Spring
DEBUG [http-apr-8080-exec-2] - ==> Preparing: SELECT * FROM document WHERE (doc_id =2)
DEBUG [http-apr-8080-exec-2] - ==> Parameters:
DEBUG [http-apr-8080-exec-2] - <== Columns: doc_id, doc_numb, doc_time, doc_type, check_p
DEBUG [http-apr-8080-exec-2] - <== Row: 2, 0002, 2017-04-21 15:05:38.0, 0, ??
DEBUG [http-apr-8080-exec-2] - <== Total: 1
DEBUG [http-apr-8080-exec-2] - Closing non transactional SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@3637a3fd]
DEBUG [http-apr-8080-exec-2] - Returning JDBC Connection to DataSource
DEBUG [http-apr-8080-exec-2] - Don't need to create transaction for [guet.com.service.impl.DocumentServiceImpl.GetMaxid]: This method isn't transactional.
DEBUG [http-apr-8080-exec-2] - Creating a new SqlSession
DEBUG [http-apr-8080-exec-2] - SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@53914c10] was not registered for synchronization because synchronization is not active
DEBUG [http-apr-8080-exec-2] - Fetching JDBC Connection from DataSource
DEBUG [http-apr-8080-exec-2] - JDBC Connection [1214379398, URL=jdbc:mysql://localhost:3306/instru_sys, UserName=root@localhost, MySQL-AB JDBC Driver] will not be managed by Spring
DEBUG [http-apr-8080-exec-2] - ==> Preparing: SELECT MAX(doc_id) FROM document
DEBUG [http-apr-8080-exec-2] - ==> Parameters:
DEBUG [http-apr-8080-exec-2] - <== Columns: MAX(doc_id)
DEBUG [http-apr-8080-exec-2] - <== Row: 5
DEBUG [http-apr-8080-exec-2] - <== Total: 1
DEBUG [http-apr-8080-exec-2] - Closing non transactional SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@53914c10]
DEBUG [http-apr-8080-exec-2] - Returning JDBC Connection to DataSource
null
IN20174215
DEBUG [http-apr-8080-exec-2] - Method [selecttest] returned [null]
...全文
1265 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
你的mybatis版本太低了
biubiubilibili 2017-04-21
  • 打赏
  • 举报
回复 2
解决了 原来是实体的属性名和数据库的字段名不一样,如我数据库字段是doc_id 它猫的 mybatis 逆向工程给我生成为docId了 少了个_ 用resultType也是可以的
李德胜1995 2017-04-21
  • 打赏
  • 举报
回复
引用 2 楼 biubiubilibili 的回复:
不能这样吗 ? 我的实体pojo是通过mybatis逆向工程自动生成的
在xml文件配置resultMap...<result property="z字段名" 数据库列名"/> 然后把resultType换成resultMap
biubiubilibili 2017-04-21
  • 打赏
  • 举报
回复
是不是 还要创建一个pojo的包装类型,映射到包装类型上去?
biubiubilibili 2017-04-21
  • 打赏
  • 举报
回复
不能这样吗 ? 我的实体pojo是通过mybatis逆向工程自动生成的
李德胜1995 2017-04-21
  • 打赏
  • 举报
回复
resultType="guet.com.po.Document" 数据库的字段和实体类对应吗???

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧