日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

JPA的基本注解

發(fā)布時(shí)間:2025/3/19 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JPA的基本注解 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

場(chǎng)景

JPA入門(mén)簡(jiǎn)介與搭建HelloWorld(附代碼下載):

https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/103473937

在上面搭建JPA的HelloWorld時(shí)在實(shí)體類(lèi)中用到了一些注解

package com.badao.jpa.helloworld;import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; import javax.persistence.Table;@Entity @Table(name="JPA_CUSTOMERS") public class Customer {private Integer id;private String lastName;private String email;private int age;@GeneratedValue(strategy = GenerationType.IDENTITY)@Idpublic Integer getId() {return id;}public void setId(Integer id) {this.id = id;}@Column(name="LAST_NAME")public String getLastName() {return lastName;}public void setLastName(String lastName) {this.lastName = lastName;}public String getEmail() {return email;}public void setEmail(String email) {this.email = email;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}}

那么除此之外JPA還有哪些基本注解

注:

博客主頁(yè):
https://blog.csdn.net/badao_liumang_qizhi
關(guān)注公眾號(hào)
霸道的程序猿
獲取編程相關(guān)電子書(shū)、教程推送與免費(fèi)下載。

實(shí)現(xiàn)

@Entity

@Entity 標(biāo)注用于實(shí)體類(lèi)聲明語(yǔ)句之前,指出該Java 類(lèi)為實(shí)體類(lèi),將映射到指定的數(shù)據(jù)庫(kù)表。如聲明一個(gè)實(shí)體類(lèi) Customer,它將映射到數(shù)據(jù)庫(kù)中的 customer 表上。

@Table

當(dāng)實(shí)體類(lèi)與其映射的數(shù)據(jù)庫(kù)表名不同名時(shí)需要使用 @Table 標(biāo)注說(shuō)明,該標(biāo)注與 @Entity 標(biāo)注并列使用,置于實(shí)體類(lèi)聲明語(yǔ)句之前,可寫(xiě)于單獨(dú)語(yǔ)句行,也可與聲明語(yǔ)句同行。
@Table 標(biāo)注的常用選項(xiàng)是 name,用于指明數(shù)據(jù)庫(kù)的表名
@Table標(biāo)注還有一個(gè)兩個(gè)選項(xiàng) catalog 和 schema 用于設(shè)置表所屬的數(shù)據(jù)庫(kù)目錄或模式,通常為數(shù)據(jù)庫(kù)名。uniqueConstraints 選項(xiàng)用于設(shè)置約束條件,通常不須設(shè)置。

@Id

@Id 標(biāo)注用于聲明一個(gè)實(shí)體類(lèi)的屬性映射為數(shù)據(jù)庫(kù)的主鍵列。該屬性通常置于屬性聲明語(yǔ)句之前,可與聲明語(yǔ)句同行,也可寫(xiě)在單獨(dú)行上。
@Id標(biāo)注也可置于屬性的getter方法之前。

@GeneratedValue

@GeneratedValue? 用于標(biāo)注主鍵的生成策略,通過(guò) strategy 屬性指定。默認(rèn)情況下,JPA 自動(dòng)選擇一個(gè)最適合底層數(shù)據(jù)庫(kù)的主鍵生成策略:SqlServer 對(duì)應(yīng) identity,MySQL 對(duì)應(yīng) auto increment。


在 javax.persistence.GenerationType 中定義了以下幾種可供選擇的策略:
IDENTITY:采用數(shù)據(jù)庫(kù) ID自增長(zhǎng)的方式來(lái)自增主鍵字段,Oracle 不支持這種方式;
AUTO: JPA自動(dòng)選擇合適的策略,是默認(rèn)選項(xiàng);
SEQUENCE:通過(guò)序列產(chǎn)生主鍵,通過(guò) @SequenceGenerator 注解指定序列名,MySql 不支持這種方式
TABLE:通過(guò)表產(chǎn)生主鍵,框架借由表模擬序列產(chǎn)生主鍵,使用該策略可以使應(yīng)用更易于數(shù)據(jù)庫(kù)移植。

@Basic

@Basic 表示一個(gè)簡(jiǎn)單的屬性到數(shù)據(jù)庫(kù)表的字段的映射,對(duì)于沒(méi)有任何標(biāo)注的 getXxxx() 方法,默認(rèn)即為@Basic
fetch: 表示該屬性的讀取策略,有 EAGER 和 LAZY 兩種,分別表示主支抓取和延遲加載,默認(rèn)為 EAGER.
optional:表示該屬性是否允許為null, 默認(rèn)為true

@Column

