请选择 进入手机版 | 继续访问电脑版

[java] Springboot怎样 根据实体类天生 数据库表

[复制链接]
查看129 | 回复16 | 2021-9-14 08:18:13 | 显示全部楼层 |阅读模式
目次

Springboot 实体类天生 数据库表

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

学习的目标 是:

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

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

  1. <dependency>
  2. <groupId>org.springframework.boot</groupId>
  3. <artifactId>spring-boot-starter-data-jpa</artifactId>
  4. </dependency>
  5. <dependency>
  6. <groupId>mysql</groupId>
  7. <artifactId>mysql-connector-java</artifactId>
  8. </dependency>
复制代码

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

  1. server:
  2. port: 8001
  3. spring:
  4. application:
  5. name: jih-manage
  6. datasource:
  7. name: test
  8. url: jdbc:mysql://111.231.231.56/jih
  9. username: root
  10. password: root
  11. type: com.alibaba.druid.pool.DruidDataSource
  12. driver-class-name: com.mysql.jdbc.Driver
  13. jpa:
  14. hibernate:
  15. ddl-auto: update
  16. show-sql: true
复制代码

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

    1. @Entity
    复制代码
    实体类的注解
    1. @Id
    复制代码
    映射到表格中id的属性
    1. @Gernertervalue
    复制代码
    添加其自增的属性

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

补充的知识点:

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

yml文件:

  1. spring:
  2. datasource:
  3. driver-class-name: com.mysql.jdbc.Driver
  4. url: jdbc:mysql://127.0.0.1:3306/facemap
  5. username: root
  6. password: root
  7. jpa:
  8. hibernate:
  9. ddl-auto: update
  10. show-sql: true
复制代码

properties文件的写法:

  1. spring.datasource.driver-class-name=com.mysql.jdbc.Driver
  2. spring.datasource.url=jdbc:mysql://localhost:3306/dbgirl?characterEncoding=utf8
  3. spring.datasource.username=root
  4. spring.datasource.password=root
  5. spring.jpa.show-sql= true
  6. spring.jpa.hibernate.ddl-auto=update
  7. spring.jpa.hibernate.dialect=org.hibernate.dialect.MySQL5Dialect
  8. spring.jackson.serialization.indent_output=false
复制代码

有更加具体 先容

参考网址:

//www.jb51.net/article/222622.htm

实体类的写法:

  1. package com.example.demo;
  2. import javax.persistence.Entity;
  3. import javax.persistence.GeneratedValue;
  4. @Entity //实体类的注解
  5. public class Girl {
  6. @Id //@id注意选择这个javax.persistence
  7. @GeneratedValue
  8. private Integer id;
  9. private String cupSize;
  10. private Integer age;
  11. public Girl() {
  12. }
  13. public Integer getId() {
  14. return id;
  15. }
  16. public void setId(Integer id) {
  17. this.id = id;
  18. }
  19. public String getCupSize() {
  20. return cupSize;
  21. }
  22. public void setCupSize(String cupSize) {
  23. this.cupSize = cupSize;
  24. }
  25. public Integer getAge() {
  26. return age;
  27. }
  28. public void setAge(Integer age) {
  29. this.age = age;
  30. }
  31. }
复制代码

第五步:启动项目即可

完成~

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

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

1. pom中添加的依赖

  1. <dependencies>
  2. <dependency>
  3. <groupId>org.springframework.boot</groupId>
  4. <artifactId>spring-boot-starter-data-jdbc</artifactId>
  5. </dependency>
  6. <dependency>
  7. <groupId>org.springframework.boot</groupId>
  8. <artifactId>spring-boot-starter-web</artifactId>
  9. </dependency>
  10. <dependency>
  11. <groupId>org.mybatis.spring.boot</groupId>
  12. <artifactId>mybatis-spring-boot-starter</artifactId>
  13. <version>2.1.1</version>
  14. </dependency>
  15. <dependency>
  16. <groupId>org.springframework.boot</groupId>
  17. <artifactId>spring-boot-starter-data-jpa</artifactId>
  18. </dependency>
  19. <!--mysql-connection-->
  20. <dependency>
  21. <groupId>mysql</groupId>
  22. <artifactId>mysql-connector-java</artifactId>
  23. <version>8.0.15</version>
  24. </dependency>
  25. <dependency>
  26. <groupId>org.projectlombok</groupId>
  27. <artifactId>lombok</artifactId>
  28. <optional>true</optional>
  29. </dependency>
  30. <dependency>
  31. <groupId>org.springframework.boot</groupId>
  32. <artifactId>spring-boot-starter-test</artifactId>
  33. <scope>test</scope>
  34. <exclusions>
  35. <exclusion>
  36. <groupId>org.junit.vintage</groupId>
  37. <artifactId>junit-vintage-engine</artifactId>
  38. </exclusion>
  39. </exclusions>
  40. </dependency>
  41. </dependencies>
