日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

Mybatis实体类属性名与数据库类名不对应的两种解决方法

發(fā)布時(shí)間:2023/12/3 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Mybatis实体类属性名与数据库类名不对应的两种解决方法 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

在Mybatis開發(fā)時(shí),如果 Bean的屬性名與數(shù)據(jù)庫的類名不一致時(shí),CRUD將出現(xiàn)問題。
數(shù)據(jù)庫類名

Bean的屬性名:(默認(rèn))

調(diào)整Bean中的屬性名:(測試不一致)

此時(shí)原有代碼將會(huì)報(bào)錯(cuò),可預(yù)見的報(bào)錯(cuò)為 java文件中所有用到set,與get方法的地方。
不可以預(yù)見的報(bào)錯(cuò),在配置文件中。

方法一{測試,有問題}
在配置文件中,將所有的屬性值調(diào)整成與Bean中的屬性名一致。
在插入和更新操作中不存在問題。問題來了!!!
在進(jìn)行【查詢操作時(shí)】----->查詢所有!

只有username封裝到數(shù)據(jù)庫中了,其他字段都沒有被封裝到數(shù)據(jù)庫中!
原因:MySQL數(shù)據(jù)庫在Windows系統(tǒng)下區(qū)分大小寫!

所以只有username被封裝到了數(shù)據(jù)庫中!

解決辦法

1、使用別名

映射配置文件中修改


結(jié)果:

優(yōu)點(diǎn):執(zhí)行效率高,因?yàn)槭窃赟QL語句的層面上解問題。

2、配置resultMap



缺點(diǎn):執(zhí)行效率(多一次解析)較低
優(yōu)點(diǎn):開發(fā)效率變快,因?yàn)樗械牟樵儾僮?#xff0c;都可以將resultType返回結(jié)果集改成resultMap,后續(xù)改造很便 利。如果使用第一種給 SQL 列表 起 別名,SQL語句改造量比較大。

總結(jié)

以上是生活随笔為你收集整理的Mybatis实体类属性名与数据库类名不对应的两种解决方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。