mybatis 配置 mysql连接池_spring 5.x 系列第5篇 —— 整合 mybatis + druid 连接池 (xml配置方式)...

项目目录结构

687217506024e353ea2de5883b9bc710.png

1. 导入依赖

创建 maven 工程,除了 Spring 的基本依赖外,还需要导入 Mybatis 和 Druid 的相关依赖:

org.springframeworkgroupId>

spring-jdbcartifactId>

${spring-base-version}version>

dependency>

mysqlgroupId>

mysql-connector-javaartifactId>

8.0.13version>

dependency>

com.oraclegroupId>

ojdbc6artifactId>

11.2.0.3.0version>

dependency>

org.mybatisgroupId>

mybatis-springartifactId>

1.3.2version>

dependency>

org.mybatisgroupId>

mybatisartifactId>

3.4.6version>

dependency>

com.alibabagroupId>

druidartifactId>

1.1.12version>

dependency>

2. web.xml 配置

在 web.xml 中配置 Spring 的前端控制器以及 Druid 的 Web 监控台,用于获取数据库的相关监控信息:

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee

http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"

version="3.1">

springMvcservlet-name>

org.springframework.web.servlet.DispatcherServletservlet-class>

contextConfigLocationparam-name>

classpath:springApplication.xmlparam-value>

init-param>

1load-on-startup>

servlet>

springMvcservlet-name>

/url-pattern>

servlet-mapping>

DruidStatViewservlet-name>

com.alibaba.druid.support.http.StatViewServletservlet-class>

resetEnableparam-name>

trueparam-value>

init-param>

loginUsernameparam-name>

druidparam-value>

init-param>

loginPasswordparam-name>

druidparam-value>

init-param>

servlet>

DruidStatViewservlet-name>

