详细springboot实现MySQL数据库的整合步骤

提示:本文适用于初学者,资深玩家仁者见仁智者见智

文章目录

  • 前言
  • 一、spring boot的helloworld
    • (1)·有同学可能要问不是链接MySQL吗?不用把MySQL功能也选上吗???
    • (2)此时同学们要问,@GetMapping这个方法是怎么写的,内在逻辑是什么?
  • 二、spring boot整合jdbc,实现MySQL的查询和显示
    • (1)有两种创建配置文件的方法,要用哪一种呢?
      • (2)至此编写结束,启动项目
  • 总结

前言

在家闲来无事,想起最基础的spring boot项目,但整合jdbc,链接数据库一整个操作对于初学者来说还是有些困难,我顺带记录一下。之后把springboot整合Mybatis和整合redis以及一些案例也写一下,期待成品给大家。。。。


提示:以下是本篇文章正文内容,下面案例可供参考

一、spring boot的helloworld

首先打开idea

在这里插入图片描述

创建新项目,例如创建一个demo0305项目工程

在这里插入图片描述

之后选择springboot项目的web功能就可以了

在这里插入图片描述

点击Finish生成项目,注意:初始加载可能会有很多文件,比较缓慢,耐性等待右下角无加载项就可以了

在这里插入图片描述

(1)·有同学可能要问不是链接MySQL吗?不用把MySQL功能也选上吗???

我的回答是:这个后面在pom.xml文件里增加相关的依赖就行,暂时不用选择,也是可以运行的。

之后在src下创建一个Controller的包,为了代码规范,建议把所有的Controller放在一个包里,方便查看

在这里插入图片描述

再新建一个helloController的Java文件,用于编写hello请求的响应方法

在这里插入图片描述

生成文件格式如下图所示即可

在这里插入图片描述

此时就已经有了主启动文件Demo0305Application和控制文件helloController

接下来就开始编辑helloController文件

具体代码如下

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
class helloController {
    @GetMapping("/hello")
    public String hello(){

        return "hello Spring Boot";
    }
}

(2)此时同学们要问,@GetMapping这个方法是怎么写的,内在逻辑是什么?

其实只是写了个@GetMapping的注解,但要在@RestController之后,再写一个类,返回hello Spring Boot字样,具体的底层代码可以按着Ctrl点击注释本身,你就能跳转到底层的实现逻辑

到此,保存一下就可以启动项目了(右上角绿色按钮启动)

在这里插入图片描述

成功启动后,在浏览器访问localhost:8080/hello显示成功hello spring boot

在这里插入图片描述

hello world调试成功,我的有位老师说过,只要hello world调试成功,就应该把项目全部都运行出来,只是时间的问题。后面点击右上角红色关闭服务器

二、spring boot整合jdbc,实现MySQL的查询和显示

实现了helloworld,现在链接MySQL就需要在pom.xml文件里增加相关的依赖了,需要增加的依赖在spring官网也能查到,下面我给出所需的依赖

    
        
            org.springframework.boot
            spring-boot-starter-web
        

        
            org.springframework.boot
            spring-boot-starter-test
            test
        
        
            org.springframework.boot
            spring-boot-starter-jdbc
        
        
        
            org.springframework.boot
            spring-boot-starter-data-jpa
        

        
        
            mysql
            mysql-connector-java
        

        
        
            com.alibaba
            druid
            1.1.6
        
        
            org.lionsoul
            ip2region
            1.7.2
        
    

原始的依赖只有两个一个是spring-boot-starter-web这个依赖,另外一个是spring-boot-starter-test这个依赖,这两个一个是web项目所用的,一个是用来测试的,也是最基本的两个。==这个pom文件要看得懂。==而且 <dependencies和

<dependency的这两者关系也要看清楚

在这里插入图片描述

为了方便操作,我上面给的这些依赖就是所有的依赖,已经包含了基本的那两个依赖,直接覆盖dependencies里面就行了,之后点击右上角的加载项,把依赖加载完,也是直至右下角加载完成。

在这里插入图片描述

现在MySQL的相关依赖已经加入,但是对于端口和MySQL的账号密码还没设置,所以现在开始设置MySQL

(1)配置资源,要在resource文件下配置

在这里插入图片描述

(1)有两种创建配置文件的方法,要用哪一种呢?

一种创建文件的方法是直接在application.properties里面配置

配置文件如下

spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/blog?useUnicode=true&characterEncoding=utf8
spring.datasource.username=root
spring.datasource.password=123456

这个文件前面都带有spring.datasource的前缀并且管理起来也不方便

所以另外一种创建配置类的方法是,创建一个application.yml的yml文件,使得结构清晰,方便管理

并且yml文件的书写方法方便快捷,如下

spring:
  datasource:
    url: jdbc:mysql://localhost:3306/blog?   useUnicode=true&characterEncoding=utf8
    username: root
    password: 123456
    driver-class-name: com.mysql.cj.jdbc.Driver

注意:yml文件的顶格和空格代表了上下级关系,所以这个顶格不能去掉。


这里创建yml文件的方法

需要再设置File—->Settings

在这里插入图片描述

Editor—->File And Code Templates

在这里插入图片描述

手动输入ym File 后面输入yml,点击右下角apply即可

在这里插入图片描述

这样,在resource右键new的时候,就看见yml文件了,输入application即可生成application.yml文件,就可以配置MySQL的账户密码了

在这里插入图片描述

生成如图

在这里插入图片描述

注意:3306/后面这个是你的数据库名字,我这里数据库里有个blog的表,待会我会进行查询,你们也可以在数据库里设置自己的数据库,并把名字复制到这里就行了。我的数据库里有这些记录,待会要查到,并显示。

在这里插入图片描述

这时,MySQL就链接好了,开始建立查询,我们重新写一个Controller,就命名为jdbcController,创建方法和helloController的方法一样,如下图所示

在这里插入图片描述

在里面编写文件

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.RestController;

import java.util.Map;
import java.util.List;
@RestController
public class jdbcController {
    @Autowired
    JdbcTemplate jdbcTemplate;

    //写一个list请求,查询数据库信息
    @GetMapping("/list")
    public List<Map> list(){

        String sql="select * from commentlikes";
        List<Map> list_map=jdbcTemplate.queryForList(sql);
        return list_map;

    }

}

有一个 @Autowired的注解,这里也是自动注入的注解,还有一条我们熟悉的 @GetMapping注解,list里面包含了一条sql语句,具体语句是写在双引号里面并进行赋值的,使用List<Map> list_map=jdbcTemplate.queryForList(sql);方法将查询到的信息罗列出来,并进行返回到主页的操作。

注意:这里的select * from commentlikes是根据你的数据库里面的表名进行查询的,在页面里只有罗列,没有固定格式,在做大型数据项目时,就可以在需要查询的项目里编写这样的方法,这也是底层查询逻辑。

(2)至此编写结束,启动项目

在这里插入图片描述

成功启动

访问localhost:8080/list

在这里插入图片描述

我们的库表信息已成功显示。


总结

本次文章主要是对springboot的项目进行MySQL的整合,可以进行简单的练习,在拿到成品的HTML网页时,只需要把查询到的语句返回到指定的接口中,查询任务就完成。

感谢大家看到这里,期待您的点赞和关注。

本文来自网络,不代表协通编程立场,如若转载,请注明出处:https://net2asp.com/5075866e7d.html