好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

Spring Data JPA实现持久化存储数据到数据库的示例代码

1.SpringBoot项目整合JPA

1.1 pom.xml依赖

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

< 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文件如下

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

# 应用名称

spring:

   application:

     name: springboot-jpa01

 

   # jpa参数配置

   jpa:

     database: MySQL

     database-platform: org.hibernate.dialect.MySQL5InnoDBDialect

     show-sql: true

     hibernate:

       ddl-auto: update

   # 运行环境设置

   profiles:

     active: dev

 

# 应用服务 WEB 访问端口

server:

   port: 8080

application-dev.yml文件如下

?

1

2

3

4

5

6

7

# 应用名称

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.创建实体类

创建与数据库表映射的实体类,绑定字段之间的对应关系,如下

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

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.启动项目,测试验证

启动项目成功之后,会自动在数据库中创建数据库表,如果创建数据库表成功,说明JPA框架继承和配置都是OK的。

以上就是Spring Data JPA实现持久化存储数据到数据库的示例代码的详细内容,更多关于Spring Data JPA数据存储的资料请关注其它相关文章!

原文链接:https://blog.csdn.net/qq_41865652/article/details/123877753

查看更多关于Spring Data JPA实现持久化存储数据到数据库的示例代码的详细内容...

  阅读:16次