Mysql的数据库连接---SpringBoot

1.原生态连接

①:准备工作:引入mysql依赖:

       <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.6</version>
        </dependency>

②:书写DBUtil工具类:全代码

import java.sql.*;
​
public class DBUtil {
    public static final String username="root";//连接数据库的用户名
    public static final String password="***";//连接数据库的密码
    public static final String url="jdbc:mysql://localhost:3306/db02?useSSL=false&serverTimezone=UTC&characterEncoding=utf-8";//url的路径
    public static Connection getCon() throws SQLException {
        try {
            Class.forName("com.mysql.jdbc.Driver");
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
        return DriverManager.getConnection(url,username,password);
    }
    public static Statement getStatement(Connection connection) throws SQLException {
        return connection.createStatement();
    }
    public static ResultSet getResultSet(Statement statement,String sql) throws SQLException {
        return statement.executeQuery(sql);
    }
}
​

③:连接数据库的四大步骤

1>:加载驱动

2>:获取连接

 public static Connection getCon() throws SQLException {
        try {
            Class.forName("com.mysql.jdbc.Driver");   //1.加载驱动
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
        return DriverManager.getConnection(url,username,password);       //2.获取连接
    }

3>:通过你的连接来获取操作数据库的statement对象

public static Statement getStatement(Connection connection) throws SQLException    {
        return connection.createStatement();//注:prepareStatement()可以防止SQL注入问题
    }

4>:执行sql语句,获取结果集

public static ResultSet getResultSet(Statement statement,String sql) throws SQLException {
        return statement.executeQuery(sql);
    }

④:代码测试

1>:数据库表的设计:

user表:

 

2>:在SpringBoot的测试单元经行测试

@SpringBootTest
class MysqlApplicationTests {
​
    @Test
    void contextLoads() throws SQLException {
        Connection connection = DBUtil.getCon();//驱动加载和连接
        Statement statement = DBUtil.getStatement(connection);//得到statement对象
        ResultSet resultSet = DBUtil.getResultSet(statement, "select * from db02.user");//执行CRUD的sql语句得到结果集
        if(resultSet!=null){
            while (resultSet.next()){//遍历结果集,打印查询结果
                String id = resultSet.getString(1);
                String username=resultSet.getString(2);
                String password=resultSet.getString(3);
                String email = resultSet.getString(4);
                String sex = resultSet.getString(5);
                String age = resultSet.getString(6);
                System.out.println(id+" "+username+" "+password+" "+email+" "+sex+" "+age);
                System.out.println("===============");
            }
        }
    }
​
}

3>:测试结果

 

2.在yml或则properties文件里,直接配置

以yml文件为例:

spring:
  datasource:
    url: jdbc:mysql://localhost:3306/db02?ServerTimezone=UTC
    username: root  
    password: ***
    driver-class-name: com.mysql.cj.jdbc.Driver

3.总结

以上就是关于自己总结的连接mysql数据库的两种方法,实际的操作也不难,希望可以帮助到大家!

  • 4
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Spring Boot是一个开源的Java开发框架,可以用于快速构建无服务器、微服务、单体和云原生应用程序。而MySQL Binlog Connector是一个用于解析MySQL二进制日志数据的工具,可以将数据库更改事件传递给外部应用程序。 要在Spring Boot中整合MySQL Binlog Connector,首先需要在项目的pom.xml文件中添加所需的依赖。可以使用以下依赖来引入MySQL Binlog Connector: ```xml <dependency> <groupId>com.github.shyiko</groupId> <artifactId>mysql-binlog-connector-java</artifactId> <version>0.20.0</version> </dependency> ``` 完成依赖添加后,可以创建一个MySQLBinlogHandler类来处理数据库更改事件。该类需要实现BinaryLogClient.EventListener接口,并重写onEvent方法来处理不同的事件类型。 在onEvent方法中,可以根据事件类型进行相应的处理逻辑,例如插入、更新或删除数据。可以通过事件对象获取相关的表名、列名和新值等信息,并在此处编写自定义的业务逻辑。 为了让Spring Boot应用程序能够监听MySQL的二进制日志事件,需要在启动类中创建一个实例化BinaryLogClient,并设置相应的参数,例如MySQL主机名、端口号、数据库用户名和密码等。 启动应用程序后,BinaryLogClient将会连接MySQL数据库,并开始监听Binlog事件。当数据库中的数据发生变化时,onEvent方法将会被触发,并执行相应的业务逻辑。 最后,可以通过日志或其他方式来验证整合是否成功。可以观察日志文件来检查是否成功监听到了数据库的更改事件,并执行了相应的业务逻辑。 总结起来,通过在Spring Boot项目中添加依赖、实现事件监听器,并在启动类中设置参数,可以实现Spring BootMySQL Binlog Connector的整合。这样就可以监听数据库的更改事件,并执行自定义的业务逻辑。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值