千家信息网

Springboot怎么根据实体类生成数据库表

发表于:2024-11-11 作者:千家信息网编辑
千家信息网最后更新 2024年11月11日,本篇内容介绍了"Springboot怎么根据实体类生成数据库表"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学
千家信息网最后更新 2024年11月11日Springboot怎么根据实体类生成数据库表

本篇内容介绍了"Springboot怎么根据实体类生成数据库表"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

目录
  • Springboot 实体类生成数据库表

    • 第一步:添加springboot-data-jpa和数据库的依赖关系

    • 第二步:编写yml文件的配置

    • 第三步:实体类中使用的注解

    • 第四步:启动项目是否生成表格

    • 第五步:启动项目即可

  • springboot继承JPA根据实体类生成数据库中的表

    • 1. pom中添加的依赖

    • 2. application.yml中配置jpa配置

    • 定义用户实体类,通过注解映射成数据库中的表

    • 启动springboot项目

Springboot 实体类生成数据库表

JPA:springboot -jpa:数据库的一系列的定义数据持久化的标准的体系

学习的目的是:

利用springboot实现对数据库的操作

第一步:添加springboot-data-jpa和数据库的依赖关系

        org.springframework.boot        spring-boot-starter-data-jpa                           mysql            mysql-connector-java        

第二步:编写yml文件的配置

server:  port: 8001spring:  application:    name: jih-manage  datasource:    name: test    url: jdbc:mysql://111.231.231.56/jih    username: root    password: root    type: com.alibaba.druid.pool.DruidDataSource    driver-class-name: com.mysql.jdbc.Driver  jpa:    hibernate:      ddl-auto: update    show-sql: true

第三步:实体类中使用的注解

  • @Entity 实体类的注解

  • @Id 映射到表格中id的属性

  • @Gernertervalue 添加其自增的属性

第四步:启动项目是否生成表格

补充的知识点:

根据实体类生成数据库的表配置文件有俩种方式分别是yml和properties文件进行配置

yml文件:

spring:    datasource:        driver-class-name:  com.mysql.jdbc.Driver        url: jdbc:mysql://127.0.0.1:3306/facemap        username: root        password: root    jpa:        hibernate:            ddl-auto: update            show-sql: true

properties文件的写法:

spring.datasource.driver-class-name=com.mysql.jdbc.Driverspring.datasource.url=jdbc:mysql://localhost:3306/dbgirl?characterEncoding=utf8spring.datasource.username=rootspring.datasource.password=rootspring.jpa.show-sql= truespring.jpa.hibernate.ddl-auto=updatespring.jpa.hibernate.dialect=org.hibernate.dialect.MySQL5Dialectspring.jackson.serialization.indent_output=false

有更加详细介绍

参考网址:

//www.yisu.com/article/222622.htm

实体类的写法:

package com.example.demo;import javax.persistence.Entity;import javax.persistence.GeneratedValue;@Entity //实体类的注解public class Girl {    @Id //@id注意选择这个javax.persistence    @GeneratedValue    private  Integer  id;    private  String   cupSize;    private  Integer   age;    public Girl() {    }    public Integer getId() {        return id;    }    public void setId(Integer id) {        this.id = id;    }    public String getCupSize() {        return cupSize;    }    public void setCupSize(String cupSize) {        this.cupSize = cupSize;    }    public Integer getAge() {        return age;    }    public void setAge(Integer age) {        this.age = age;    }}

第五步:启动项目即可

完成~

springboot继承JPA根据实体类生成数据库中的表

首先搭建springboot框架。搭建完成之后:

1. pom中添加的依赖

                    org.springframework.boot            spring-boot-starter-data-jdbc                            org.springframework.boot            spring-boot-starter-web                            org.mybatis.spring.boot            mybatis-spring-boot-starter            2.1.1                            org.springframework.boot            spring-boot-starter-data-jpa                                     mysql            mysql-connector-java            8.0.15                             org.projectlombok            lombok            true                            org.springframework.boot            spring-boot-starter-test            test                                                org.junit.vintage                    junit-vintage-engine                                        

2. application.yml中配置jpa配置

server:  port: 8080 spring:  datasource:    type: com.zaxxer.hikari.HikariDataSource    driver-class-name: com.mysql.cj.jdbc.Driver    url: jdbc:mysql://localhost:3306/h6mall?useUnicode=true&characterEncoding=utf-8&useSSL=false    username: root    password: 123456    hikari:      minimum-idle: 5      idle-timeout: 180000      maximum-pool-size: 10      auto-commit: true      pool-name: MyHikariCP      connection-timeout: 30000  jpa:    hibernate:      ddl-auto: update    show-sql: true

其中jpa下的jpa.hibernate.ddl-auto属性值有如下:

  • ddl-auto:create (每次运行该程序,没有表格会新建表格,表内有数据会清空)

  • ddl-auto:create-drop (每次程序结束的时候会清空表)

  • ddl-auto:update (每次运行程序,没有表格会新建表格,表内有数据不会清空,只会更新)

  • ddl-auto:validate(运行程序会校验数据与数据库的字段类型是否相同,不同会报错)

一般情况下选择update,其他属性值慎用!

定义用户实体类,通过注解映射成数据库中的表

 import javax.persistence.*; @Entity@Table(name = "user")@Datapublic class User {     @Id    @GeneratedValue    private Long id;     //name属性为表的字段名。length为字段的长度    @Column(length = 30, name = "userId")    private String userId;     @Column(name = "userName", length = 20, columnDefinition="varchar(100) COMMENT '用户名'")    private String userName;     @Column(name = "phone", length = 20)    private String phone;     @Column(name = "password", length = 30)    private String password;     @Column(name = "userRealName", length = 20)    private String userRealName;     @Column(name = "address", length = 20)    private String address;}

启动springboot项目

可看到控制台上显示了创建表中的

然后查看数据库中是否生成了对应的表:

"Springboot怎么根据实体类生成数据库表"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

0