Mybatis下划线驼峰处理的几种方法

 更新时间:2023年12月26日 11:51:46   作者:怪 咖@  
这篇文章主要讲述Mybatis下划线驼峰处理的几种方法,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

首先先说明一下为什么会出现这种情况

数据库当中有时候会起一些带下划线的列名,例如:last_Name,而javabean当中一般遇下划线都是驼峰显示的。一般起名称都是这样 lastName,这时候就会出现一个问题,就是封装不到javabean里面值。就是因为数据库列名和javabean名称不一致而封装不上。

在这里插入图片描述

java对象

在这里插入图片描述

查出来会发现赋值不上去

Employee [id=1, lastName=null, email=1, gender=1]

这时候有人该说了,我javabean当中也用last_name不上也可以呀。
答案:可以,但是Java中一般是final变量才用大写字母+下划线命名。

1、可以通过写别名

在针对于对象属性多的情况下就不实用了。写起来可能因为这一个名称,全得把列名写出来。

<select id="getEmpById" resultType="com.gzl.mybatis.bean.Employee">
	select id as id,last_Name as lastName,email as email,gender as gender from student where id = #{id}
</select>

2、开启驼峰命名

在mybatis-config-xml添加以下配置,切记xml是有顺序要求的,如果xml当中用到了properties标签,就放在这个标签下面,如果没有就放在最上面。

<settings>
		<setting name="mapUnderscoreToCamelCase" value="true"/>
</settings>

3、自定义javabean的封装规则

<!--自定义某个javaBean的封装规则
	type:自定义规则的Java类型
	id:唯一id方便引用
	  -->
	<resultMap type="com.gzl.mybatis.bean.Employee" id="MySimpleEmp">
		<!--指定主键列的封装规则
		id定义主键会底层有优化;
		column:指定哪一列
		property:指定对应的javaBean属性
		  -->
		<id column="id" property="id"/>
		<!-- 定义普通列封装规则 -->
		<result column="last_name" property="lastName"/>
		<!-- 其他不指定的列会自动封装:我们只要写resultMap就把全部的映射规则都写上。 -->
		<result column="email" property="email"/>
		<result column="gender" property="gender"/>
	</resultMap>
 	
 	<select id="getEmpById" resultMap="MySimpleEmp">
		select * from student where id = #{id}
	</select>

以上就是Mybatis下划线驼峰处理的几种方法的详细内容,更多关于Mybatis下划线驼峰处理的资料请关注脚本之家其它相关文章!

相关文章

  • JAVA中JNI的简单使用分享

    JAVA中JNI的简单使用分享

    这篇文章介绍了JAVA中JNI的简单使用,有需要的朋友可以参考一下
    2013-10-10
  • ocp开闭原则_动力节点Java学院整理

    ocp开闭原则_动力节点Java学院整理

    这篇文章主要为大家详细介绍了ocp开闭原则的相关资料,ocp开闭原则指导我们如何建立一个稳定的、灵活的系统,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-08-08
  • Java Hibernate中一对多和多对多关系的映射方式

    Java Hibernate中一对多和多对多关系的映射方式

    Hibernate是一种Java对象关系映射框架,支持一对多和多对多关系的映射。一对多关系可以使用集合属性和单向/双向关联来映射,多对多关系可以使用集合属性和中间表来映射。在映射过程中,需要注意级联操作、延迟加载、中间表的处理等问题
    2023-04-04
  • 配置springboot项目使用外部tomcat过程解析

    配置springboot项目使用外部tomcat过程解析

    这篇文章主要介绍了配置springboot项目使用外部tomcat过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-09-09
  • Java HttpURLConnection使用方法与实例演示分析

    Java HttpURLConnection使用方法与实例演示分析

    这篇文章主要介绍了Java HttpURLConnection使用方法与实例演示,HttpURLConnection一个抽象类是标准的JAVA接口,该类位于java.net包中,它提供了基本的URL请求,响应等功能,下面我们来深入看看
    2023-10-10
  • 原生java代码实现码云第三方验证登录的示例代码

    原生java代码实现码云第三方验证登录的示例代码

    这篇文章主要介绍了原生java代码实现码云第三方验证登录的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-04-04
  • Java构建工具Gradle的安装和使用图文教程

    Java构建工具Gradle的安装和使用图文教程

    Gradle 是一个功能强大的构建工具,支持自动化和定制化的构建过程,下面这篇文章主要介绍了Java构建工具Gradle的安装和使用的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2025-09-09
  • springboot中RabbitMQ死信队列的实现示例

    springboot中RabbitMQ死信队列的实现示例

    死信队列是一种特殊的消息队列,用来存储无法被正常消费的消息,常被用来实现延迟处理,异常消息处理等,本文主要介绍了springboot中RabbitMQ死信队列的实现示例,感兴趣的可以了解一下
    2024-01-01
  • Servlet实现点击计数器的方法

    Servlet实现点击计数器的方法

    这篇文章主要介绍了Servlet实现点击计数器的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-08-08
  • 一篇清晰易懂的Java 8彻底卸载与清理教程

    一篇清晰易懂的Java 8彻底卸载与清理教程

    这篇文章主要介绍了Java 8彻底卸载与清理的相关资料,包括卸载程序、删除残留文件、清理环境变量及注册表,最后通过命令验证卸载是否成功,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2025-05-05

最新评论