當(dāng)實(shí)體的屬性與其映射的數(shù)據(jù)庫(kù)表的列不同名時(shí)需要使用@Column 標(biāo)注說(shuō)明,該屬性通常置于實(shí)體的屬性聲明語(yǔ)句之前,還可與 @Id 標(biāo)注一起使用。
@Column 標(biāo)注的常用屬性是 name,用于設(shè)置映射數(shù)據(jù)庫(kù)表的列名。此外,該標(biāo)注還包含其它多個(gè)屬性,如:unique 、nullable、length 等。
@Column 標(biāo)注的 columnDefinition 屬性: 表示該字段在數(shù)據(jù)庫(kù)中的實(shí)際類(lèi)型.通常 ORM 框架可以根據(jù)屬性類(lèi)型自動(dòng)判斷數(shù)據(jù)庫(kù)中字段的類(lèi)型,但是對(duì)于Date類(lèi)型仍無(wú)法確定數(shù)據(jù)庫(kù)中字段類(lèi)型究竟是DATE,TIME還是TIMESTAMP.此外,String的默認(rèn)映射類(lèi)型為VARCHAR, 如果要將 String 類(lèi)型映射到特定數(shù)據(jù)庫(kù)的 BLOB 或TEXT 字段類(lèi)型.
@Column標(biāo)注也可置于屬性的getter方法之前

@Transient

表示該屬性并非一個(gè)到數(shù)據(jù)庫(kù)表的字段的映射,ORM框架將忽略該屬性.
如果一個(gè)屬性并非數(shù)據(jù)庫(kù)表的字段映射,就務(wù)必將其標(biāo)示為@Transient,否則,ORM框架默認(rèn)其注解為@Basic

@Temporal

在核心的 Java API 中并沒(méi)有定義 Date 類(lèi)型的精度(temporal precision).? 而在數(shù)據(jù)庫(kù)中,表示 Date 類(lèi)型的數(shù)據(jù)有 DATE, TIME, 和 TIMESTAMP 三種精度(即單純的日期,時(shí)間,或者兩者 兼?zhèn)?. 在進(jìn)行屬性映射時(shí)可使用@Temporal注解來(lái)調(diào)整精度.


?


?

與50位技術(shù)專(zhuān)家面對(duì)面20年技術(shù)見(jiàn)證,附贈(zèng)技術(shù)全景圖

總結(jié)

以上是生活随笔為你收集整理的JPA的基本注解的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产区免费观看 | 国产老妇视频 | 国产偷自拍视频 | 成人免费观看网站 | 久久精品国产亚洲AV黑人 | 91网页版 | 日本在线三级 | 大尺度做爰呻吟舌吻网站 | 涩涩免费网站 | 51av视频 | 在线xxxxx| brazzers欧美极品少妇 | 欧美aa | 久久久久夜夜夜精品国产 | 激情亚洲色图 | 国产情侣在线视频 | 国产做a | 这里只有精品在线播放 | 国产剧情av在线播放 | 日本不卡一区视频 | 欧洲av网站 | 亚洲毛片网站 | 人禽l交视频在线播放 视频 | 26uuu成人网| 在线观看视频一区二区三区 | 欧美日本韩国一区二区 | 欧美放荡性医生videos | 日本美女黄色 | 国产欧美日韩精品一区二区三区 | 欧美日韩激情视频在线观看 | julia在线播放88mav | 国产精品久久国产愉拍 | 亚洲午夜在线播放 | 欧美少妇性生活 | a级免费网站| 日本高清无吗 | 欧美极品一区二区三区 | 欧美激情国产日韩精品一区18 | 狠狠躁18三区二区一区传媒剧情 | 三级网站免费观看 | 日韩在线小视频 | 天天干天天爽 | 日本黄网站色大片免费观看 | 污污的视频软件 | 天天夜夜骑 | 九一网站在线观看 | 青娱网电信一区电信二区电信三区 | www四虎 | 午夜影院在线观看 | 日本xxxxxxxxx| 精品国产一区二区三区在线观看 | 俄罗斯porn| 亚洲欧洲成人精品久久一码二码 | 天天摸天天干 | 青青精品| 十八禁视频网站在线观看 | 日本高清有码 | 丝袜老师扒开让我了一夜漫画 | 国产无套视频 | 欧美色精品在线 | 亚洲乱乱 | 天天色综网 | 一区二区中文字幕在线观看 | 国产深喉视频一区二区 | 边啃奶头边躁狠狠躁 | 男女黄床上色视频免费的软件 | 亚洲片在线观看 | 黄色在线视频观看 | 欧美黄频 | 铠甲勇士猎铠 | 国产东北真实交换多p免视频 | 欧美伦理一区二区 | 真实的国产乱xxxx在线 | 69超碰 | 做爰视频毛片视频 | 久热国产视频 | 天天澡天天狠天天天做 | 久综合 | 国产三级在线观看完整版 | a级国产视频 | 91小视频在线 | 亚洲欧美精选 | 亚洲精品一区二区三区在线观看 | 五月天黄色小说 | 久久精品无码Av中文字幕 | 成年人免费观看网站 | 久精品免费视频 | 国产综合亚洲精品一区二 | 国产精品毛片一区二区 | 亚洲在线观看av | 日韩一级伦理片 | 欧美精品黑人猛交高潮 | 91精品91久久久中77777 | 可以免费看黄的网站 | 97在线观看免费高清 | 麻豆三级在线观看 | 色哥网 | www.亚洲天堂 | 自拍1页 |