教你用springboot连接mysql并实现增删改查

 更新时间:2021年05月18日 14:53:23   作者:雪岩ding  
今天教各位小伙伴用springboot连接mysql并实现增删改查功能,文中有非常详细的步骤及代码示例,对正在学习Java的小伙伴们有非常好的帮助,需要的朋友可以参考下

1.数据库与数据表的创建

创建名为mybatis的数据库:

create database mybatis;

创建名为user2的数据表:

use mybatis;
create table user2(
id integer not null primary key,
name varchar(20) not null,
pwd varchar(10) not null,
perms varchar(100) null)

生成如下表结构:

在这里插入图片描述

(已经插入了两行数据的)

2.数据库的连接

注意点:url要设置serverTimezone

比如:jdbc:mysql://localhost:3306?serverTimezone=UTC

连接成功后可以在idea中简单测试一下:

在这里插入图片描述

3.结构:

在这里插入图片描述

4.JDBCController.java

package com.kuang.controller;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RestController;

import java.util.Map;
import java.util.List;
import java.lang.*;
import java.util.Scanner;


@RestController
public class JDBCController {

    @Autowired
    JdbcTemplate jdbcTemplate;

    //查询数据库的所有信息
    //没有实体类,数据库里的东西,怎么获取? Map

    //查
    @GetMapping("/userList")
    public List<Map<String,Object> > userList(){
        String sql="select * from mybatis.user2";
        List<Map<String,Object>> list_maps=jdbcTemplate.queryForList(sql);
        return list_maps;
    }


    //增
    @GetMapping("/addUser")
    public String addUser(){
        String sql="insert into mybatis.user2(id,name,pwd,perms) values(3,'xiaoming','123456','NULL')";
        jdbcTemplate.update(sql);
        return "add-ok";
    }

    //改
    @GetMapping("updateUser/{id}/{name}/{pwd}")
    public String updateUser(@PathVariable("id") int id,@PathVariable("name") String name,@PathVariable("pwd") String pwd){
        String sql="update mybatis.user2 set  name=?,pwd=?  where  id="+id;

        //封装Object
        Object[] objects = new Object[2];
        objects[0]=name;
        objects[1]=pwd;

        jdbcTemplate.update(sql,objects);
        return "update-ok";
    }

    //删
    @GetMapping("/deleteUser/{id}")
    public String deleteUser(@PathVariable("id") int id){
        String sql="delete from mybatis.user2 where id=?";
        jdbcTemplate.update(sql,id);
        return "delete-ok";
    }
}

5.application.yml

spring:
  datasource:
    username: root
    password: liding
    url: jdbc:mysql://localhost:3306/mybatis?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8
    driver-class-name: com.mysql.jdbc.Driver

6.Springboot04DataApplication.java

package com.kuang;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class Springboot04DataApplication {

    public static void main(String[] args) {
        SpringApplication.run(Springboot04DataApplication.class, args);
    }

}

7.pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.4.5</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.kuang</groupId>
    <artifactId>springboot-04-data</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>springboot-04-data</name>
    <description>Demo project for Spring Boot</description>
    <properties>
        <java.version>1.8</java.version>
    </properties>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <!-- JDBC-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jdbc</artifactId>
        </dependency>
        <!-- MySQL-->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <version>2.4.5</version>
            </plugin>
        </plugins>
    </build>
</project>

8.pom.xml文件中注意事项

1)<plugin> </plugin>之间的语句爆红

加上与parent中相同的version号即可;

2)建立项目时勾选以下模块
spring web
JDBC API
mysql Driver

9.查询user

启动项目
输入:localhost:8080/userList

在这里插入图片描述
在这里插入图片描述

10.修改user

输入:localhost:8080/updateUser/5/hahahaha/1455

(说明:修改id为5的user,名字改为hahahaha,密码改为1455)

在这里插入图片描述

修改后的数据表:

在这里插入图片描述

11.增加user

输入:localhost:8080/addUser

(这里先写一个简单静态的addUser吧,写了半天类似与updateUser的一直报错)

在这里插入图片描述
修改后的数据表:
在这里插入图片描述

12.删除user

输入:localhost:8080/deleteUser/3

(删除id为3的user)

在这里插入图片描述

修改后的数据表:

在这里插入图片描述

到此这篇关于教你用springboot连接mysql并实现增删改查的文章就介绍到这了,更多相关springboot连接mysql内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java 八种基本类型和基本类型封装类

    Java 八种基本类型和基本类型封装类

    八种基本数据类型分别是:int、short、float、double、long、boolean、byte、char;下面跟随脚本之家小编一起学习java八种基本类型和基本类型封装类
    2017-09-09
  • Springboot关于自定义stater的yml无法提示问题解决方案

    Springboot关于自定义stater的yml无法提示问题解决方案

    这篇文章主要介绍了Springboot关于自定义stater的yml无法提示问题及解决方案,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-06-06
  • SWT(JFace)体验之List演示汇总

    SWT(JFace)体验之List演示汇总

    SWT(JFace)体验之List演示代码汇总
    2009-06-06
  • Java Web过滤器详解

    Java Web过滤器详解

    这篇文章主要为大家详细介绍了Java WEB过滤器的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-08-08
  • SpringBoot集成DJL实现图片分类功能

    SpringBoot集成DJL实现图片分类功能

    DJL是一个使用Java API简化模型训练、测试、部署和使用深度学习模型进行推理的开源库深度学习工具包,开源的许可协议是Apache-2.0,本文给大家介绍了SpringBoot集成DJL实现图片分类功能,需要的朋友可以参考下
    2024-10-10
  • 简单分析Java的求值策略原理

    简单分析Java的求值策略原理

    在本篇文章里小编给大家整理的是一篇关于简单分析Java的求值策略原理内容,有需要的朋友们可以学习下。
    2021-06-06
  • Java是自学好还是参加培训班好?

    Java是自学好还是参加培训班好?

    这篇文章主要介绍了Java是自学好还是参加培训班好这一问题,给大家介绍了哪些人适合自学java,哪些人适合java培训班学习,大家可以看看内容详情
    2018-04-04
  • 详解SpringBoot的jar为什么可以直接运行

    详解SpringBoot的jar为什么可以直接运行

    SpringBoot提供了一个插件spring-boot-maven-plugin用于把程序打包成一个可执行的jar包,本文给大家介绍了为什么SpringBoot的jar可以直接运行,文中有相关的代码示例供大家参考,感兴趣的朋友可以参考下
    2024-02-02
  • JavaWeb 实现验证码功能(demo)

    JavaWeb 实现验证码功能(demo)

    在 WEB-APP 中一般应用于:登录、注册、买某票、秒杀等场景,大家都接触过这个验证码操作,今天小编通过实例代码给大家讲解javaweb实现验证码功能,需要的朋友参考下
    2017-02-02
  • Java批量转换文件编码格式的实现方法及实例代码

    Java批量转换文件编码格式的实现方法及实例代码

    这篇文章主要介绍了Java实现 批量转换文件编码格式的方法及实例代码,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-04-04

最新评论