javabean?中使用@Transient屬性處理臨時(shí)字段
當(dāng)我們使用spring data jpa開(kāi)發(fā)的時(shí)候,會(huì)將實(shí)體類中的成員變量與表中的字段一一對(duì)應(yīng),當(dāng)我們?cè)趯?shí)體類中加上一個(gè)數(shù)據(jù)庫(kù)表沒(méi)有對(duì)應(yīng)字段的成員變量的時(shí)候,此時(shí)我們只要在這個(gè)成員變量上加上注解@Transient
@Transient表示該屬性并非一個(gè)到數(shù)據(jù)庫(kù)表的字段的映射,ORM框架將忽略該屬性. 如果一個(gè)屬性并非數(shù)據(jù)庫(kù)表的字段映射,務(wù)必將其標(biāo)示為@Transient,否則,ORM框架默認(rèn)其注解為@Basic比如現(xiàn)在有實(shí)體類Message,但是我想在使用它時(shí)想要多用一個(gè)字段來(lái)接收未讀消息的數(shù)量 unReadCount,此時(shí)只要在字段前加上@Transient注解就可以了。當(dāng)數(shù)據(jù)庫(kù)表字段與result不一致時(shí)用@Column注解
依賴包
import javax.persistence.Transient;
代碼
package com.xy.base.domain;
import lombok.Data;
import javax.persistence.Column;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Transient;
import java.util.Date;
import java.util.List;
@Entity
@Table(name = "T_SS_LLJLB")
@Data
@Accessors(chain = true)
public class TSsLljlb extends BaseEntity {
public static final String TABLE = "T_SS_LLJLB";
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id", nullable = false)
private Integer id;
@ApiModelProperty(value = "操作人")
@Column(name = "user_id", length = 50)
private String userId;
@ApiModelProperty(value = "攝像機(jī)ID")
@Column(name = "camera_id", length = 50)
private String cameraId;
@ApiModelProperty(value = "攝像機(jī)名稱")
@Column(name = "camera_name", length = 50)
private String cameraName;
@ApiModelProperty(value = "設(shè)備ID")
@Column(name = "device_id", length = 50)
private String deviceId;
@ApiModelProperty(value = "通道ID")
@Column(name = "channel_id", length = 50)
private String channelId;
@ApiModelProperty(value = "線路編碼")
@Column(name = "line_code", length = 50)
private String lineCode;
@ApiModelProperty(value = "線路名稱")
@Column(name = "line_name", length = 50)
private String lineName;
@ApiModelProperty(value = "操作類型,1-拉流 0-關(guān)流")
@Column(name = "operation")
private Integer operation;
@ApiModelProperty(value = "拉流時(shí)間(頁(yè)面請(qǐng)求視頻流的時(shí)間)")
@Column(name = "pull_time")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date pullTime;
@ApiModelProperty(value = "推流時(shí)間(頁(yè)面獲取視頻URL的時(shí)間)")
@Column(name = "push_time")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date pushTime;
@ApiModelProperty(value = "頁(yè)面關(guān)流時(shí)間(頁(yè)面請(qǐng)求關(guān)閉視頻流的時(shí)間)")
@Column(name = "page_close_time")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date pageCloseTime;
@ApiModelProperty(value = "服務(wù)關(guān)流時(shí)間(分轉(zhuǎn)發(fā)服務(wù)實(shí)際關(guān)閉視頻流的時(shí)間)")
@Column(name = "service_close_time")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date serviceCloseTime;
@ApiModelProperty(value = "取流狀態(tài)(取流成功-200,取流失敗-報(bào)錯(cuò)編碼)")
@Column(name = "status")
private Integer status;
@ApiModelProperty(value = "創(chuàng)建記錄時(shí)間")
@Column(name = "create_time")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date createTime;
@ApiModelProperty(value = "更新記錄時(shí)間")
@Column(name = "update_time")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date updateTime;
@ApiModelProperty(value = "臨時(shí)記錄攝像頭拉流次數(shù)")
@Transient
private Integer num;
public TSsLljlb initTSsLljlb(TSsLljlb tSsLljlb) {
return this.setCreateTime(new Date());
}
}到此這篇關(guān)于javabean 中使用@Transient屬性處理臨時(shí)字段的文章就介紹到這了,更多相關(guān)javabean臨時(shí)字段的處理內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java中實(shí)現(xiàn)日期時(shí)間字符串轉(zhuǎn)換為Date對(duì)象的方法
在 Java 編程中,日期時(shí)間的處理是一項(xiàng)常見(jiàn)且重要的任務(wù),無(wú)論是數(shù)據(jù)存儲(chǔ)、日志記錄還是業(yè)務(wù)邏輯處理,準(zhǔn)確地表示和操作日期時(shí)間都是不可或缺的,本文給大家介紹了Java中實(shí)現(xiàn)日期時(shí)間字符串轉(zhuǎn)換為Date對(duì)象的方法,需要的朋友可以參考下2025-01-01
Java服務(wù)器主機(jī)信息監(jiān)控工具類的示例代碼
這篇文章主要介紹了Java服務(wù)器主機(jī)信息監(jiān)控工具類的示例代碼,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-04-04
Java 獲取當(dāng)前類名和方法名的實(shí)現(xiàn)方法
這篇文章主要介紹了 Java 獲取當(dāng)前類名和方法名的實(shí)現(xiàn)方法的相關(guān)資料,這里不僅提供了實(shí)現(xiàn)方法并比較幾種方法的效率,需要的朋友可以參考下2017-07-07
Java使用String.format方法格式化字符串的示例詳解
在編程過(guò)程中,我們經(jīng)常需要?jiǎng)?chuàng)建格式化的字符串來(lái)滿足特定的需求,比如生成用戶友好的消息、構(gòu)建報(bào)告或是輸出調(diào)試信息,Java 提供了一個(gè)強(qiáng)大的工具——String.format 方法,本文給大家介紹了Java使用String.format方法格式化字符串的示例,需要的朋友可以參考下2024-11-11
Spring?Boot?2.6.x整合Swagger啟動(dòng)失敗報(bào)錯(cuò)問(wèn)題的完美解決辦法
這篇文章主要給大家介紹了關(guān)于Spring?Boot?2.6.x整合Swagger啟動(dòng)失敗報(bào)錯(cuò)問(wèn)題的完美解決辦法,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2022-03-03
springboot自帶的緩存@EnableCaching用法
這篇文章主要介紹了springboot自帶的緩存@EnableCaching用法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-08-08
SpringBoot整合Minio實(shí)現(xiàn)文件上傳和讀取功能
最近有一個(gè)需求是關(guān)于視頻上傳播放的,需要設(shè)計(jì)一個(gè)方案,中間談到了Minio這個(gè)技術(shù),于是來(lái)學(xué)習(xí)一下,所以本文給大家介紹了SpringBoot整合Minio實(shí)現(xiàn)文件上傳和讀取功能,文中有詳細(xì)的代碼示例供大家參考,需要的朋友可以參考下2024-07-07
SpringBoot?替換?if?的參數(shù)校驗(yàn)示例代碼
Spring?Validation是對(duì)hibernate?validation的二次封裝,用于支持spring?mvc參數(shù)自動(dòng)校驗(yàn),接下來(lái),我們以spring-boot項(xiàng)目為例,介紹Spring?Validation的使用,需要的朋友可以參考下2022-12-12
IDEA?設(shè)置?SpringBoot?logback?彩色日志的解決方法?附配置文件
這篇文章主要介紹了IDEA?設(shè)置?SpringBoot?logback?彩色日志(附配置文件)的操作方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-12-12

