最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Spring?Data?JPA實(shí)現(xiàn)持久化存儲(chǔ)數(shù)據(jù)到數(shù)據(jù)庫的示例代碼

 更新時(shí)間:2022年04月27日 16:08:19   作者:嫣夜來  
Spring Data JPA是Spring基于JPA規(guī)范的基礎(chǔ)上封裝的?套 JPA 應(yīng)?框架,可使開發(fā)者?極簡的代碼即可實(shí)現(xiàn)對(duì)數(shù)據(jù)庫的訪問和操作。本文我們來了解如何用Spring?Data?JPA框架實(shí)現(xiàn)數(shù)據(jù)持久化存儲(chǔ)到數(shù)據(jù)庫,感興趣的可以了解一下

1.SpringBoot項(xiàng)目整合JPA

1.1 pom.xml依賴

<properties>
        <java.version>1.8</java.version>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <spring-boot.version>2.3.7.RELEASE</spring-boot.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
            <exclusions>
                <exclusion>
                    <groupId>org.junit.vintage</groupId>
                    <artifactId>junit-vintage-engine</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
    </dependencies>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-dependencies</artifactId>
                <version>${spring-boot.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>

1.2 application配置文件

application.yml文件如下

# 應(yīng)用名稱
spring:
  application:
    name: springboot-jpa01

  # jpa參數(shù)配置
  jpa:
    database: MySQL
    database-platform: org.hibernate.dialect.MySQL5InnoDBDialect
    show-sql: true
    hibernate:
      ddl-auto: update
  # 運(yùn)行環(huán)境設(shè)置
  profiles:
    active: dev

# 應(yīng)用服務(wù) WEB 訪問端口
server:
  port: 8080

application-dev.yml文件如下

# 應(yīng)用名稱
spring:
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://localhost:3306/yg-jpa?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&useSSL=false&serverTimezone=GMT%2B8
    username: root
    password: root

2.創(chuàng)建實(shí)體類

創(chuàng)建與數(shù)據(jù)庫表映射的實(shí)體類,綁定字段之間的對(duì)應(yīng)關(guān)系,如下

package com.kkarma.web.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data;
import org.hibernate.annotations.GenericGenerator;
import org.springframework.data.annotation.CreatedBy;
import org.springframework.data.annotation.CreatedDate;
import org.springframework.data.annotation.LastModifiedBy;
import org.springframework.data.annotation.LastModifiedDate;
import org.springframework.format.annotation.DateTimeFormat;

import javax.persistence.*;
import java.time.LocalDateTime;

/**
 * @Author: karma
 * @Date: 2022/3/31 0031 - 03 - 31 - 15:13
 * @Description: com.kkarma.web.entity
 * @version: 1.0
 */
@Entity
@Table(name = "sys_member")
@Data
public class Member {

    @Id()
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(name = "member_id")
    private Long memberId;

    @Column(name = "member_name", unique = true, nullable = false, length = 64)
    private String memberName;

    @Column(name = "password", length = 256)
    @JsonIgnore
    private String password;

    @Column(name = "dept_id")
    private Integer deptId;

    @Column(name = "realname", length = 64)
    private String realName;

    @Column(name = "avatar", length = 500)
    private String avatar;

    @Column(name = "phone", length = 11)
    private String phone;

    @Column(name = "email", length = 64)
    private String email;

    @Column(name = "gender", length = 1)
    private Integer gender;

    @CreatedDate
    @Column(name = "gmt_create", updatable = false)
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss")
    private LocalDateTime gmtCreate;

    @CreatedBy
    @Column(name = "created_by", updatable = false, length = 64)
    private String createdBy;

    @LastModifiedDate
    @Column(name = "gmt_modified")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss")
    private LocalDateTime gmtModified;

    @LastModifiedBy
    @Column(name = "updated_by", length = 64)
    private String updatedBy;

    @Column(name = "remark", length = 64)
    private String remark;
}

3.啟動(dòng)項(xiàng)目,測試驗(yàn)證

啟動(dòng)項(xiàng)目成功之后,會(huì)自動(dòng)在數(shù)據(jù)庫中創(chuàng)建數(shù)據(jù)庫表,如果創(chuàng)建數(shù)據(jù)庫表成功,說明JPA框架繼承和配置都是OK的。

以上就是Spring Data JPA實(shí)現(xiàn)持久化存儲(chǔ)數(shù)據(jù)到數(shù)據(jù)庫的示例代碼的詳細(xì)內(nèi)容,更多關(guān)于Spring Data JPA數(shù)據(jù)存儲(chǔ)的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • java的list集合排序自定義元素方式

    java的list集合排序自定義元素方式

    在Java中,對(duì)包含自定義元素的List集合進(jìn)行排序可以使用Collections.sort()方法,并結(jié)合自定義的比較器實(shí)現(xiàn),以Student類為例,通過實(shí)現(xiàn)Comparator接口來按學(xué)生年齡升序排序
    2024-12-12
  • Java中Boolean引發(fā)缺陷的解決

    Java中Boolean引發(fā)缺陷的解決

    本文主要介紹了Java中Boolean引發(fā)缺陷的解決,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-06-06
  • Ubuntu16.04 64位下JDK1.7的安裝教程

    Ubuntu16.04 64位下JDK1.7的安裝教程

    這篇文章主要為大家詳細(xì)介紹了Ubuntu16.04 64位下JDK1.7的安裝教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-09-09
  • Java判斷兩個(gè)集合是否具有交集及如何獲得交集詳解

    Java判斷兩個(gè)集合是否具有交集及如何獲得交集詳解

    這篇文章主要給大家介紹了關(guān)于Java判斷兩個(gè)集合是否具有交集及如何獲得交集的相關(guān)資料,文中通過圖文以及實(shí)例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-07-07
  • JDK21新特性Record?Patterns記錄模式詳解(最新推薦)

    JDK21新特性Record?Patterns記錄模式詳解(最新推薦)

    這篇文章主要介紹了JDK21新特性Record?Patterns記錄模式詳解,本JEP建立在Pattern?Matching?for?instanceof(JEP?394)的基礎(chǔ)上,該功能已在JDK?16中發(fā)布,它與Pattern?Matching?for?switch(JEP?441)共同演進(jìn),需要的朋友可以參考下
    2023-09-09
  • Java中線程死亡的幾種情況實(shí)例分析

    Java中線程死亡的幾種情況實(shí)例分析

    線程是進(jìn)程中的一個(gè)實(shí)體,是被系統(tǒng)獨(dú)立調(diào)度和分派的基本單位,線程自己不擁有系統(tǒng)資源,只擁有一點(diǎn)在運(yùn)行中必不可少的資源,但它可與同屬一個(gè)進(jìn)程的其它線程共享進(jìn)程所擁有的全部資源。下面這篇文章主要給大家介紹了Java線程死亡的幾種情況,需要的朋友可以參考下。
    2017-01-01
  • SpringBoot集成redis與session實(shí)現(xiàn)分布式單點(diǎn)登錄

    SpringBoot集成redis與session實(shí)現(xiàn)分布式單點(diǎn)登錄

    這篇文章主要介紹了SpringBoot集成redis與session實(shí)現(xiàn)分布式單點(diǎn)登錄,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-09-09
  • Java基礎(chǔ)將Bean屬性值放入Map中的實(shí)例

    Java基礎(chǔ)將Bean屬性值放入Map中的實(shí)例

    這篇文章主要介紹了Java基礎(chǔ)將Bean屬性值放入Map中的實(shí)例的相關(guān)資料,需要的朋友可以參考下
    2017-07-07
  • 簡述Java中throw-throws異常拋出

    簡述Java中throw-throws異常拋出

    任何Java代碼都可以拋出異常,本文主要介紹了Java中throw-throws異常拋出,具有一定的參考價(jià)值,感興趣的可以了解一下
    2021-08-08
  • MybatisPlus如何處理Mysql的json類型

    MybatisPlus如何處理Mysql的json類型

    這篇文章主要介紹了MybatisPlus如何處理Mysql的json類型,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-07-07

最新評(píng)論

登封市| 子洲县| 荥经县| 穆棱市| 澄城县| 门源| 三江| 昌江| 汕尾市| 余江县| 绥芬河市| 仙居县| 绩溪县| 辽阳县| 岳池县| 新乐市| 宾川县| 淮南市| 小金县| 客服| 大荔县| 齐齐哈尔市| 皋兰县| 习水县| 周宁县| 惠东县| 洛南县| 若羌县| 瑞昌市| 新余市| 安陆市| 合山市| 射洪县| 霍州市| 阜城县| 南汇区| 交口县| 鄂伦春自治旗| 崇义县| 扶余县| 石狮市|