纲要:

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. c#中匿名函数lamb表达式

    c#中匿名函数lamb表达式 实例一:(其实,这样都是些语法糖) using System; using System.Collections.Generic; using System.Linq; ...

  2. WeUI—微信官方UI库

    WeUI 为微信 Web 服务量身设计 概述 WeUI是一套同微信原生视觉体验一致的基础样式库,由微信官方设计团队为微信 Web 开发量身设计,可以令用户的使用感知更加统一.包含button.cell ...

  3. iPhone批量删除照片/视频最好用的方法

    iPhone批量删除照片/视频最好用的方法 经过大量的搜索和不懈的尝试,今天终于找到了批量删除iPhone照片最好用的方法, 于是决定写一篇博客为更多的果粉们造福! 1. 通过USB将iPhone手机 ...

  4. C# Excel写入

    基本思路,就是using Microsoft.Office.Interop.Excel;然后启动excel来处理 创建excel文件,代码如下: if (File.Exists(path)) { re ...

  5. java.net.ConnectException: Connection refused: connect

    在dos命令里输入netstat 查看下serverSocket所监听的端口有没有存在.

  6. iOS 顺传

    ios 顺传一层的话,直接用属性 改变里面的值 顺传穿两到三层的话 使用KVO // 设置item - (void)setItem:(UITabBarItem *)item { _item = ite ...

  7. JAVA-语法-运算符

    1.赋值运算符  =  (优先级较低) 2.算数运算符  +  —  *  /  % 3.字符串连接运算   +  (把其他类型转成字符串并和字符串类型进行连接) 4.扩展赋值运算符   +=   — ...

  8. Undefined index:

    $username=$_POST["username"]; 初学时发现这个错误, Undefined index: username 如果不仔细看,还以为是$username报错, ...

  9. URAL 1018 Binary Apple Tree(树DP)

    Let's imagine how apple tree looks in binary computer world. You're right, it looks just like a bina ...

  10. 1009: 恺撒Caesar密码

    1009: 恺撒Caesar密码 时间限制: 10 Sec  内存限制: 128 MB提交: 349  解决: 215[提交][状态][讨论版] 题目描述 Julius Caesar 生活在充满危险和 ...