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

tk.Mybatis 插入數(shù)據(jù)獲取Id問(wèn)題

 更新時(shí)間:2021年12月01日 16:02:05   作者:武漢加油、中國(guó)加油  
本文主要介紹了tk.Mybatis 插入數(shù)據(jù)獲取Id問(wèn)題,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

1、問(wèn)題描述

幾種代碼寫法會(huì)有不同的ID返回值,下面我們一一分析。

2、問(wèn)題分析

??首先一種插入寫法,源碼如下:

SysUser .java

/**
 * 用戶管理(SysUser)實(shí)體類
 *
 * @author Chen
 * @since 2020-05-06 14:16:48
 */
@Data
@ApiModel("用戶管理")
public class SysUser implements Serializable {
    private static final long serialVersionUID = 993569543176442301L;

    /**
    * 編號(hào)
    */
    @Id
    private Long id;

    /**
    * 用戶名
    */
    private String name;

    /**
    * 昵稱
    */
    private String nickName;

    /**
    * 頭像
    */
    private String avatar;

    /**
    * 密碼
    */
    private String password;

    /**
    * 加密鹽
    */
    private String salt;

    /**
    * 郵箱
    */
    private String email;

    /**
    * 手機(jī)號(hào)
    */
    private String mobile;

    /**
    * 狀態(tài)  0:禁用   1:正常
    */
    private Object status;

    /**
    * 機(jī)構(gòu)ID
    */
    private Long deptId;

    /**
    * 創(chuàng)建人
    */
    private String createBy;

    /**
    * 創(chuàng)建時(shí)間
    */
    private Date createTime;

    /**
    * 更新人
    */
    private String lastUpdateBy;

    /**
    * 更新時(shí)間
    */
    private Date lastUpdateTime;

    /**
    * 是否刪除  -1:已刪除  0:正常
    */
    private Object delFlag;
}

測(cè)試類

    @Test
    void insert() {
        SysUser sysUser = new SysUser();
        sysUser.setName("zhangsan3");
        sysUser.setNickName("張三3");

        SysUser insert = sysUserService.insert(sysUser);
        System.out.println(insert);
    }

結(jié)果輸出:

SysUser(id=null, name=zhangsan3, nickName=張三3, avatar=null, password=null, salt=null, email=null, mobile=null, status=null, deptId=null, createBy=null, createTime=null, lastUpdateBy=null, lastUpdateTime=null, delFlag=null)

是的我們獲取到的是id=null,這顯然不符合我們的預(yù)期。于是修改代碼。只改測(cè)試類。比如輸入id=0。源碼如下:

    @Test
    void insert() {
        SysUser sysUser = new SysUser();
        sysUser.setId(0L);
        sysUser.setName("zhangsan6");
        sysUser.setNickName("張三6");

        SysUser insert = sysUserService.insert(sysUser);
        System.out.println(insert);
    }

再次運(yùn)行程序,控制臺(tái)輸出如下:

SysUser(id=0, name=zhangsan4, nickName=張三4, avatar=null, password=null, salt=null, email=null, mobile=null, status=null, deptId=null, createBy=null, createTime=null, lastUpdateBy=null, lastUpdateTime=null, delFlag=null)

嗯,好像確實(shí)輸出了id=0,符合我們的預(yù)期,但是真的是這樣嗎?我們看看數(shù)據(jù)庫(kù)限制是什么樣。

在這里插入圖片描述

沒(méi)錯(cuò),我們的真實(shí)id是38。這里就有問(wèn)題了。查閱相關(guān)資料說(shuō)是在實(shí)體類中添加@GeneratedValue(strategy = GenerationType.IDENTITY)就可以了。于是我們照做。修改實(shí)體類如下:

/**
 * 用戶管理(SysUser)實(shí)體類
 *
 * @author Chen
 * @since 2020-05-06 14:16:48
 */
@Data
@ApiModel("用戶管理")
public class SysUser implements Serializable {
    private static final long serialVersionUID = 993569543176442301L;

    /**
    * 編號(hào)
    */
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    /**
    * 用戶名
    */
    private String name;

    /**
    * 昵稱
    */
    private String nickName;

    /**
    * 頭像
    */
    private String avatar;

    /**
    * 密碼
    */
    private String password;

    /**
    * 加密鹽
    */
    private String salt;

    /**
    * 郵箱
    */
    private String email;

    /**
    * 手機(jī)號(hào)
    */
    private String mobile;

    /**
    * 狀態(tài)  0:禁用   1:正常
    */
    private Object status;

    /**
    * 機(jī)構(gòu)ID
    */
    private Long deptId;

    /**
    * 創(chuàng)建人
    */
    private String createBy;

    /**
    * 創(chuàng)建時(shí)間
    */
    private Date createTime;

    /**
    * 更新人
    */
    private String lastUpdateBy;

    /**
    * 更新時(shí)間
    */
    private Date lastUpdateTime;

    /**
    * 是否刪除  -1:已刪除  0:正常
    */
    private Object delFlag;
}

在這里插入圖片描述

主要就是改了這里。OK,繼續(xù)運(yùn)行程序,結(jié)果如下:

