关于spring boot使用 jdbc+mysql 连接的问题

yizhihongxing

请看下面的攻略:

1.引入相关依赖

在pom.xml文件中加入以下依赖:

<dependencies>
    <!-- Spring Boot JDBC 依赖 -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-jdbc</artifactId>
    </dependency>
    <!-- MySQL 驱动依赖 -->
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>8.0.16</version>
    </dependency>
</dependencies>

2.配置数据库连接

在src/main/resources/application.yml中配置数据库连接信息,示例如下:

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

3.使用JdbcTemplate操作数据库

Spring Boot提供了JdbcTemplate来操作数据库。示例代码如下:

@Autowired
private JdbcTemplate jdbcTemplate;

public void addUser(User user) {
    String sql = "INSERT INTO user (name, age, gender) VALUES (?, ?, ?)";
    jdbcTemplate.update(sql, user.getName(), user.getAge(), user.getGender());
}

public List<User> getAllUser() {
    String sql = "SELECT * FROM user";
    List<User> users = jdbcTemplate.query(sql, new RowMapper<User>() {
        @Override
        public User mapRow(ResultSet rs, int rowNum) throws SQLException {
            User user = new User();
            user.setId(rs.getInt("id"));
            user.setName(rs.getString("name"));
            user.setAge(rs.getInt("age"));
            user.setGender(rs.getString("gender"));
            return user;
        }
    });
    return users;
}

这里的User是一个自定义实体类,其中包含id、name、age和gender四个属性。

4.在控制器中调用方法

在控制器中调用上面定义的两个方法。示例代码如下:

@RestController
public class UserController {

    @Autowired
    private UserService userService;

    @PostMapping("/user")
    public void addUser(@RequestBody User user) {
        userService.addUser(user);
    }

    @GetMapping("/user")
    public List<User> getAllUser() {
        return userService.getAllUser();
    }
}

5.运行程序

在控制台中运行命令:mvn sprint-boot:run

6.测试

使用Postman等工具测试上面定义的两个API,可以插入新用户和查询所有用户信息。示例如下:

插入新用户:

请求方法:POST

API地址:http://localhost:8080/user

请求内容:

{
    "name": "Tom",
    "age": 20,
    "gender": "male"
}

查询所有用户信息:

请求方法:GET

API地址:http://localhost:8080/user

得到的响应内容:

[
    {
        "id": 1,
        "name": "Tom",
        "age": 20,
        "gender": "male"
    }
]

以上是关于Spring Boot使用JDBC+MySQL连接的完整攻略,希望能对你有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:关于spring boot使用 jdbc+mysql 连接的问题 - Python技术站

(0)
上一篇 2023年5月20日
下一篇 2023年5月20日

相关文章

  • Java中精确的浮点运算操作示例

    Java中的浮点数是基于IEEE 754标准实现的,这种浮点数具有很高的精度,但也会存在精度问题。本篇文章将介绍如何在Java中实现精确的浮点运算操作。 一、使用BigDecimal类 Java中提供了BigDecimal类,这个类可以精确表示浮点数值。使用BigDecimal的时候,需要使用BigDecimal的构造函数或者静态工厂方法来创建BigDeci…

    Java 2023年5月26日
    00
  • 基于IDEA创建SpringMVC项目流程图解

    下面是基于IDEA创建SpringMVC项目的完整攻略流程图解: 前置条件 安装JDK和IDEA 熟悉Java和SpringMVC开发 创建SpringMVC项目 启动IDEA,点击“Create New Project”来创建新项目 选择“Spring Initializr”来创建SpringMVC项目 在“New Project”窗口中,选择“Sprin…

    Java 2023年5月16日
    00
  • Java Web开发之MD5加密用法分析

    Java Web开发之MD5加密用法分析 什么是MD5加密 MD5全称为“Message-Digest Algorithm 5”,是一种非常常见并且安全性较高的哈希算法。MD5算法的核心在于将任意长度的数据(消息)通过一个不可逆的算法变换成一个固定长度的、十六进制表示的字符串,称为消息摘要。这个摘要具有防篡改性、密钥敏感性和抗碰撞等特性。 MD5加密的应用场…

    Java 2023年5月19日
    00
  • java中List集合及其实现类的方法详解

    Java中List集合及其实现类的方法详解 什么是List集合? List集合是Java中最常用的集合之一,它可以存储有序、可重复的数据。 List实现类 Java中常见的List实现类有3种: ArrayList LinkedList Vector 其中,Vector常用于多线程并发访问的场景中,由于其性能较慢,因此本文不再赘述。下面详细讲解ArrayLi…

    Java 2023年5月18日
    00
  • 详解Java中二分法的基本思路和实现

    下面我就为你讲解“详解Java中二分法的基本思路和实现”的完整攻略。 一、二分法的基本思路 在计算机科学领域中,二分法也称为二分查找、折半查找。二分法适用于对有序的数列进行查找的情况。它的基本思路是: 首先,将待查找的数列按照从小到大的顺序排好序。 然后,将数列的中间位置的数与待查找的数比较,若相等,则查找成功,返回该数的位置;若待查找的数比中间位置的数小,…

    Java 2023年5月19日
    00
  • 堆排序算法的讲解及Java版实现

    堆排序算法的讲解及Java版实现 目录 概述 堆的实现 堆排序的实现 Java版实现示例 概述 堆排序(Heap Sort)是一种选择排序,它的平均时间复杂度为 O(nlogn),实用性较高。 堆排序的基本思想是: 将待排序的序列构建成一个大顶堆(或小顶堆); 此时,整个序列的最大值(或最小值)就是堆顶的根节点; 将其与末尾元素进行交换,此时末尾就为最大值(…

    Java 2023年5月26日
    00
  • jspsmart文件上传与邮件发送的实例

    下面是关于“jspsmart文件上传与邮件发送的实例”的完整攻略。 1. 背景介绍 jspsmart是一个Java开发Web应用程序的基础框架,它提供了很多方便的方法和工具类。本文将重点讲解如何使用jspsmart实现文件上传和邮件发送的功能。 2. 文件上传 2.1 准备工作 在使用jspsmart实现文件上传功能之前,需要确保以下几点: 确保已经引入了j…

    Java 2023年6月15日
    00
  • 浅析SpringBoot2.4 静态资源加载问题

    浅析SpringBoot2.4 静态资源加载问题 在Spring Boot 2.4中,静态资源加载的方式发生了一些变化。在本文中,我们将详细讲解Spring Boot 2.4中静态资源加载的问题,并提供两个示例来说明如何在Spring Boot 2.4中加载静态资源。 静态资源加载 在Spring Boot中,我们可以将静态资源放置在src/main/res…

    Java 2023年5月18日
    00
合作推广
合作推广
分享本页
返回顶部