栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

springboot如何连接数据库(springboot自动创建数据库)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

springboot如何连接数据库(springboot自动创建数据库)

目录

一、前言说明二、集成mysql+mybatis三、集成Druid数据源

3.1、说明3.2、集成代码实现3.3、应用说明

一、前言说明

在项目中,数据库Mysql是最常见的数据存储。在介绍集成mysql时,往往还伴随有jdbc、Druid、mybatis等技术字眼,它们之间的关系是:

像现在常见的springboot集成mysql、mybatis等就是很方便的配置即可使用,上述的关系图是帮助理解各个技术栈的关联。

二、集成mysql+mybatis

需要的所有jar包

      
        
            org.mybatis.spring.boot
            mybatis-spring-boot-starter
            1.1.1
        
        
        
            org.springframework.boot
            spring-boot-starter-data-jdbc
        
        
        
            mysql
            mysql-connector-java
            8.0.13
        
        
        
            com.alibaba
            druid-spring-boot-starter
            1.1.16
        

properties配置

#mysql
spring.datasource.url = jdbc:mysql://localhost:3306/my_test?useUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT%2B8
spring.datasource.username = root
spring.datasource.password = root

#mybatis
mybatis.mapper-locations=classpath:mapper
    @Override
    public void insertPerson(String userId,PersonPo person){
        personMapper.insertPerson(person);
    }
    @Override
    public void delPerson(String userId, PersonPo person) {
         personMapper.delPerson(person);
    }
}
三、集成Druid数据源 3.1、说明

spring-boot-starter-data-jdbc启动器默认引入了一个数据源:HikariCP。可以根据自己项目特色集成相关的数据源。
Druid数据源是阿里推出的高性能产品,不仅支持所有 JDBC 兼容的数据库,包括 Oracle、MySQL、SQL Server 和 H2 等,还加入了强大的监控功能【实时观察数据库连接池和 SQL 的运行情况】。
Springboot整合Durid是通过starter启动器方式。

----说明:这里介绍Druid数据源,是使用其强大的监控功能。

3.2、集成代码实现

properties配置如下

# 数据库访问配置, 使用druid数据源
spring.datasource.type = com.alibaba.druid.pool.DruidDataSource
#springboot2.x版本、MySQL8.X版本的驱动需要使用com.mysql.cj.jdbc.Driver; 老的com.mysql.jdbc.Driver 废弃了。
#spring.datasource.driver-class-name = com.mysql.jdbc.Driver
spring.datasource.driver-class-name= com.mysql.cj.jdbc.Driver

spring.datasource.initialSize=5
spring.datasource.minIdle=5
spring.datasource.maxActive=20
# 连接等待超时时间
spring.datasource.maxWait=60000
# 配置检测可以关闭的空闲连接间隔时间
spring.datasource.timeBetweenEvictionRunsMillis=60000
# 配置连接在池中的最小生存时间
spring.datasource.minEvictableIdleTimeMillis=300000
spring.datasource.validationQuery=SELECt 1 FROM DUAL
spring.datasource.testWhileIdle=true
spring.datasource.testOnBorrow=false
spring.datasource.testOnReturn=false
spring.datasource.poolPreparedStatements=true
spring.datasource.maxPoolPreparedStatementPerConnectionSize=20
## 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙
spring.datasource.filters=stat,wall,log4j
# 通过connectProperties属性来打开mergeSql功能;慢SQL记录
spring.datasource.connectionProperties=druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000

#开启 SQL 监控
spring.datasource.druid.filter.stat.enabled=true
#慢查询
spring.datasource.druid.filter.stat.slow-sql-millis=1000
#记录慢查询 SQL
spring.datasource.druid.filter.stat.log-slow-sql=true
#开启防火墙
spring.datasource.druid.filter.wall.enabled=true

application启动类配置

@importResource(locations = { "classpath:druid-bean.xml" }) //主要开启druid中“spring监控”

druid-bean.xml的配置信息是




    
    

    
    
        
            
                com.wwy.dao.*
            
        
    

    
        
    


configuration配置如下

@Configuration
public class DruidConfig {
    
    @Bean
    public ServletRegistrationBean statViewServlet() {
        StatViewServlet statViewServlet = new StatViewServlet();
        //向容器中注入 StatViewServlet,并将其路径映射设置为 /druid/*
        ServletRegistrationBean servletRegistrationBean = new ServletRegistrationBean(statViewServlet, "/druid/*");
        //配置监控页面访问的账号和密码(选配)
        servletRegistrationBean.addInitParameter("loginUsername", "admin");
        servletRegistrationBean.addInitParameter("loginPassword", "123456");
        return servletRegistrationBean;
    }
}

按照上面操作,就可以登录druid界面,地址是http://localhost:8084/druid/

3.3、应用说明

开启Druid监控页面的SQL监控/SQL防火墙/慢SQL等等,上面配置已经有了,可以自行操作。
对于一些公司没额外数据库监控系统,那么可以使用Druid监控功能来监控数据库的情况。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/773609.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号