91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

JPA怎么設置表名和實體名

發布時間:2021-11-22 11:52:39 來源:億速云 閱讀:205 作者:iii 欄目:開發技術

這篇文章主要介紹“JPA怎么設置表名和實體名”,在日常操作中,相信很多人在JPA怎么設置表名和實體名問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”JPA怎么設置表名和實體名”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

JPA設置表名和實體名,表字段與實體字段的對應

首先 你的jpaProperties配置項中要有

<prop key="hibernate.hbm2ddl.auto">update</prop>

這樣就可以直接有對象映射為表結構,實現面向對象向數據庫轉化。

實體的名字可以和表名字不一樣,字段名字和實體的名字也可以不一樣。

package com.shiroweb.entitys; 
import java.util.Date; 
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="shiro_user")//設置數據庫中表名字
public class ShiroUser {
 @Id
 @GeneratedValue(strategy = GenerationType.IDENTITY)
 private Long id;
 @Column(name="USER_NAME")<span >//設置數據庫中字段名字,也可以設置長度,是否為空等屬性</span>
 private String username;
 @Column(name="PASS_WORD")
 private String password;
 @Column(name="CREATE_DATE")
 private Date createDate;
 @Column(name="USER_ID")
 private String userId; 
 public String getUserId() {
  return userId;
 }
 
 public void setUserId(String userId) {
  this.userId = userId;
 }
 
 public Long getId() {
  return id;
 }
 
 public void setId(Long id) {
  this.id = id;
 }
 
 public String getUsername() {
  return username;
 }
 
 public void setUsername(String username) {
  this.username = username;
 }
 
 public String getPassword() {
  return password;
 }
 
 public void setPassword(String password) {
  this.password = password;
 }
 
 public Date getCreateDate() {
  return createDate;
 }
 
 public void setCreateDate(Date createDate) {
  this.createDate = createDate;
 } 
}

JPA數據庫表實體命名規則

Unknown column 'user0_.create_time' in 'field list'

數據庫,表字段命名是駝峰命名法(createTime),Spring data jpa 在操作表的時候,生成的sql語句中卻是create_time, 表字段不對照,

Spring data jpa基于hibernate-core-5.2.16.final.jar

這是由于jpa中hibernate的字段全名策略引起的,默認是SpringPhysicalNamingStrategy,在hibernate的包:org.hibernate.boot.model.naming中有一堆的命名策略,當然也可以實現

PhysicalNamingStrategy自定義實現。

application.properties 寫法

1、無修改命名

spring.jpa.hibernate.naming.physical-strategy=org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl

2、遇到大寫字母 加”_”的命名

spring.jpa.hibernate.naming.physical-strategy=org.springframework.boot.orm.jpa.hibernate.SpringPhysicalNamingStrategy

到此,關于“JPA怎么設置表名和實體名”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

jpa
AI

双鸭山市| 积石山| 进贤县| 平南县| 达州市| 自治县| 阿荣旗| 铁岭县| 洱源县| 凤阳县| 太仓市| 建昌县| 施甸县| 井研县| 门头沟区| 平谷区| 新建县| 梨树县| 静宁县| 桦甸市| 黔西县| 烟台市| 花莲县| 全南县| 庄浪县| 仁怀市| 塔城市| 阿瓦提县| 云和县| 玉山县| 常熟市| 英超| 中西区| 广昌县| 和田市| 揭西县| 崇明县| 称多县| 洮南市| 勐海县| 柏乡县|