/druid/*url-pattern>

servlet-mapping>

DruidWebStatFilterfilter-name>

com.alibaba.druid.support.http.WebStatFilterfilter-class>

exclusionsparam-name>

*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*param-value>

init-param>

filter>

DruidWebStatFilterfilter-name>

/*url-pattern>

filter-mapping>

web-app>

3. 数据库配置

在 resources 文件夹下新建数据库配置文件 jdbc.properties:

# mysql 数据库配置

mysql.url=jdbc:mysql://localhost:3306/mysql

mysql.username=root

mysql.password=root

# oracle 数据库配置

oracle.url=jdbc:oracle:thin:@//IP 地址:端口号/数据库实例名

oracle.username=用户名

oracle.password=密码

4. Druid 连接池配置

在 resources 文件夹下创建 springApplication.xml 配置文件和 druid.xml 配置文件:

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx"

xmlns:mvc="http://www.springframework.org/schema/mvc"

xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd

http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.1.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd">

bean>

bean>

class="org.springframework.jdbc.datasource.DataSourceTransactionManager">

bean>

beans>

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xmlns:context="http://www.springframework.org/schema/context"

xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd

http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.1.xsd">

bean>

beans>

5. MyBatis 配置

新建 mybtais 配置文件,按照需求配置额外参数, 更多 settings 配置项可以参考 官方文档

settings>

configuration>

6. 数据查询

新建查询接口及其实现类,以下示例分别查询的是 MySQL 和 Oracle 中的字典表:

public interface MysqlDao {

List get();

}

SELECT help_keyword_id AS id,name

FROM HELP_KEYWORD

WHERE HELP_KEYWORD_ID = #{id}

select>

mapper>

public interface OracleDao {

ListqueryById(long id);

}

select * from APEX_030200.WWV_FLOW_CALS where ID = #{id}

select>

mapper>

7. 测试查询

新建测试类进行测试:

@RestController

public class MysqlController {

@Autowired

private MysqlDao mysqlDao;

@GetMapping("relation/{id}")

public String get(@PathVariable(name = "id") String id) {

return mysqlDao.queryById(id).get(0).toString();

}

}

@RestController

public class OracleController {

@Autowired

private OracleDao oracleDao;

@GetMapping("flow/{id}")

public String get(@PathVariable(name = "id") Long id) {

return oracleDao.queryById(id).get(0).toString();

}

}

8. Druid 监控台

Druid Web 页面访问地址为:http://localhost:8080/druid/index.html ,可以登录后查看数据库相关监控数据:

e5c9bf12081a0409877c349c42db8f85.png

源码GitHub地址:https://github.com/heibaiying/spring-samples-for-all

8d5559fd3bf23d40e49ee8e0a73dcf96.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/429821.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

noi题库(noi.openjudge.cn) 1.8编程基础之多维数组T21——T25

T21 二维数组右上左下遍历 描述 给定一个row行col列的整数数组array,要求从array[0][0]元素开始,按从左上到右下的对角线顺序遍历整个数组。 输入 输入的第一行上有两个整数,依次为row和col。余下有row行,每行包含col个整数&#…

Java学习笔记三——数据类型

前言 Java是强类型(strongly typed)语言,强类型包含两方面的含义: 所有的变量必须先声明后使用;指定类型的变量只能接受预支匹配的值。这意味着每一个变量和表达式都有一个在编译时就确定的类型。 Java数据类型分为两大…

metinfo mysql off_利用Sqlmap测试MetInfo企业网站管理系统MySql注入

上次叉叉讲了Sqlmap简单注入(access数据库)教程,这次咱说说MySql数据库MetInfo,是一款强大的企业网站管理系统,采用PHPMysql架构。叉叉下载的是MetInfo 5.1.5的免费版本,咱不是大拿,不会分析源码,直接丢到W…

c++获取sqlite3数据库表中所有字段的方法

常用方法: 1.使用sqlite3_get_table函数 2.获取sqlite创建表的sql语句字符串,然后进行解析获取到相应的字段 3.采用配置文件的方式,将所有字段名写入配置文件 方法1:使用sqlite3_get_table函数 代码: char *dbname “…

Oozie的架构

Oozie的架构图,如下: 从oozie的架构图中,可以看到所有的任务都是通过oozie生成相应的任务客户端,并通过任务客户端来提交相应的任务。 继续。。。 转载于:https://www.cnblogs.com/zlslch/p/6117705.html

python贴吧顶贴_python实现贴吧顶贴机器人

项目目录:– url.txt:多个需要顶起的帖子地址。– reply:多条随机回复的内容。–selenium:浏览器自动化测试框架。首先,我们先使用pip完成selenium的安装。接着,导入pyautogui自动控制鼠标的库。示例代码:p…

Confluence部署攻略 [转]

一、软件介绍 AtlassianConfluence(简称Confluence)是一个专业的wiki程序。它是一个知识管理的工具,通过它可以实现团队成员之间的协作和知识共享。Confluence不是一个开源软件,非商业用途可以免费使用。 Confluence使用简单&…

arp欺骗技术

ARP欺骗技术-获取内网目标IP访问图片!简介:ARP(Address Resolution Protocol,地址解析协议)是一个位于TCP/IP协议栈中的网络层,负责将某个IP地址解析成对应的MAC地址。要求: 虚拟机 Kali linux系统 1--命令…

存储过程实现可扩展灵活接口

序言 本文分享一个通过数据库(ORACLE)的存储过程,遵循“对修改封闭,对增加开放”的开闭原则,实现的可扩展性极强的灵活接口方案。 背景 本人从事离散型MES系统的开发工作,近期负责了一个PCBA(电…

java 缓冲区中的数据存入缓冲区中_java8中NIO缓冲区(Buffer)的数据存储详解|chu...

java8新特性NIO缓冲区(Buffer)的数据存储。ByteBuffer,CharBuffer,ShortBuffer,IntBuffer,LongBuffer,FloatBuffer,DoubleBuffer.1、缓冲区在java nio中负责数据的存储。缓冲区就是数组。用于存储不同数据类型的数据。根据数据类型不同(boole…

mysql 循环体 如何测试_mysql里如何循环插入数据,进行测试

比如从现在开始一直循环到后年,比如设置8根管线,一直循环下去进行数据叠加,下面是C#代码,不知道怎么写下去了private void button1_Click(object sender, EventArgs e){connectionString “SERVER” server “;” “DATABASE”…

屏幕尺寸

屏幕尺寸分析 <!DOCTYPE html> <script src"js/jquery-1.11.3.js" type"text/javascript"></script> <html> <head><title>aaa</title><style>body{margin:10px;padding:10px;border:10px solid #000;}&l…

scrollWidth,clientWidth,offsetWidth的区别

通过一个demo测试这三个属性的差别。 说明&#xff1a; scrollWidth&#xff1a;对象的实际内容的宽度&#xff0c;不包边线宽度&#xff0c;会随对象中内容超过可视区后而变大。 clientWidth&#xff1a;对象内容的可视区的宽度&#xff0c;不包滚动条等边线&#xff0c;会随对…

ubuntu14.04 upgrade出现【Ubuntu is running in low-graphics mode】问题的一个解决办法

在ubuntu14.04上安装docker的时候&#xff0c;由于眼花没看清下图这句话&#xff1a; 直接执行了sudo apt-get upgrade命令。然后发生了一个悲剧&#xff01; 重启后出现下面这个错误&#xff01; 而且在点击OK进入下一步后&#xff0c;再也无法选中其他的配置选项……当时我就…

java 类及对象的课后作业_JAVA类和对象课后作业

1.使用类的静态字段和构造函数&#xff0c;我们可以跟踪某个类所创建对象的个数。请写一个类&#xff0c;在任何时候都可以向它查询“你已经创建了多少个对象&#xff1f;”代码&#xff1a;//显示类//YiMingLai 2016.10.19public class lei {/*** param args*/public static v…

