Java数据库连接池类源码
来自:http://www.cnblogs.com/shiyangxt/archive/2008/07/30/1256813.html
环境:MyEclipse
数据库:mysql
首先新建Java项目,然后新建两个类,一个数据库连接池类,一个测试类。
分别命名ConnectionPool,ConnectionPoolTest。
然后新建一个配置文件,命名:dbpool.properties。
写入代码:
ConnectionPool.java
Code
package webbook.util;
import java.io.FileInputStream;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.Properties;
import java.util.Vector;
public class ConnectionPool {
private Vector<Connection> pool;
private String url;
private String username;
private String password;
private String driverClassName;
/** *//**
* 连接池的大小,也就是连接池中有多少个数据库连接。
*/
private int poolSize = 1;
private static ConnectionPool instance = null;
/** *//**
* 私有的构造方法,禁止外部创建本类的对象,要想获得本类的对象,通过<code>getIstance</code>方法。
* 使用了设计模式中的单子模式。
*/
private ConnectionPool() {
init();
}
/** *//**
* 连接池初始化方法,读取属性文件的内容 建立连接池中的初始连接
*/
private void init() {
pool = new Vector<Connection>(poolSize);
readConfig();
addConnection();
}
/** *//**
* 返回连接到连接池中
*/
public synchronized void release(Conn
相关文档:
package testPackage;
class Test {
public static void main(String[] args) {
String hello = "Hello", lo = "lo";
System.out.print((hello == "Hello") + " ");
System.out.print((Other.hello == hello) + " ");
System.out.print((other.Other.hello == hello) + " ");
System.out.print((hello == ("Hel"+"lo ......
题目都很简单,但有时候让你用笔完整的写出来却不那么容易了.
1.遍历文件夹(被这个题目考了两次)
import java.io.File;
public class ListFile {
public static void main(String[] args) {
// TODO Auto-generated method stub
String path = "C:/Inetpub";
File f = new File(path);
list(f);
}
publ ......
文章用实例代码展示了Java中多线程访问共享资源
时线程同步
的重要性。
分别通过在两个线程中同时访问(调用get_id*方法)经过同步处理(lock及Synchronized)的共享资源(tmp)及未经过同步处理的共享资源(tmp)来说明同步处理的的作用。
main中分两部分:
1)前半部分,non-synchronization部分用来测试没有做同步处理的代码 ......