SysUser(id=0, name=zhangsan5, nickName=張三5, avatar=null, password=null, salt=null, email=null, mobile=null, status=null, deptId=null, createBy=null, createTime=null, lastUpdateBy=null, lastUpdateTime=null, delFlag=null)

這里的id還是0,什么鬼。再看看數(shù)據(jù)庫(kù)。

在這里插入圖片描述

明顯不是0。所以這里不能設(shè)置id的屬性。修改測(cè)試類。源碼如下:

    @Test
    void insert() {
        SysUser sysUser = new SysUser();
        sysUser.setName("zhangsan6");
        sysUser.setNickName("張三6");

        SysUser insert = sysUserService.insert(sysUser);
        System.out.println(insert);
    }

繼續(xù)運(yùn)行程序,結(jié)果如下:

SysUser(id=40, name=zhangsan6, nickName=張三6, avatar=null, password=null, salt=null, email=null, mobile=null, status=null, deptId=null, createBy=null, createTime=null, lastUpdateBy=null, lastUpdateTime=null, delFlag=null)

這次id=40了,查看數(shù)據(jù)庫(kù)。

在這里插入圖片描述

很明顯對(duì)上了。

3、總結(jié)

到此這篇關(guān)于tk.Mybatis 插入數(shù)據(jù)獲取Id問(wèn)題的文章就介紹到這了,更多相關(guān)tk.Mybatis 插入數(shù)據(jù)獲取Id內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java中的八種基本數(shù)據(jù)類型詳解

    Java中的八種基本數(shù)據(jù)類型詳解

    本文詳細(xì)講解了Java中的八種基本數(shù)據(jù)類型,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-03-03
  • Spring AOP日志框架實(shí)現(xiàn)過(guò)程圖解

    Spring AOP日志框架實(shí)現(xiàn)過(guò)程圖解

    這篇文章主要介紹了Spring AOP日志框架實(shí)現(xiàn)過(guò)程圖解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-09-09
  • Springboot3利用redis生成唯一訂單號(hào)的實(shí)現(xiàn)示例

    Springboot3利用redis生成唯一訂單號(hào)的實(shí)現(xiàn)示例

    本文主要介紹了Springboot3利用redis生成唯一訂單號(hào)的實(shí)現(xiàn)示例,包括UUID、雪花算法和數(shù)據(jù)庫(kù)約束,具有一定的參考價(jià)值,感興趣的可以了解一下
    2025-03-03
  • 聊聊spring繼承的問(wèn)題

    聊聊spring繼承的問(wèn)題

    這篇文章主要介紹了spring繼承的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • 在windows下揪出java程序占用cpu很高的線程并完美解決

    在windows下揪出java程序占用cpu很高的線程并完美解決

    這篇文章主要介紹了在windows下揪出java程序占用cpu很高的線程并完美解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-01-01
  • spring?boot自動(dòng)裝配之@ComponentScan注解用法詳解

    spring?boot自動(dòng)裝配之@ComponentScan注解用法詳解

    @ComponentScan的作用就是根據(jù)定義的掃描路徑,把符合掃描規(guī)則的類裝配到spring容器中,下面這篇文章主要給大家介紹了關(guān)于spring?boot自動(dòng)裝配之@ComponentScan注解用法的相關(guān)資料,需要的朋友可以參考下
    2023-04-04
  • Mybatis聯(lián)合查詢的實(shí)現(xiàn)方法

    Mybatis聯(lián)合查詢的實(shí)現(xiàn)方法

    本文主要介紹了 Mybatis聯(lián)合查詢的實(shí)現(xiàn)方法,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • 基于SpringBoot上傳任意文件功能的實(shí)現(xiàn)

    基于SpringBoot上傳任意文件功能的實(shí)現(xiàn)

    下面小編就為大家?guī)?lái)一篇基于SpringBoot上傳任意文件功能的實(shí)現(xiàn)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-08-08
  • java實(shí)現(xiàn)監(jiān)控rtsp流轉(zhuǎn)flv方法實(shí)例(前端播放,前后端代碼都有)

    java實(shí)現(xiàn)監(jiān)控rtsp流轉(zhuǎn)flv方法實(shí)例(前端播放,前后端代碼都有)

    這篇文章主要給大家介紹了關(guān)于java實(shí)現(xiàn)監(jiān)控rtsp流轉(zhuǎn)flv的相關(guān)資料,文中介紹的是前端播放,前后端代碼都有,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-06-06
  • Java中switch的三種用法方式小結(jié)

    Java中switch的三種用法方式小結(jié)

    這篇文章主要介紹了Java中switch的三種用法方式小結(jié),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-04-04

最新評(píng)論

色达县| 垫江县| 睢宁县| 丹凤县| 黄浦区| 宣威市| 石嘴山市| 临漳县| 濮阳县| 光泽县| 绵竹市| 上林县| 黄平县| 左云县| 晋江市| 桂平市| 肃北| 九江县| 通许县| 巴林左旗| 兖州市| 西安市| 巩留县| 家居| 辽中县| 康保县| 托克逊县| 青阳县| 安福县| 信丰县| 石河子市| 静宁县| 娄底市| 通化县| 夹江县| 曲阜市| 栾城县| 三亚市| 甘谷县| 鞍山市| 闵行区|