欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

j2ee mybatis注解@Data,@TableName,@TableField使用方式

 更新時(shí)間:2024年04月17日 11:12:47   作者:大新軟件技術(shù)部  
這篇文章主要介紹了j2ee mybatis注解@Data,@TableName,@TableField使用方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

一、@Data

@Data注解的主要作用是提高代碼的簡(jiǎn)潔,使用這個(gè)注解可以省去實(shí)體類中大量的get()、 set()、 toString()等方法。

1、引入依賴

<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <version>1.18.4</version>
    <scope>provided</scope>
</dependency>

可以在IDEA編譯器中添加lombok插件,F(xiàn)ile -> Setting -> Plugins -> 搜索lombok

2、添加注解

@Data
@AllArgsConstructor
@NoArgsConstructor
public class Person {
    private String name;
    private String address;
    private Integer age;
    private String hobbit;
    private String phone;
}

自動(dòng)生成的相關(guān)方法get()、 set()、 toString()等方法

3、其他相關(guān)注解

  • @Data:注在類上,提供類的get、set、equals、hashCode、toString等方法
  • @AllArgsConstructor:注在類上,提供類的全參構(gòu)造
  • @NoArgsConstructor:注在類上,提供類的無(wú)參構(gòu)造
  • @Setter:注在屬性上,提供 set 方法
  • @Getter:注在屬性上,提供 get 方法
  • @EqualsAndHashCode:注在類上,提供對(duì)應(yīng)的 equals 和 hashCode 方法
  • @Log4j/@Slf4j:注在類上,提供對(duì)應(yīng)的 Logger 對(duì)象,變量名為 log

二、注解@TableName、@TableField

@TableName(value = …)

