整合基本 JDBC 与数据源|学习笔记

简介: 快速学习整合基本 JDBC 与数据源

开发者学堂课程【SpringBoot快速掌握 - 核心技术整合基本 JDBC 与数据源】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/612/detail/9274


整合基本 JDBC 与数据源


内容介绍

一、实操演示

二、课堂笔记

 

一、实操演示

启动器部分代码展示:

package com. atguigu.springboot;

import….

@Runwith(SpringRunner.class)@SpringBootTest

public class $pringBoot06DataJdbcApplicationTests {

@Autowired

DataSource;

@Test

public void contextLoads() throws SQLException {

//org.apache.tomcat.jdbc.pool.DataSource

system.out.println(dataSource.getClass());

Connection = dataSource.getConnection();System.out.print1n(connection);

connection.close();

}

}

Application.yml 部分代码展示:

spring:

datasource:

username: root

password: 123456

uri: jdbc : mysql://192.168.15.22:3306/jdbc

driver-c1ass-name:com.mysql.jdbc.Drivertype: com.alibaba.druid.pool.DruidDataSource

initia1Size: 5minIdle: 5maxActive: 20maxwait: 60000

timeBetweenEvictionRunsMi1lis:60000minEvictableIdleTimeMillis: 3000

validationQuery: SELECT1 FROM DUALtestWhileIdle: true

test0nBorrow: falsetestOnReturn: false

poo1PreparedStatements: true

#配置监控统计拦截的 filters,去掉后监控界面 sqL 无法统计,'wall' 用于防火墙 fi1ters: stat,wall ,log4j

maxPoo1preparedStatementPerConnectionsize:20useGloba1DataSourceStat: true

connectionProperties:druid.stat.mergeSql=true;druid.stat.slowSqlMillis=500

#schema:

#- classpath:department.sql

DruidConfig 类部分代码展示:

package com.atguigu.springboot.config;

import com.alibaba.druid.pool. DruidDataSource;

import org.springframework.boot.context.properties.ConfigurationProperties;

import org.springframework.context.annotation.Bean;

import org.springframework.context.annotation.Configuration;

import javax.sql.DataSource;

@Configuration

public class DruidConfig {

@ConfigurationProperties(prefix = "spring.datasource")

@Bean

public DataSource druid()i

return new DruidDataSource();

}

//配置 Druid 的监控

//配置一个管理后台的 servlet@Bean

public ServletRegistrationBean statViewServlet(){

ServletRegistrationBean bean = new ServletRegistrationBean(new StatViewServlet(),Map initParams = new HashMap<>();

initParams.put( "1oginUsername" , "admin" );

initParams.put( "1oginPassword" , "123456");

initParams.put( "a11ow" , "");

//默认就是允许所有访间initParams.put( "deny" ,"192.168.15.21");

bean.setInitParameters(initParams) ;

return bean;

}

//、配置一个 web 监控的 filter@Bean

public FilterRegistrationBean webStatFilter(){

FilterRegistrationBean bean = new FilterRegistrationBean();bean. setFilter(new webstatFilter());

Map initParams = new HashMap<>();

initParams.put( "exclusions", "*.js,*.css,/druid/*");

bean.setInitParameters(initParams);

bean.setUr1Patterns(Arrays.asList("/*"));

return bean;

}

}

 

二、课堂笔记

@configuration

public class Druidconfig {

@ConfigurationProperties(prefix= "spring.datasource")

@Bean

public Datasource druid()

return new DruidDatasource();}

//配置 Druid 的监控

//1、配置一个管理后台的 Servlet@Bean

public servletRegistrationBean statViewServlet(){

ServletRegistrationBean bean = new ServletRegistrationBean(new StatViewServlet(),

"/druid/*");

Map initParams - newlHashMap<>();

initParams.put("loginUsername" , "admin");

initParams.put("loginPassword" ,"123456");

initparams. put("allow”,"");

//默认就是允许所有访问  initParams.put("deny", "192.168. 15.21");

bean.setInitParameters(initParams);return bean;

}

//2、配置一个  web  监控的 filter@Bean

public FilterRegistrationBean webstatFilter(){

FilterRegistrationBean bean = new FilterRegistrationBean();bean.setFilter(new webstatFilter()) ;

Map initParams = new HashMap<>();initParams.put( "exclusions" ,"*.js ,*.css,/druid/*");

bean.setInitParameters( initParams);

bean.setUrlPatterns ( Arrays.asList("/*"));

returnbean;

}

相关文章
|
Java 数据库连接 应用服务中间件
原生JDBC使用C3p0数据源和dbcp数据源
原生JDBC使用C3p0数据源和dbcp数据源
111 0
|
1月前
|
SQL 分布式计算 Java
大数据-96 Spark 集群 SparkSQL Scala编写SQL操作SparkSQL的数据源:JSON、CSV、JDBC、Hive
大数据-96 Spark 集群 SparkSQL Scala编写SQL操作SparkSQL的数据源:JSON、CSV、JDBC、Hive
36 0
|
3月前
|
SQL druid Java
Java数据库部分(MySQL+JDBC)(二、JDBC超详细学习笔记)(下)
Java数据库部分(MySQL+JDBC)(二、JDBC超详细学习笔记)
56 3
Java数据库部分(MySQL+JDBC)(二、JDBC超详细学习笔记)(下)
|
3月前
|
SQL Java 关系型数据库
Java数据库部分(MySQL+JDBC)(二、JDBC超详细学习笔记)(上)
Java数据库部分(MySQL+JDBC)(二、JDBC超详细学习笔记)
129 3
Java数据库部分(MySQL+JDBC)(二、JDBC超详细学习笔记)(上)
|
3月前
|
SQL 关系型数据库 MySQL
Java数据库部分(MySQL+JDBC)(一、MySQL超详细学习笔记)(下)
Java数据库部分(MySQL+JDBC)(一、MySQL超详细学习笔记)
39 6
|
3月前
|
存储 关系型数据库 MySQL
Java数据库部分(MySQL+JDBC)(一、MySQL超详细学习笔记)(上)
Java数据库部分(MySQL+JDBC)(一、MySQL超详细学习笔记)
50 4
|
3月前
|
SQL 关系型数据库 MySQL
Java数据库部分(MySQL+JDBC)(一、MySQL超详细学习笔记)(中)
Java数据库部分(MySQL+JDBC)(一、MySQL超详细学习笔记)
31 3
|
3月前
sharding-jdbc 兼容 MybatisPlus的动态数据源
【8月更文挑战第2天】要使 `Sharding-JDBC` 与 `MyBatisPlus` 的动态数据源兼容,需引入相关依赖,配置数据源及分库分表策略,并在 `MyBatisPlus` 中设置参数以协同工作。可能还需自定义代码处理数据源切换。示例代码框架展示整合方式,实际应用中需按具体业务场景详细配置并处理异常情况,如数据一致性问题。
252 1
|
5月前
|
SQL druid Java
JDBC、C3P0、DBCP、Druid 数据源连接池使用的对比总结.md2
JDBC、C3P0、DBCP、Druid 数据源连接池使用的对比总结.md
34 0
|
5月前
|
SQL druid Java
JDBC、C3P0、DBCP、Druid 数据源连接池使用的对比总结.md1
JDBC、C3P0、DBCP、Druid 数据源连接池使用的对比总结.md
58 0
下一篇
无影云桌面