复制代码

2. application.yml中设置 jpa设置

  1. server:
  2. port: 8080
  3. spring:
  4. datasource:
  5. type: com.zaxxer.hikari.HikariDataSource
  6. driver-class-name: com.mysql.cj.jdbc.Driver
  7. url: jdbc:mysql://localhost:3306/h5mall?useUnicode=true&characterEncoding=utf-8&useSSL=false
  8. username: root
  9. password: 123456
  10. hikari:
  11. minimum-idle: 5
  12. idle-timeout: 180000
  13. maximum-pool-size: 10
  14. auto-commit: true
  15. pool-name: MyHikariCP
  16. connection-timeout: 30000
  17. jpa:
  18. hibernate:
  19. ddl-auto: update
  20. show-sql: true
复制代码

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

    1. ddl-auto:create
    复制代码
    (每次运行该程序,没有表格会新建表格,表内有数据会清空)
    1. ddl-auto:create-drop
    复制代码
    (每次程序竣事 的时间 会清空表)
    1. ddl-auto:update
    复制代码
    (每次运行程序,没有表格会新建表格,表内有数据不会清空,只会更新)
    1. ddl-auto:validate
    复制代码
    (运行程序会校验数据与数据库的字段范例 是否雷同 ,不同会报错)

一样寻常 环境 下选择update,其他属性值慎用!

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

  1. import javax.persistence.*;
  2. @Entity
  3. @Table(name = "user")
  4. @Data
  5. public class User {
  6. @Id
  7. @GeneratedValue
  8. private Long id;
  9. //name属性为表的字段名。length为字段的长度
  10. @Column(length = 30, name = "userId")
  11. private String userId;
  12. @Column(name = "userName", length = 20, columnDefinition="varchar(100) COMMENT '用户名'")
  13. private String userName;
  14. @Column(name = "phone", length = 20)
  15. private String phone;
  16. @Column(name = "password", length = 30)
  17. private String password;
  18. @Column(name = "userRealName", length = 20)
  19. private String userRealName;
  20. @Column(name = "address", length = 20)
  21. private String address;
  22. }
复制代码

启动springboot项目

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

Springboot怎样
根据实体类天生
数据库表

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

Springboot怎样
根据实体类天生
数据库表

以上为个人履历 ,渴望 能给大家一个参考,也渴望 大家多多支持脚本之家。


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

avatar 落日五湖W | 2021-9-14 11:12:27 | 显示全部楼层
兰州烧饼,鉴定完毕!
回复

使用道具 举报

avatar 公路美学 | 2021-9-17 20:44:09 | 显示全部楼层
admin楼主,我告诉你一个你不知道的的秘密,有一个牛逼的网站,影视频道的网站所有电影和连续剧都可以免费看的。访问地址:http://tv.mxswl.com
回复

使用道具 举报

avatar 因醉鞭名马幌 | 2021-9-20 18:11:39 | 显示全部楼层
赞一个!
回复

使用道具 举报

avatar 人生如梦总人q | 2021-9-21 11:22:36 | 显示全部楼层
十分赞同admin楼主!
回复

使用道具 举报

avatar 向往草原403 | 2021-9-22 08:34:15 | 显示全部楼层
你觉得该怎么做呢?
回复

使用道具 举报

avatar JDLMDJIA | 2021-9-26 19:54:43 | 显示全部楼层
没人理我,好伤心啊!
回复

使用道具 举报

avatar 阿豆学长长ov | 2021-10-4 10:06:48 | 显示全部楼层
收藏了,很不错的内容!
回复

使用道具 举报

avatar 苏警暗刚 | 2021-10-4 20:39:38 | 显示全部楼层
无图无真相!
回复

使用道具 举报

avatar poney | 2021-10-17 09:05:54 | 显示全部楼层
admin楼主,我告诉你一个你不知道的的秘密,有一个牛逼的源码论坛他的站点都是商业源码,还是免费下载的那种!特别好用。访问地址:http://www.mxswl.com 猫先森网络
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则