幾個註解說明(JPA註解,lombok外掛應用)
阿新 • • 發佈:2019-02-03
一、@DynamicUpdate
作用:動態更新updateTime,但是若更新的內容跟資料庫中的一致,則會優化,不做更新
是hibernate的註解,需要引入hibernate的依賴
二、@Data
作用:用此註解可以不用在程式碼中寫屬性的setter和getter方法,在打包的時候會自動生成
編譯後的class檔案,內容參考如下
需要引入lombok的依賴,且在idea上要安裝lombok plugin外掛
-
引入依賴
<dependency>
<groupId>org.springframework.boot</groupId
><artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
-
安裝外掛lombok plugin
三、@Slf4j 日誌註解
作用:此註解的型別是SOURCE,即在原檔案中有效,編譯後會被丟棄。編譯後會幫我們生成靜態常量 log物件,如下圖所示
使用說明 :在idea環境中需要安裝上述lombok外掛,才能直接使用log物件,否則會找不到log
@Component @ServerEndpoint("/webSocket") @Slf4j public class WebSocket { private Session session; private static CopyOnWriteArraySet<WebSocket> webSocketSet = new CopyOnWriteArraySet<>(); @OnOpen public void onOpen(Session session) { this.session = session; webSocketSet.add(this); log.info("【websocket訊息】有新的連線, 總數:{}", webSocketSet.size()); }
編譯後的效果
四、@DateTimeFormat
作用:springmvc返回的物件中有日期型別的屬性時,要用DateTimeFormat 宣告日期型別的格式,否則會出現400的問題。因為springmvc無法幫我們將Date型別的物件自動解析為json字串的形式