独立出properties的mybatis连接池

1 jdbc.driver=com.mysql.jdbc.Driver
2 jdbc.url=jdbc:mysql://localhost:3306/java505?useSSL=true&characterEncoding=utf8&useSSL=true
3 jdbc.username=root
4 jdbc.password=root
 1 <?xml version="1.0" encoding="UTF-8" ?>
 2 <!DOCTYPE configuration
 3   PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
 4   "http://mybatis.org/dtd/mybatis-3-config.dtd">
 5   <configuration>
 6       <properties resource="db.properties"/>
 7       <!-- 用于指定使用哪个开发
 8                                 用于指定使用的环境id
 9        -->
10       <environments default="dev">
11           <!-- 用于配置开发环境
12                id:环境的唯一识别码
13            -->
14           <environment id="dev">
15               <!-- 事务管理器
16                    type:用于设定mybatis采用什么方式管理事务
17                    JDBC表示和JDBC一样事务的管理方式
18                -->
19               <transactionManager type="JDBC"/>
20               <!-- 数据源/连接池
21                                                          用于配置链接池和数据库链接的参数
22                    type:用于设置mybatis是否采用链接池技术
23                                                         连接池:用来存数据库链接的,减少数据库的频繁开关
24                    POOLED表示mybatis采用连接池技术
25                -->
26               <dataSource type="POOLED">
27                   <property name="driver" value="${jdbc.driver}"/>
28                   <property name="url" value="${jdbc.url}"/>
29                   <property name="username" value="${jdbc.username}"/>
30                   <property name="password" value="${jdbc.password}"/>
31               </dataSource>
32           </environment>
33       </environments>
34       <!-- 扫描mapper文件 -->
35       <!-- 文件的全限制路径要用/ -->
36       <mappers>
37           <mapper resource="com/bjsxt/mapper/UserMapper.xml"/>
38       </mappers>
39   </configuration>
 1 <?xml version="1.0" encoding="UTF-8" ?>
 2 <!DOCTYPE mapper
 3   PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 4   "http://mybatis.org/dtd/mybatis-|3-mapper.dtd">
 5   <!-- namespa:命名空间,可以随意定义,一般情况下要写全限定路径(包名加类)
 6        MyBatis管理SQL语句是通过namespace+id来定位的
 7    -->
 8 <mapper namespace="com.bjsxt.mapper.UserMapper">
 9     <!-- select标签用于编写查询语句
10          id:sql语句的唯一的标识,类比为方法名
11          resultType:用于设定返回结果的类型(全限定路径)
12          如果返回结果是集合,要写集合泛型的类型
13      -->
14     <select id="sellAll" resultType="com.bjsxt.pojo.User">
15         select * from t_user
16     </select>
17     <select id="selOne" resultType="com.bjsxt.pojo.User">
18         select * from t_user where id=1
19     </select>
20 </mapper>
 1 package com.bjsxt.pojo;
 2
 3 import java.io.Serializable;
 4
 5 public class User implements Serializable {
 6 private int id;
 7 private String username;
 8 private String password;
 9 public String toString() {
10     return "User [id=" + id + ", username=" + username + ", password="
11             + password + "]";
12 }
13 public int hashCode() {
14     final int prime = 31;
15     int result = 1;
16     result = prime * result + id;
17     result = prime * result + ((password == null) ? 0 : password.hashCode());
18     result = prime * result + ((username == null) ? 0 : username.hashCode());
19     return result;
20 }
21 public boolean equals(Object obj) {
22     if (this == obj)
23         return true;
24     if (obj == null)
25         return false;
26     if (getClass() != obj.getClass())
27         return false;
28     User other = (User) obj;
29     if (id != other.id)
30         return false;
31     if (password == null) {
32         if (other.password != null)
33             return false;
34     } else if (!password.equals(other.password))
35         return false;
36     if (username == null) {
37         if (other.username != null)
38             return false;
39     } else if (!username.equals(other.username))
40         return false;
41     return true;
42 }
43 public int getId() {
44     return id;
45 }
46 public void setId(int id) {
47     this.id = id;
48 }
49 public String getUsername() {
50     return username;
51 }
52 public void setUsername(String username) {
53     this.username = username;
54 }
55 public String getPassword() {
56     return password;
57 }
58 public void setPassword(String password) {
59     this.password = password;
60 }
61 public User(int id, String username, String password) {
62     super();
63     this.id = id;
64     this.username = username;
65     this.password = password;
66 }
67 public User() {
68     super();
69 }
70
71 }
 1 # Set root category priority to INFO and its only appender to CONSOLE.
 2 log4j.rootCategory=DEBUG, CONSOLE
 3 #log4j.rootCategory=INFO, CONSOLE, LOGFILE
 4
 5 # 单独设置sql语句的输出级别为debug
 6 #方法级别
 7 #log4j.logger.com.bjsxt.mapper.UserMapper.selAll=DEBUG
 8 #类级别
 9 #log4j.logger.com.bjsxt.mapper.UserMapper=DEBUG
10 #包级别
11 log4j.logger.com.bjsxt.mapper=DEBUG
12
13 # LOGFILE is set to be a File appender using a PatternLayout.
14 log4j.appender.LOGFILE=org.apache.log4j.FileAppender
15 #存的位置
16 log4j.appender.LOGFILE.File=axis.log
17 log4j.appender.LOGFILE.Append=true
18 log4j.appender.LOGFILE.layout=org.apache.log4j.PatternLayout
19 log4j.appender.LOGFILE.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n