安装ODIS报错 java_(实用技术)大众奥迪ODIS常见问题处理方法

我们在平时使用ODIS过程中常常会遇到一下问题&#xff0c;导致我们不知道应该怎么处理。今天这篇文章中我们将陈列一些常见的问题解答&#xff0c;希望对大家有帮助。一、BCM(BFM)的引导型功能不能用解决方案如果桑塔纳&#xff0c;Rapid&#xff0c;新polo等车型遇到BCM(BFM)的…

gulp入坑系列(1)——安装gulp

前言 好吧&#xff0c;我承认我是为了搞定Sass编译CSS文件的问题&#xff0c;迷一样的着手入gulp的坑&#xff0c;sass和gulp的爬坑历程大概会一起更新。然后感觉这里windows和mac的流程差不多&#xff0c;不过mac的通常在指令前加sudo &#xff0c;本喵是windows的本本&#x…

python中split啥意思_python中split的用法详解_后端开发

如何用python正则表达式匹配字符串&#xff1f;_后端开发用python正则表达式匹配字符串的方法&#xff1a;1、当匹配单个位置的字符串时&#xff0c;可以使用【(.?)】正则表达式来提取&#xff1b;2、当连续多个位置的字符串匹配时&#xff0c;可以使用【?P…】这个正则表达式…

spring定时器,定时器一次执行两次的问题

Spring 定时器 方法一&#xff1a;注解形式 配置文件头加上如下&#xff1a; xmlns:task"http://www.springframework.org/schema/task"http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task.xsd 需要 quartz 包 &l…

SQLite For .Net 已经整合了32位和64位

以前引用SQLite.DLL的时候&#xff0c;如果是winform等桌面程序&#xff0c;还要分32位和64位不一样的DLL&#xff0c;但最近已经整合为一个包了 打开vs的程序包管理器控制器&#xff0c;输入&#xff1a; install-package system.data.sqlite 自动安装即可。 转载于:https:/…