当前位置: 首页 > wzjs >正文

免费做电子相册的网站水泵行业网站哪个做的好

免费做电子相册的网站,水泵行业网站哪个做的好,做球形全景的网站,制作微信小程序怎么赚钱在 MyBatis 中,当 Java 实体类的属性名与数据库表的字段名不一致时,会导致查询结果无法正确映射。以下是几种常见解决方案及代码示例: 1. 使用 resultMap 显式映射(推荐) 场景:字段名与属性名差异较大&…

在 MyBatis 中,当 Java 实体类的属性名与数据库表的字段名不一致时,会导致查询结果无法正确映射。以下是几种常见解决方案及代码示例:


1. 使用 resultMap 显式映射(推荐)

场景:字段名与属性名差异较大,需自定义映射规则
实现步骤
  1. 在 XML 映射文件中定义 resultMap
  2. 通过 column 指定数据库字段,property 指定 Java 属性

示例代码

<!-- UserMapper.xml -->
<resultMap id="userResultMap" type="com.example.User"><id column="user_id" property="id"/>         <!-- 数据库字段 user_id → 属性 id --><result column="user_name" property="name"/> <!-- 数据库字段 user_name → 属性 name --><result column="create_time" property="createTime"/> <!-- 下划线转驼峰 -->
</resultMap>
<select id="selectUserById" resultMap="userResultMap">SELECT user_id, user_name, create_time FROM user WHERE user_id = #{id}
</select>

2. 启用驼峰命名自动映射

场景:数据库字段使用下划线命名(如 user_name),Java 属性使用驼峰命名(如 userName
实现步骤
  1. 在 MyBatis 配置中开启驼峰转换规则

示例代码application.properties):

# Spring Boot 配置
mybatis.configuration.map-underscore-to-camel-case=true

效果
无需额外配置,MyBatis 自动将 user_name 映射到 userName


3. 在 SQL 查询中使用别名

场景:临时适配字段名与属性名的差异
实现步骤
  1. 在 SQL 中为字段设置别名,与 Java 属性名一致

示例代码

<select id="selectUserById" resultType="com.example.User">SELECT user_id AS id,        <!-- 别名 id 对应属性 id -->user_name AS name,    <!-- 别名 name 对应属性 name -->create_time AS createTime FROM user WHERE user_id = #{id}
</select>

4. 使用 @Results 注解映射(注解方式)

场景:使用注解而非 XML 配置
实现步骤
  1. 在 Mapper 接口方法上使用 @Results@Result 注解

示例代码

@Select("SELECT user_id, user_name, create_time FROM user WHERE user_id = #{id}")
@Results({@Result(property = "id", column = "user_id"),@Result(property = "name", column = "user_name"),@Result(property = "createTime", column = "create_time")
})
User selectUserById(int id);

5. 动态 SQL 中的字段映射

场景:在 <if> 等动态标签中引用字段
实现步骤
  1. 使用 column 属性指定数据库字段名

示例代码

<select id="findUsers" resultType="com.example.User">SELECT user_id AS id,user_name AS name,create_time AS createTime FROM user<where><if test="name != null">AND user_name = #{name}  <!-- 数据库字段名直接使用 --></if></where>
</select>

总结

方案适用场景优点缺点
resultMap复杂字段映射(如类型转换、嵌套对象)灵活、精确控制配置较繁琐
驼峰自动映射字段与属性名仅命名风格不同(下划线 ↔ 驼峰)零配置,简单快捷无法处理特殊映射
SQL 别名临时适配或简单字段映射无需额外配置可维护性较差
@Results 注解使用注解配置的轻量级场景代码内聚,无需 XML复杂映射时代码冗长

推荐优先级

  1. 驼峰自动映射(简单场景)
  2. resultMap(复杂映射)
  3. SQL 别名(临时适配)

文章转载自:

http://x0pciGGr.tnkwj.cn
http://jXI0EA9x.tnkwj.cn
http://hiehzeRj.tnkwj.cn
http://uogzcRtx.tnkwj.cn
http://peGPePXF.tnkwj.cn
http://NjdKToAP.tnkwj.cn
http://KIFUiG1f.tnkwj.cn
http://2OulYsPB.tnkwj.cn
http://KH1JJotG.tnkwj.cn
http://MFGtixBb.tnkwj.cn
http://U4sm0UbN.tnkwj.cn
http://UUkdSWPW.tnkwj.cn
http://ABiAY3Q1.tnkwj.cn
http://7cWVeej7.tnkwj.cn
http://NPaxxF8a.tnkwj.cn
http://wtJWpFIg.tnkwj.cn
http://evqoKzt1.tnkwj.cn
http://3BoVMBxH.tnkwj.cn
http://5i5WpyT6.tnkwj.cn
http://wCJVLbFc.tnkwj.cn
http://2D0GNcoF.tnkwj.cn
http://BBZrvsCd.tnkwj.cn
http://JR1ufvFU.tnkwj.cn
http://PwPdIayJ.tnkwj.cn
http://P4v2LjPP.tnkwj.cn
http://Kf0ex8Tt.tnkwj.cn
http://Q7OLYZrq.tnkwj.cn
http://9VkhsT2R.tnkwj.cn
http://ydZGUM3v.tnkwj.cn
http://mQJwutH7.tnkwj.cn
http://www.dtcms.com/wzjs/745149.html

相关文章:

  • 企业网站开发 流程软件开发一般需要多少钱
  • 深圳专业软件网站建设网站建设硬件和软件技术环境配置
  • 佛山网站建设定制开发实验室网站制作
  • 做电影资源网站有哪些vue 做企业网站
  • 两学一做 专题网站河南省台前县建设局网站
  • 网站开发薪水一般多少钱专业网站建设一条龙
  • 单网页网站内容网站建设与营销服务
  • win10 做网站服务器吗做免费视频网站违法吗
  • 网站修改 iis6应用程序池家用电脑桌面做网站
  • 徐州住房与建设局网站免费ppt成品
  • 安庆网站建设电话网站建设怎么学
  • 什么网站做一手房好上海网站制作公司是什么
  • 制作网站软件app网页游戏开服表源码
  • 网站需要备案才能建设吗PHP做克隆网站
  • 东莞英文网站制作百度seo公司一路火
  • 官方网站的重要性宣传软文怎么写
  • 做同城网站需要哪些手续宣传页在线设计软件
  • 网站外链快速建设企业网站建立制作
  • 南昌高端网站开发费用表西安自助建站系统
  • 用python做网站的多吗做货源网站可以赚钱吗
  • 蓝色高科技网站模板友情链接交换平台源码
  • 电脑做服务器上传网站定制小程序开发公司
  • 珠海一元夺宝网站建设互联网保险销售行为可回溯管理办法
  • 建设一个企业网站多少钱工业设计考研学校排名
  • 带着做计算机项目的网站logo制作步骤
  • 对电子商务网站建设的感想网站续费通知单
  • 博客网站模板自己怎么做网址开网站
  • 安徽合肥建设厅网站官方在家做兼职的网站
  • 移动网站建站系统下载东莞招聘网站
  • 网站开发的收获体会网站开发语言分为几种