原文地址:https://www.cnblogs.com/wq-9/p/10206458.html

时间: 2024-10-30 07:55:38

独立出properties的mybatis连接池的相关文章

MyBatis连接池分析

连接池在实际的开发当中,我们很多的对数据库的操作的时候都是用到连接池的,数据库的连接池它可以减少我们获取数据库连接的时间. MyBatis连接池在mybatis中给我们提供了三种数据库的连接方式 POOLED 用的是DataSource规范的连接池UNPOOLED 使用的传统的获取连接的方式,没有使用池子的思想JNDI 使用的是服务器提供的技术,来获取datasource对象,不同的服务器拿到的对象是不一样的,只能使用在web和maven的工程在配置文件中配置数据库连接池的位置:在主配置文件中的

mybatis 连接池配置

xml形式配置DataSource <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration> <prop

Mybatis连接池 —— Mybatis(五)

连接池的分类 在Mybatis中我们将它的数据源 dataSource 分为以下几类:UNPOOLED(不使用连接池的数据源).POOLED(使用连接池的数据源).JNDI(使用JNDI实现的数据源). 相应地,MyBatis内部分别定义实现了 java.sql.DataSource 接口的 UnpooledDataSource,PooledDataSource类 来表示 UNPOOLED.POOLED 类型的数据源. 在这三种数据源当中,我们一般采用的是POOLED数据源. 数据源的配置 数据

代码生成器+shiro安全框架+SpringMVC+mybatis+连接池druid+HTML5

代码有持续更新(提供全部源码) 新增:1.代码生成器,将大大提高开发效率,增删改查的处理类,service层,mybatis的xml,SQL 脚本,   jsp页面 等重复低级的代码 将瞬间生成,从此不再当码农 2.数据库连接池  (阿里的 druid.Druid在监控.可扩展性.稳定性和性能方面都有明显的优势.) 3.加入安全框架 shiro  说明:SpringMVC+mybatis+shiro(oracle 和 mysql) HTML5 全新高大尚后台框架 bootstrap(可换皮肤)

shiro安全框架+代码生成器+SpringMVC+mybatis+连接池druid+HTML5

代码有持续更新(提供全部源码) 新增:1.代码生成器,将大大提高开发效率,增删改查的处理类,service层,mybatis的xml,SQL 脚本,   jsp页面 等重复低级的代码 将瞬间生成,从此不再当码农 2.数据库连接池  (阿里的 druid.Druid在监控.可扩展性.稳定性和性能方面都有明显的优势.) 3.加入安全框架 shiro  说明:SpringMVC+mybatis+shiro(oracle 和 mysql) HTML5 全新高大尚后台框架 bootstrap(可换皮肤)

Maven 工程下 Spring MVC 站点配置 (三) C3P0连接池与@Autowired的应用

Maven 工程下 Spring MVC 站点配置 (一) Maven 工程下 Spring MVC 站点配置 (二) Mybatis数据操作 前两篇文章主要是对站点和数据库操作配置进行了演示,如果单单实现这两个需求的话,那么基本足够,但是很多时候一个网站除了仅仅能够访问数据库是不够的,它还需要对性能以及更简化的步骤有着更多的要求,这一篇重点就是帮助我们如何去实现数据连接池管理与更简化便利的开发步骤. 如果你觉得自己能写出更高效率的连接池,那你可以不需要这篇文章了,我更建议你可以去开源组织毛遂自

web java -- 连接池 -- 概述

1. 连接池的实现原理 1. 创建连接池 首先要创建一个静态的连接池.这里的"静态"是指池中的连接时在系统初始化时就分配好的,并且不能够随意关闭.Java 提供了很多容器类可用来构建连接池,例如Vector.Stack等.在系统初始化时,根据配置创建连接并放置在连接池中,以后所使用的连接都是从该连接池中获取的,这样就可以避免连接随意建立.关闭造成的开销. 2. 分配.释放策略 创建好连接池后,需要提供一套自定义的分配.创建策略以保证数据库连接的有效复用.当客户请求数据库连接时,首先看连

11、hibernate查询、连接池、二级缓存

Hibernate第三天: 1. 对象状态 2. session缓存 3. lazy懒加载 4. 映射 一对一对映射 组件/继承映射 目标: 一.hibernate查询 二.hibernate对连接池的支持 三.二级缓存 四.Hibernate与Struts小案例(项目中session的管理方式) 一.hibernate查询 查询概述 1)Get/load主键查询 2)对象导航查询 3)HQL查询, Hibernate Query language hibernate 提供的面向对象的查询语言.

浅谈MyBatis3连接池

1.在spring中注入MyBatis自带连接池的时候,仅仅只是设置上了一些数据库连接的必要数据,比如driver.url.username.password等,并不会去连接数据库 2.Mybatis连接池的状态都是由PoolState这个类来维护的,最重要的就是两个list:idleConnections.activeConnections,分别用来保存空闲连接和活动连接,这个PoolState对象在使用过程中需要同步 3.PooledConnection也就是连接池里维护的连接对象,这个类里