首页 > 数据库 >5.解决实体类属性名和数据库字段不匹配问题

5.解决实体类属性名和数据库字段不匹配问题

时间:2023-01-04 19:22:23浏览次数:37  
标签:语句 实体类 name 数据库 ResultMap 字段 id

1.问题

  当出现数据库和实体类不匹配时,与数据库不配的属性就会查询不到数据

      数据库中 id name pwd
      实体类中 id name password

   

      解决方法:
     (1) 在sql语句中给不一致的字段起别名

<select id="getUserById" parameterType="int" resultType="User">
<!--select * from mybatis.user where id = #{id}-->
select id,name,pwd as password from mybatis.user where id = #{id}
</select>

     (2)ResultMap结果集映像

<resultMap id="rsMap" type="User">
    <!--那个字段不一致就那个字段进行映射-->
    <result column="pwd" property="password"/>
 </resultMap>

<select id="getUserById" parameterType="int" resultMap="rsMap">
    select * from mybatis.user where id = #{id}
</select>

2.ResultMap(查询结果集)

  ResultMap 元素是MyBatis 中最重要最强大的元素
  ResultMap 的设计思想是,对于简单的语句根本不需要配置显式的结果映射,而对于复杂一点的语句只需要描述它们的关系就行了
  Resu1tmap 最优秀的地方在于,虽然你已经对它相当了解了,但是根本就不需要显式地用到他们。

 

标签:语句,实体类,name,数据库,ResultMap,字段,id
From: https://www.cnblogs.com/zuok/p/17025398.html

相关文章

  • 时序数据库 TDengine 3.0 参数体系使用方式汇总
    在日常使用 TDengine 时,参数是用户们无法绕开的重要一环。深入了解参数的属性,生效范围,查询更改方式等会让我们在使用数据库的过程中更加节时高效,也有助于我们更加深入地......
  • mysql 时间类型 时间字段默认值
    1.设置create_timeupdate_time1)建表createtabletable_name(idint(10)NOTNULLAUTO_INCREMENT,namevarchar(10),create_timedatetimeNOTNULLDEFAULTCUR......
  • day53 -数据库表的创建,修改与删除,数据表的类型
    创建数据库表 --AUTO_INCREMENT自增--字符串使用单引号括起来--PRIMARYKEY主键,一般一个表只有一个唯一的主键CREATETABLEIFNOTEXISTS`student`(......
  • SpringBoot yml配置文件引入实体类赋值
    @Value()直接使用注解赋值@ConfigurationProperties()注解引入yml文件配置实体类中的属性,注意:属性名字必须相同没有默认为null这里的名字和年龄相互对应......
  • springboot 连接 mqtt,操作数据库时mqtt断开连接
    主要原因,程序异常导致连接断开第一种,普通类注入bean,为空。学过spring应该知道,这必然为空https://blog.csdn.net/qq_41249513/article/details/108465477https://blog.c......
  • oracle数据库配串指南(笔记)
    【1】PLSQL 的配置里先找到配置在那个目录中【2】 根据上面的目录找到 tnsnames.ora,把数据库串添加至文件后面中。【3】关闭重新进入,在database 中能看到该配置后,......
  • 上海力控企业级实时历史数据库pSpace产品架构及特点
    上海力控企业级实时历史数据库pSpace是“两化融合”整体解决方案的核心,产品分布式的结构设计保证了发挥系统最大的运行效率,完全满足企业生产信息化、综合自动化系统、SCADA......
  • JSR303校验 在实体类上的应用
    首先在实体类上添加注解@Validated在需要校验的字段上添加需要的注解可能出现的错误导入对应依赖可以解决<dependency><groupId>org.hibernate</groupId><ar......
  • 03- 配置数据库
    1.配置数据库#1.安装第三方模块pipinstallmysqlclient#2.django连接数据库在项目中的settings.py中配置将:......
  • dbcp2连接池获取数据库连接Connection
    一、先来看看手工创建的方式publicstaticConnectiongetConnection(){Connectionconn=null;try{Class.forName("com.mysql.......