随笔 - 434,  文章 - 0,  评论 - 463,  阅读 - 46万

这一节,我们来演示如何在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

源码下载地址:http://java520.top/article/3489.html

posted on   剽悍一小兔  阅读(2880)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)

< 2025年3月 >
23 24 25 26 27 28 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 1 2 3 4 5
点击右上角即可分享
微信分享提示