springboot+jpa实现简单的mysql查询增加删除

411 阅读2分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路

首先在pom.xml文件中添加两个依赖
<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>

<dependency>
	<groupId>mysql</groupId>
	<artifactId>mysql-connector-java</artifactId>
</dependency>
添加完成后最好重新启动一下文件

右键pom.xml文件,选择Maven,再选择Reimport

编写application.properties文件

在src-->main-->resources中找到application.properties文件,添加代码:

spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/springboot?useUnicode=true&characterEncoding=utf-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC
spring.datasource.username=root
spring.datasource.password=123456
spring.jpa.hibernate.ddl-auto=create
spring.jpa.show-sql=true
编写message类

在src-->main-->java-->自己的包中创建message类

package com.database.springboot_database;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
@Entity
public class message {
    @Id
    @GeneratedValue
    private Integer id;
    private String content;
    private String sender;
    public message(){
    }
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public String getContent() {
        return content;
    }
    public void setContent(String content) {
        this.content = content;
    }
    public String getSender() {
        return sender;
    }
    public void setSender(String sender) {
        this.sender = sender;
    }
}
编写messageRepository接口

在src-->main-->java-->自己的包中创建messageRepository接口

package com.database.springboot_database;
import org.springframework.data.jpa.repository.JpaRepository;
public interface messageRepository extends JpaRepository<message,Integer> {
}
编写messageController类

在src-->main-->java-->自己的包中创建messageContoller类

package com.database.springboot_database;
import java.util.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@RestController
public class messageController {
    @Autowired
    private messageRepository repository;
    @GetMapping("/messages")
    public List<message> list(){
        return repository.findAll();
    }
    @GetMapping("/messages/{id}")
    public message findById(@PathVariable("id") Integer id){
        return repository.findById(id).orElse(null);
    }
    @GetMapping("/addmessages")
    public message update(){
        message m = new message();
        m.setSender("aaa");
        m.setContent("abcdefg");
        return repository.save(m);
    }
    @GetMapping("/deletemessages/{id}")
    public void delete(@PathVariable("id") Integer id){
        message m = new message();
        repository.deleteById(id);
    }
}

下面看看运行结果

启动后可以在控制台看到如下效果:

控制台效果 我们可以看到添加的sql语句,代表数据库表已创建成功,再进数据库确认一下

添加数据

在浏览器中输入http://localhost:8080/addmessages

@47Y9U_5V{H[U]A~IW%NI.png

添加的数据能成功显示,再去数据库中确认一下

可见数据添加成功,我们再手动多添加几条数据

查询所有数据

在浏览器中输入http://localhost:8080/messages

查询数据 能够正确查询出来

按id查询数据

在浏览器中输入http://localhost:8080/messages/要查询的id

id查询 能正确查找id为2的数据

删除数据

在浏览器中输入http://localhost:8080/deletemessages/要删除的id

输入http://localhost:8080/deletemessages/1 后查看数据库数据

id为1的数据成功删除

由这个小例子可见,jpa非常方便,为我们准备好了很多操作数据库的方法,我们无需再写,直接用就行了