纲要:

Properties prop = new Properties();

BasicDataSource ds = new BasicDataSorce();

Connection conn = ds.getConnection();

==================

package util;

import java.io.IOException; import java.sql.Connection; import java.sql.SQLException; import java.util.Properties;

import org.apache.tomcat.dbcp.dbcp.BasicDataSource;

/**  * 该类用来管理连接  * 数据库连接信息,保存在属性文件中  * 使用连接池获取连接  */ public class DBUtil {    private static BasicDataSource ds;    static{     try {    //加载属性文件数据    Properties prop = new Properties();    prop.load    (DBUtil.class.getClassLoader().    getResourceAsStream    ("db.properties"));    String driverclass = prop.getProperty("jdbc.driverclass");    String url = prop.getProperty("jdbc.url");    String user = prop.getProperty("jdbc.user");    String password = prop.getProperty("jdbc.password");    String strMaxActive    = prop.getProperty("dbcp.maxActive");    String strInitSize    = prop.getProperty("dbcp.initSize");    //实例化,并初始化连接池    ds = new BasicDataSource();    ds.setDriverClassName(driverclass);    ds.setUrl(url);    ds.setUsername(user);    ds.setPassword(password);       ds.setMaxActive    (Integer.parseInt(strMaxActive));       ds.setInitialSize    (Integer.parseInt(strInitSize));       }  catch (IOException e) {    e.printStackTrace();    throw new RuntimeException    ("读取属性文件错误",e);   }  }     //2、创建连接  public static  Connection getConnection()    throws SQLException{   return ds.getConnection();  }     //3、归还连接  public static void close(Connection conn){   if(conn!=null){    try {     conn.close();    } catch (SQLException e) {     e.printStackTrace();     throw new RuntimeException     ("归还连接错误!",e);    }   }  }     //测试  public static void main(String[] args)    throws SQLException {   Connection conn = getConnection();   System.out.println   (conn.getClass().getName());   close(conn);  }  }

DButil的更多相关文章

  1. DBUtil数据库连接单例 —— 简单不简单

    单例大概是我最早产生明确模式意识的设计模式,因为它足够简单粗暴,目的足够明确. 单例么,就是不管怎么访问,都返回一个单一实例就好了,我最早应用在数据库的DBUtil中. public class DB ...

  2. JDBC_part2_DML以及预编译_编写DBUtil工具类

    本文为博主辛苦总结,希望自己以后返回来看的时候理解更深刻,也希望可以起到帮助初学者的作用. 转载请注明 出自 : luogg的博客园 谢谢配合! jdbc day02 DML语法 比起插叙语句,没有R ...

  3. SQLHelper、DBUtil终极封装

    DBUtil.java package org.guangsoft.util; import java.io.InputStream; import java.sql.Connection; impo ...

  4. Java 标准DBUtil 写法

    package xueruan.com.util; import java.sql.Connection; import java.sql.DriverManager; import java.sql ...

  5. 手把手封装数据层之DButil数据库连接的封装

    最近这段时间一直在用SSM框架做增删改查,突然想把以前还不会用框架的时候,综合百度和各种资料结合API文档抄袭而来的数据层的封装分享给大家.这边先封装一个DButil. 我这个封装就是烂大街的那种,没 ...

  6. Mybatis_4.DBUtil.java

    1.获取SqlSessionFactory /** * @author:滕鹏飞 * @version: 1.0 * @Created on: 2018-8-31 下午2:10:45 * 类说明:加载配 ...

  7. 封装jdbc、DBUtil

    package com.cmos.util; import java.io.IOException; import java.io.InputStream; import java.sql.Conne ...

  8. jdbc之工具类DBUtil的使用

    首先回顾一下jdbc的使用方法: 1. 注册驱动 2. 建立连接 3. 建立statement 4. 定义sql语句 5. 执行sql语句,如果执行的是查询需遍历结果集 6. 关闭连接 其中建立连接和 ...

  9. 通过dbutil操作数据库

    dbutil操作数据库工具类 步骤 导入jar包 c3p0-0.9.1.2.jar         commons-dbutils-1.6.jar         mysql-connector-ja ...

随机推荐

  1. iOS:runtime最全的知识总结

    runtime 完整总结 好东西,应该拿出来与大家分享... 南峰子博客地址:http://southpeak.github.io/blog/categories/ios/ 原文链接:http://w ...

  2. JQuery:JQuery遍历详解

    JQuery:遍历一.什么是遍历?jQuery 遍历,意为"移动",用于根据其相对于其他元素的关系来"查找"(或选取)HTML 元素.以某项选择开始,并沿着这个 ...

  3. Docker数据管理

    用户在使用Docker的过程中,往往需要能查看容器内应用产生的数据,或者需要把容器内的数据进行备份,甚至多个容器之间进行数据共享,这必然涉及到Docker的数据管理. 容器中管理数据主要有两种方式: ...

  4. jQuery选择器总结(转)

    ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 ...

  5. Encode & decode

    1. 埃特巴什码 (Aitebashen Password) Definition: 最后一个字母代表第一个字母,倒数第二个字母代表第二个字母. 常文:a b c d e f g h i j k l ...

  6. 十大技巧快速提升原生APP开发性能

    移动应用市场用户争夺战日益激烈,原来做APP拼想法拼创意拼是否抓住用户痛点.现在,精细化用户体验成为了一个APP能否留存用户的关键问题,一旦用户觉得体验不畅,马上就有竞品APP后补,如何开发高性能的移 ...

  7. sql拼接字符串和转换类型

    select top 10 a.ID as a_ID,a.Name as a_Name,c.* from (select * from DC_Trees where Pid=187 or ID=187 ...

  8. Python基础 (yield生成器)

    如果在一个函数中使用了yield,那么这个函数实际上生成的是一个生成器函数 ,返回的是一个generator object.生成器是实现迭代的一种方式 特点: 其实返回的就是可以的迭代对象 和迭代的方 ...

  9. Nuget程序包 使用log4net

    Nuget程序包不用细介绍,网上资源很多,有个项目使用了log4net,为项目打log,功能很多,足够一般使用. 使用时候需要在配置文件中对其进行相关配置,我自己的配置文件放在App.config文件 ...

  10. 关于开源授权协议 GPL 和 LGPL

    GPL 是 GNU General Public License (GNU 通用公共许可证)的缩写形式:LGPL 是 GNU Lesser General Public License (GNU 宽通 ...