當(dāng)數(shù)據(jù)庫(kù)名與實(shí)體類名不一致或不符合駝峰命名時(shí),需要在此注解指定表名(不加這個(gè)注解默認(rèn)將實(shí)體類的小寫(xiě)形式在db中尋找

@TableField 字段注解,該注解用于標(biāo)識(shí)非主鍵的字段。將數(shù)據(jù)庫(kù)列與 JavaBean 中的屬性進(jìn)行映射

@TableName(value = "t_dish")
public class Dish implements Serializable {
 
    private static final long serialVersionUID = 1L;
 
    @TableId(value = "dish_id", type = IdType.AUTO)
    private Long id;
    @TableField("name")
    //菜品名稱
    private String name;
}

@TableId(type = …)

指定實(shí)體類的屬性為對(duì)應(yīng)的主鍵,主要有以下幾種:

// 數(shù)據(jù)庫(kù)ID自增
IdType.AUTO

// 該類型為未設(shè)置主鍵類型(默認(rèn))
IdType.NONE 
/**
 * 用戶輸入ID
 * <p>該類型可以通過(guò)自己注冊(cè)自動(dòng)填充插件進(jìn)行填充</p>
 */
IdType.INPUT


/* 以下3種類型、只有當(dāng)插入對(duì)象ID 為空,才自動(dòng)填充。 */
//1.全局唯一ID (idWorker)
IdType.ID_WORKER
 
//2.全局唯一ID (UUID)
IdType.UUID
 
//3.字符串全局唯一ID (idWorker 的字符串表示)
IdType.ID_WORKER_STR

@TableField注解

1、 主要用來(lái)解決實(shí)體類的字段名與數(shù)據(jù)庫(kù)中的字段名不匹配的問(wèn)題(數(shù)據(jù)庫(kù)user_addr,字段useraddr未駝峰)

2、 實(shí)體類中的屬性字段在表中不存在的問(wèn)題

// 用來(lái)解決數(shù)據(jù)庫(kù)中的字段和實(shí)體類的字段不匹配問(wèn)題
@TableField(value = "age")
 
// 用來(lái)解決實(shí)體類中有的屬性但是數(shù)據(jù)表中沒(méi)有的字段
@TableField(exist = false)  // 默認(rèn)為true 

三、MybatisPlus中@TableField注解的使用 

字段填充策略 FieldFill 

    /**
     * 創(chuàng)建時(shí)間
     */
    @TableField(fill = FieldFill.INSERT)
    private Date gmtCreat;
 
    /**
     * 修改人
     */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private Long modifierId;

對(duì)添加了注解@TableField(fill = FieldFill.INSERT_UPDATE)的字段在進(jìn)行插入(insert)和更新(update)時(shí)進(jìn)行自動(dòng)填充。

(解釋:后面會(huì)寫(xiě)配置自動(dòng)填充的配置類,該配置類的作用用于配置自動(dòng)填充的值)。

@TableField(exist=false)
 private String remark;

@TableField(exist=false)的作用

比如在實(shí)體類中有一個(gè)屬性為remark,但是在數(shù)據(jù)庫(kù)中沒(méi)有這個(gè)字段,但是在執(zhí)行插入操作時(shí)給實(shí)體類的remark屬性賦值了,那么可以通過(guò)在實(shí)體類的remark屬性上添加

總結(jié)

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

相關(guān)文章

  • 簡(jiǎn)述Mybatis增刪改查實(shí)例代碼

    簡(jiǎn)述Mybatis增刪改查實(shí)例代碼

    本文給大家分享編寫(xiě)一個(gè)簡(jiǎn)單的mybatis進(jìn)行插入數(shù)據(jù)的實(shí)例代碼,非常不錯(cuò)具有參考借鑒價(jià)值,感興趣的朋友一起看看吧
    2016-10-10
  • 基于Java代碼實(shí)現(xiàn)判斷春節(jié)、端午節(jié)、中秋節(jié)等法定節(jié)假日的方法

    基于Java代碼實(shí)現(xiàn)判斷春節(jié)、端午節(jié)、中秋節(jié)等法定節(jié)假日的方法

    這篇文章主要介紹了基于Java代碼實(shí)現(xiàn)判斷春節(jié)、端午節(jié)、中秋節(jié)等法定節(jié)假日的方法 的相關(guān)資料,需要的朋友可以參考下
    2016-01-01
  • Java并發(fā)系列之AbstractQueuedSynchronizer源碼分析(獨(dú)占模式)

    Java并發(fā)系列之AbstractQueuedSynchronizer源碼分析(獨(dú)占模式)

    這篇文章主要為大家詳細(xì)介紹了Java并發(fā)系列之AbstractQueuedSynchronizer源碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-02-02
  • Java利用跳躍表解決雙重隊(duì)列問(wèn)題詳解

    Java利用跳躍表解決雙重隊(duì)列問(wèn)題詳解

    這篇文章主要為大家詳細(xì)介紹了Java如何利用跳躍表來(lái)解決雙重隊(duì)列的問(wèn)題。本文通過(guò)一個(gè)簡(jiǎn)單的例題進(jìn)行了講解,感興趣的小伙伴可以了解一下
    2022-12-12
  • RestTemplate自定義ErrorHandler方式

    RestTemplate自定義ErrorHandler方式

    這篇文章主要介紹了RestTemplate自定義ErrorHandler方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-08-08
  • Java設(shè)計(jì)模式中的命令模式

    Java設(shè)計(jì)模式中的命令模式

    在軟件設(shè)計(jì)中,我們經(jīng)常需要向某些對(duì)象發(fā)送請(qǐng)求,但是并不知道請(qǐng)求的接收者是誰(shuí),也不知道被請(qǐng)求的操作是哪個(gè),我們只需在程序運(yùn)行時(shí)指定具體的請(qǐng)求接收者即可,此時(shí)可以使用命令模式來(lái)進(jìn)行設(shè)計(jì)
    2022-11-11
  • MySql多表查詢 事務(wù)及DCL

    MySql多表查詢 事務(wù)及DCL

    這篇文章主要介紹了MySql多表查詢 、事務(wù)、DCL的相關(guān)資料,需要的朋友可以參考下面文章內(nèi)容
    2021-09-09
  • Java實(shí)現(xiàn)度分秒坐標(biāo)轉(zhuǎn)十進(jìn)制度

    Java實(shí)現(xiàn)度分秒坐標(biāo)轉(zhuǎn)十進(jìn)制度

    隨著技術(shù)的發(fā)展,十進(jìn)制度因其精確性和便捷性在現(xiàn)代應(yīng)用中越來(lái)越受到青睞,下面我們就來(lái)看看如何使用Java實(shí)現(xiàn)度分秒坐標(biāo)轉(zhuǎn)十進(jìn)制度吧
    2024-12-12
  • IDEA去除xml文件的黃色背景的操作步驟

    IDEA去除xml文件的黃色背景的操作步驟

    這篇文章主要介紹了IDEA去除xml文件的黃色背景的方法,本文通過(guò)圖文結(jié)合的方式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考價(jià)值,感興趣的朋友可以參考下
    2023-12-12
  • 基于Spring Security實(shí)現(xiàn)對(duì)密碼進(jìn)行加密和校驗(yàn)

    基于Spring Security實(shí)現(xiàn)對(duì)密碼進(jìn)行加密和校驗(yàn)

    我們?cè)谌腴T(mén)案例中,其實(shí)已經(jīng)是一個(gè)非常簡(jiǎn)單的認(rèn)證,但是用戶名是寫(xiě)死的,密碼也需要從控制臺(tái)查看,很顯然實(shí)際中并不能這么做,下面的學(xué)習(xí)中,我們來(lái)實(shí)現(xiàn)基于內(nèi)存模型的認(rèn)證以及用戶的自定義認(rèn)證,密碼加密等內(nèi)容,需要的朋友可以參考下
    2024-07-07

最新評(píng)論