日期:2014-05-17  浏览次数:20713 次

跪求JAVA数据库连接池例子(sqlserver2000)
大家好:RT,想请大家推荐一个数据库连接池例子(最好是视频),自己不会写,网上找了很多,都说不错,但自己很菜,有很多地方看不懂,求大家帮助。

另外请问大家几个问题:
1:数据库连接池最小连接数,怎么设置才合理,合理的该是多少,请问大家,有个明确的吗?
   
2:数据库连接池最大连接数,怎么设置才合理,合理的该是多少,请问大家,有个明确的吗?

3:数据库连接池自动增加的大小,怎么设置合理(这个也是必须设置的吗)?

如果是C3P0最好,谢谢。



------解决方案--------------------
在util包中新建两个文件,一个是DataSourceFactory.java,另一个是databaseresource.properties配置文件,还有几个jar包,commons-dbcp-1.2.1.jar,commons-pool-1.3.jar,msbase.jar,mssqlserver.jar,msutil.jar,这5个jar包自己去网上下载下来


DataSourceFactory.java的内容如下

package util;

import org.apache.commons.dbcp.*;
import java.sql.*;
import java.util.*;

public class DataSourceFactory {
private static String PROPERTIES_FILE = "/util/databaseresource.properties";
private static DataSourceFactory instance = null;
private BasicDataSource ds1;

private DataSourceFactory() {
Properties prop = new Properties();
try {
prop.load(this.getClass().getResourceAsStream(PROPERTIES_FILE));
ds1 = (BasicDataSource)BasicDataSourceFactory.createDataSource(prop);
} catch (Exception e) {
e.printStackTrace();

}

public static DataSourceFactory getInstance() {
if(instance == null) {
instance = new DataSourceFactory();
}
return instance;
}

public Connection getConnection() {
Connection conn = null;
try {
conn = ds1.getConnection();
} catch (Exception e) {
e.printStackTrace();
return null;
}
return conn;
}
}




databaseresource.properties中的内容如下:

driverClassName=com.microsoft.jdbc.sqlserver.SQLServerDriver
url=jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=friend  //friend为数据库名

username=sa     //数据库连接用户名
password=null   //数据库连接密码
defaultAutoCommit=true  //是否自动提交事务
maxActive=10    //连接池最大连接数


弄好后在程序中用   
Connection conn = DataSourceFactory.getInstance().getConnection();
就可以等到数据库连接了
------解决方案--------------------
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"
destroy-method="close">
<property name="driverClass">
<value>${jdbc.driverClassName}</value>
</property>
<property name="jdbcUrl">
<value>${jdbc.url}</value>
</property>
<property name="user">
<value>${jdbc.username}</value>
</property>
<property name="password">
<value>${jdbc.password}</value>
</property>

<!--连接池中保留的最小连接数。-->
<property name="minPoolSize">
<value>5</value>
</property>

<!--连接池中保留的最大连接数。Default: 15 -->
<property name="maxPoolSize">
<value>30</value>
</property>

<!--初始化时获取的连接数,取值应在minPoolSize与maxPoolSize之间。Default: 3 -->
<property name="initialPoolSize">
<value>10</value>
</property>

<