解决属性名和字段名不一致的问题(Mybatis)

1、数据库中的字段

新建一个项目,拷贝之前,测试实体字段不一致的情况

User

package com.kk.pogo;public class User {private int id;private String name;private String password;
}

问题:

User{id=2, name=‘wang’, password=‘null’}

解决方法:

核心配置文件

  • 起别名
<select id="getUserById" resultType="User"parameterType="int">select id,name,pwd as password from mybatis.user where id = #{id}
</select>
  • resultMap 结果集映射
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!--namespace绑定一个对应的mapper接口-->
<mapper namespace="com.hou.dao.UserMapper"><select id="getUserById" resultMap="UserMap" parameterType="int">select * from mybatis.user where id = #{id}</select><!--结果集映射--><resultMap id="UserMap" type="User"><!--colunm 数据库中的字段,property实体中的属性--><result column="id" property="id"></result><result column="name" property="name"></result><result column="pwd" property="password"></result></resultMap></mapper>
  • resultMap 元素是 MyBatis 中最重要最强大的元素。
  • ResultMap 的设计思想是,对简单的语句做到零配置,对于复杂一点的语句,只需要描述语句之间的关系就行了。
<resultMap id="UserMap" type="User"><!--colunm 数据库中的字段,property实体中的属性--><!--<result column="id" property="id"></result>--><!--<result column="name" property="name"></result>--><result column="pwd" property="password"></result>
</resultMap>

解决属性名和字段名不一致的问题(Mybatis)相关推荐

  1. PowerDesigner生成SQL脚本时表名、字段名带引号问题及解决方法

    使用PowerDesigner生成数据库脚本时,表名一般会带引号. 如下: 加引号是PL/SQL的规范,数据库会严格按照""中的名称建表,如果没有"",会按照O ...

  2. 【mysql】表名或字段名与关键字重名解决方法

    如果在一个sql业务中,你见到如下字段: date,for,check,while,end,long等作为了表名或者字段名,那么sql执行肯定会有异常信息! 代码: SELECT for,long F ...

  3. MyBatis构建sql时动态传入表名以及字段名

    http://wendy-wxie.iteye.com/blog/1605193 用了mybatis很长一段时间了,但是感觉用的都是比较基本的功能,很多mybatis相对ibatis的新功能都没怎么用 ...

  4. mybatis获取表名_mybatis动态调用表名和字段名

    一直在使用Mybatis这个ORM框架,都是使用mybatis里的一些常用功能.今天在项目开发中有个业务是需要限制各个用户对某些表里的字段查询以及某些字段是否显示,如某张表的某些字段不让用户查询到.这 ...

  5. mybatis动态调用表名和字段名

    一直在使用Mybatis这个ORM框架,都是使用mybatis里的一些常用功能.今天在项目开发中有个业务是需要限制各个用户对某些表里的字段查询以及某些字段是否显示,如某张表的某些字段不让用户查询到.这 ...

  6. 【Hibernate】Hibernate中查询表名、字段名以及字段类型等信息

    Hibernate中查询表名.字段名以及字段类型等信息的工具类 package com.lmb.ui.util;import org.hibernate.cfg.Configuration; impo ...

  7. mybatis获取表名——mybatis动态调用表名和字段名#{},${}

    一直在使用Mybatis这个ORM框架,都是使用mybatis里的一些常用功能.今天在项目开发中有个业务是需要限制各个用户对某些表里的字段查询以及某些字段是否显示,如某张表的某些字段不让用户查询到.这 ...

  8. SpringBoot - MyBatis-Plus使用详解2(设置实体类对应的表名、字段名 )

    二.设置模型对应的表名.字段名 1,设置关联的表名 (1)默认情况下,如果数据库表是使用标准的下划线命名,并且能对应上实体类的类名,我们就不需要特别去手动匹配.比如有张 user_info 表,那么会 ...

  9. ibatis动态的传入表名、字段名

    ibatis动态的传入表名.字段名,主要传入表名和字段名的不一致. Java代码: Map<String,Object> params = new HashMap<String,Ob ...

最新文章

  1. 服务网格架构激活了容器网络管理—来自于服务网格创建者们的见解与展望
  2. 小米手机怎么获取 ROOT 权限
  3. 关于placement new 和 placement delete的重载,以及basic_string重载new()实例
  4. 02-线性结构1 两个有序链表序列的合并 (15 分)
  5. Java Throwable initCause()方法与示例
  6. c/c++教程 - 2.3 函数的提高 函数的形参列表默认值 占位参数 函数重载
  7. (数论)51NOD 1136 欧拉函数
  8. 用R和BioConductor进行基因芯片数据分析(三):计算median
  9. python、MongoDB安装
  10. 月薪过万的php面试题目
  11. c++ atuo_ptr 的实现原理
  12. win11提示此驱动正在使用中,硬盘格式化不了
  13. 游戏辅助原理与制作02-植物大战僵尸02-金币基址
  14. 【nRF Connect】一、下载方法及简介
  15. 通过存储控制器访问外设
  16. 上下协同,用友IPD的研发管理之道(下)
  17. 生活污水处理厂工程脱水车间设计、果汁饮料厂工艺流程及车间平面布置CAD设计、水处理车间工艺图、氯乙烯分离车间平面布置图、乳品车间设备布置图、核桃乳饮料厂工艺流程及车间平面布置CAD设计……
  18. ab进行压力测试详解
  19. 支持 C++11/14/17 功能(现代 C++
  20. mac使用jmap报错问题

热门文章

  1. 【Head First Java 读书笔记】(四)对象的行为
  2. AutoResetEvent 与 ManualResetEvent
  3. Nginx 静态文件服务器搭建及autoindex模块解析
  4. 如何卸载windows自带的输入法
  5. tomcat升级步骤
  6. 这世上有个词叫Crush,有多少人误把它当做Love
  7. python命令行运行django项目, can‘t open file ‘manage.py‘ 问题解决
  8. 安装cuda时 提示toolkit installation failed using unsupported compiler解决方法
  9. 解决windows系统无法对docker容器进行端口映射的问题
  10. IDEA2019.3 双击启动无反应解决方法