手把手的SpringBoot教程,SpringBoot创建web项目(五)

这一节,我们来演示如何在SpringBoot项目中连接数据库,并且自动创建一张表。

按照惯例,数据库我们依然使用mysql,至于什么是jpa呢?

jpa是sun推出的持久化规范(java persistens api),JPA通过JDK 5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中。JPA 的目标之一是制定一个可以由很多供应商实现的API,并且开发人员可以编码来实现该API,而不是使用私有供应商特有的API。

实现JPA规范的框架,比较出名的是hibernate。

现在,我们需要在pom文件中引入两个依赖:

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

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
</dependency>

分别为spring-data-jpq和mysql驱动。

Spring Data是一个用于简化数据库访问,并支持云服务的开源框架。其主要目标是使得对数据的访问变得方便快捷,并支持map-reduce框架和云计算数据服务。 Spring Data 包含多个子项目,spring-data-jpq就是其中的一个。

修改yml文件:

server:
  port: 8088
  context-path: /demo
spring:
  datasource:
    driver-class-name: com.mysql.jdbc.Driver
    url: jdbc:mysql://127.0.0.1:3306/crud  
    username: root
    password: 123456
  jpa:
    hibernate:
      ddl-auto: create
      show-sql: true

其中,设置ddl-auto: create的目的就是在项目启动的时候,就创建表。

接着,我们去新建一个JavaBean:


image.png

代码:

package com.springboot.study.bean;

import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;

@Entity
public class User {

    @Id
    @GeneratedValue
    private Integer id;
    
    private String username;
    private String password;
    
    //无参构造方法,这个必须要有,不然会报错
    public User() {
        
    }

    public Integer getId() {
        return id;
    }

    public void setId(Integer 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;
    }
    
    
    
    
}

其中,主键ID设置为自增长。

然后,启动项目,发现数据库的表已经自动生成了。

image.png

image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Boot 参考指南 介绍 转载自:https://www.gitbook.com/book/qbgb...
    毛宇鹏阅读 46,975评论 6 342
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,026评论 19 139
  • 对于一颗逐渐成熟的韭菜,在币圈有着深远而渊长的历程要走,因为在币圈,你一旦停止学习的步伐,短期内你就会有深刻的感受...
    Jaycee天使猫阅读 506评论 0 1
  • 裘同学喜欢的数字③③ 裘同学的阳历生日 还有我喜欢的49天 凑了一窝窝:-O ⊙∀⊙!
    PWong阅读 110评论 0 0
  • Session 不想看废话的直接拖到下面看干货部分! 我们管理Linux服务器通常是通过ssh远程连接过去,如果在...
    yuanzicheng阅读 1,258评论 0 50