最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MyBatis-Plus中@TableField和@TableId說明

 更新時間:2026年01月12日 08:44:12   作者:strggle_bin  
文章詳細介紹了Mybatis-plus中常用的注解及其用途,包括@TableField、@TableId等,通過這些注解可以解決字段不一致、字段不顯示、忽略字段以及主鍵查詢等問題,從而提高開發(fā)效率和數(shù)據(jù)安全性

一、@TableField(value = “表字段”)

如果表的字段與pojo類的屬性值對應不上,就像表字段為user_name,但是屬性的為uName時,在查詢所有中就會報錯,找不到表的字段信息。

java.sql.SQLSyntaxErrorException: Unknown column ‘u_name’ in ‘field list’

就是表的字段和User類沒有對應上。

這里就需要加入該注解@TableField(value = “user_name”),解決字段不一致問題(value寫表字段名),使得一一對應起來。

    @TableField(value = "user_name")
    private String uName;

注:

但如果表字段user_name。定義的userName。

駝峰命名會自動識別。不寫注解也可以)

再次運行即可解決該問題 如圖所示:

二、@TableField(select = false)

這是用來解決如果用戶名密碼不想顯示時可以在屬性上添加該字段,sql語句就不會去查詢該字段。

這樣在查詢時密碼字段會變成null輸出,保證安全性。

 	//查詢不顯示用戶密碼
    @TableField(select = false)
    private String userPassword;

三、@TableField(exist = false)

在添加中,如果User類下的屬性數(shù)據(jù)庫字段沒有,再添加時還會給這個屬性賦值,然后發(fā)送到mapper執(zhí)行插入數(shù)據(jù)操作時就會報錯。

java.sql.SQLSyntaxErrorException: Unknown column ‘hobby’ in ‘field list’

Mybatis-plus忽略表中映射的字段:

Mybatis-plus使用entity和數(shù)據(jù)庫進行關聯(lián)映射,有時候可能有些字段,在當前表中不存在,但是操作的時候,又需要進行使用,所以有時候就需要進行忽略。

具體如何忽略如下:

  • @TableField(exist = false):表示該屬性不是表中字段,但又是必須使用的。
  • @TableField(exist = true):表示該屬性是表中字段。

執(zhí)行下面的測試方法進行測試:

	//測試添加方法
    @Test
    public void testInsert(){
        User user=new User();
        user.setUserName("哈哈111");
        user.setUserEmail("12433");
        user.setUserRole("ADMIN");
        user.setUserStatus("0");
        user.setUserPassword("12344");
 
		// 表中沒有字段
        user.setHobby("足球");
        //受影響的行數(shù)  count
        int count = userMapper.insert(user);
        if(count>0){//添加成功
            //輸出所有數(shù)據(jù)
            testSelectList();
        }else {//添加失敗
            System.out.println("添加失敗~");
        }
    }

解決該方法:

就要使用 @TableField(exist = false)注解,表示數(shù)據(jù)表中沒有該字段,添加時生成sql代碼就會知道。

//數(shù)據(jù)庫中沒有該字段時需要添加注解
@TableField(exist = false)
private String hobby;

四、@TableId(type = IdType.AUTO)補充

這個是通過id查詢時,如果不在id主鍵屬性上添加該注解的話,就會報以下錯誤

org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): cn.imust.mp.mapper.UserMapper.selectById

這就表名雖然有屬性和表字段也對應,但是在通過id查詢時MP不知道這個是主鍵,所以無法執(zhí)行該方法,解決方法就是在屬性上添加@TableId(type = IdType.AUTO),type等于的值有很多,一般主鍵都是用這個。

	@TableId(type = IdType.AUTO)
    private Integer userId;

查看運行效果 如圖所示:

總結

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • Java多線程及分布式爬蟲架構原理解析

    Java多線程及分布式爬蟲架構原理解析

    這篇文章主要介紹了Java多線程及分布式爬蟲架構原理解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-10-10
  • Springboot主程序類注解配置過程圖解

    Springboot主程序類注解配置過程圖解

    這篇文章主要介紹了Springboot主程序類注解配置過程圖解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-10-10
  • 基于SSM+Shiro+Bootstrap實現(xiàn)用戶權限管理系統(tǒng)

    基于SSM+Shiro+Bootstrap實現(xiàn)用戶權限管理系統(tǒng)

    這篇文章主要介紹了基于SSM+Shiro實現(xiàn)一個用戶權限管理系統(tǒng),每位用戶只可訪問指定的頁面,文中的示例代碼講解詳細,對我們學習或工作有一定幫助,快跟隨小編一起學習吧
    2021-12-12
  • java往php傳數(shù)據(jù)操作方法

    java往php傳數(shù)據(jù)操作方法

    在本篇內(nèi)容里小編給大家分享的是關于java往php傳數(shù)據(jù)操作方法和技巧,需要的朋友們可以跟著學習下。
    2018-12-12
  • 詳解java google Thumbnails 圖片處理

    詳解java google Thumbnails 圖片處理

    這篇文章主要介紹了java google Thumbnails 圖片處理的相關知識,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-03-03
  • Java圖形化界面設計之布局管理器之BorderLayout案例詳解

    Java圖形化界面設計之布局管理器之BorderLayout案例詳解

    這篇文章主要介紹了Java圖形化界面設計之布局管理器之BorderLayout案例詳解,本篇文章通過簡要的案例,講解了該項技術的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • springcloud實現(xiàn)注冊中心Eureka

    springcloud實現(xiàn)注冊中心Eureka

    這篇文章主要介紹了springcloud實現(xiàn)注冊中心Eureka,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-02-02
  • 詳解Java數(shù)據(jù)結構和算法(有序數(shù)組和二分查找)

    詳解Java數(shù)據(jù)結構和算法(有序數(shù)組和二分查找)

    本篇文章主要介紹了詳解Java數(shù)據(jù)結構和算法(有序數(shù)組和二分查找),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-09-09
  • SpringCloud?Gateway中GatewayFilterChain執(zhí)行流程詳解

    SpringCloud?Gateway中GatewayFilterChain執(zhí)行流程詳解

    Spring?Cloud?Gateway旨在為微服務架構提供一種簡單有效的、統(tǒng)一的?API?路由管理方式。Spring?Cloud?Gateway?作為?Spring?Cloud?生態(tài)系中的網(wǎng)關,它不僅提供統(tǒng)一的路由方式,并且基于?Filter?鏈的方式提供了網(wǎng)關基本的功能,例如:安全、監(jiān)控/埋點和限流等
    2022-10-10
  • SpringBoot使用CORS實現(xiàn)無縫跨域的方法實現(xiàn)

    SpringBoot使用CORS實現(xiàn)無縫跨域的方法實現(xiàn)

    CORS 是一種在服務端設置響應頭部信息的機制,允許特定的源進行跨域訪問,本文主要介紹了SpringBoot使用CORS實現(xiàn)無縫跨域的方法實現(xiàn),具有一定的參考價值,感興趣的可以了解一下
    2023-10-10

最新評論

科技| 梨树县| 格尔木市| 胶南市| 武邑县| 晋江市| 镇原县| 花莲县| 平遥县| 离岛区| 西藏| 夏河县| 澄城县| 天气| 成安县| 砀山县| 景东| 泸州市| 玉林市| 天峻县| 清丰县| 新余市| 玛纳斯县| 绥滨县| 宁城县| 赫章县| 焦作市| 平罗县| 岳阳市| 山阴县| 阿坝县| 宁化县| 定西市| 新民市| 资阳市| 定州市| 老河口市| 台湾省| 萝北县| 新邵县| 黎平县|