解决MyBatis中数据库列名与java命名不同的问题

在使用MyBatis框架操作数据库时,由于Java采用驼峰命名而数据库字段用下划线命名,导致了属性匹配问题。解决方法是在mapper XML文件中添加<resultMap>标签,指定字段与属性的映射关系,例如`<result column=brand_name property=brandName/>`。此外,可在MyBatis配置文件中设置<setting name=mapUnderscoreToCamelCase value=true/>,开启下划线到驼峰命名的自动转换功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题描述

在使用MyBatis框架链接数据库进行增删改查过程中,由于数据库列表名采用下划线命名,而java使用驼峰命名法,导致属性名不一致无法操作数据。


解决方案:

在sql映射文件的<mapper>标签下加入<resultMap>标签

	<resultMap id="brandResultMap" type="brand">
<!--
	id:完成主键字段的映射
		column:表的列名
		property:实体类的属性名
	result:完成一般字段的映射
-->
		<result column="brand_name" property="brandName"/>
		<result column="company_name" property="companyName"/>
	</resultMap>
在MyBatis配置文件中设置的<setting>标签
    <settings>
<!--        将下划线设为驼峰-->
        <setting name="mapUnderscoreToCamelCase" value="true"/>
    </settings>

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值