项目中又不使用Spring等,要实现用如下的配置也能连接数据库,请问除了直接修改类以外有无继承等修改方式,加载此文件的方式用的是 JAXPConfigurator.configure() 或者
--------------------------web.xml中配置
<servlet>
<servlet-name>proxoolInitialServlet</servlet-name>
<servlet-class>org.logicalcobwebs.proxool.configuration.ServletConfigurator</servlet-class>
<init-param>
<param-name>xmlFile</param-name>
<param-value>WEB-INF/proxool.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
---------------------------------------------------------------------------------xool.xml文件
<proxool>
<alias>BACKSTAGE_DB</alias>
<driver-url>jdbc:sqlserver://127.0.0.1:1433;database=TEST_DB</driver-url>
<driver-class>com.microsoft.sqlserver.jdbc.SQLServerDriver</driver-class>
<driver-properties>
<property name="user" value="sa"/>
<property name="password" value="6D7F054306F096AA"/><!-- DES加密的字符串-->
</driver-properties>
<minimum-connection-count>1</minimum-connection-count>
<maximum-connection-count>30</maximum-connection-count>
<house-keeping-test-sql>select getdate()</house-keeping-test-sql>
<house-keeping-sleep-time>600000</house-keeping-sleep-time>
<statistics>10s,1m,1d</statistics>
</proxool>
--------------------------web.xml中配置
<servlet>
<servlet-name>proxoolInitialServlet</servlet-name>
<servlet-class>org.logicalcobwebs.proxool.configuration.ServletConfigurator</servlet-class>
<init-param>
<param-name>xmlFile</param-name>
<param-value>WEB-INF/proxool.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
---------------------------------------------------------------------------------xool.xml文件
<proxool>
<alias>BACKSTAGE_DB</alias>
<driver-url>jdbc:sqlserver://127.0.0.1:1433;database=TEST_DB</driver-url>
<driver-class>com.microsoft.sqlserver.jdbc.SQLServerDriver</driver-class>
<driver-properties>
<property name="user" value="sa"/>
<property name="password" value="6D7F054306F096AA"/><!-- DES加密的字符串-->
</driver-properties>
<minimum-connection-count>1</minimum-connection-count>
<maximum-connection-count>30</maximum-connection-count>
<house-keeping-test-sql>select getdate()</house-keeping-test-sql>
<house-keeping-sleep-time>600000</house-keeping-sleep-time>
<statistics>10s,1m,1d</statistics>
</proxool>
jdbc-0.proxool.driver-url=jdbc:mysql://localhost:3306/test
jdbc-0.proxool.driver-class=com.mysql.jdbc.Driver
jdbc-0.user=root
jdbc-0.password=6D7F054306F096AA
jdbc-0.proxool.house-keeping-test-sql=select *
jdbc-0.proxool.maximum-connection-count=10
jdbc-0.proxool.minimum-connection-count=5编写下面的应用程序
package test.pool;import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Properties;
import java.util.ResourceBundle;import org.logicalcobwebs.proxool.ProxoolException;
import org.logicalcobwebs.proxool.configuration.PropertyConfigurator;public class mysqlcon {/**
* @param args
*/
public static void main(String[] args) {
Connection conn = null;
Statement sta=null;
ResultSet rs=null;
String sql="insert into test values ('a','a')";
try {
try {
//PropertyConfigurator.configure(mysqlcon.class.getResource("/")+"proxool.properties");
Properties pro=new Properties();
ResourceBundle resource = ResourceBundle.getBundle("proxool");
pro.put("jdbc-0.proxool.alias",resource.getString("jdbc-0.proxool.alias"));
pro.put("jdbc-0.proxool.driver-url",resource.getString("jdbc-0.proxool.driver-url"));
pro.put("jdbc-0.proxool.driver-class",resource.getString("jdbc-0.proxool.driver-class"));
pro.put("jdbc-0.user",resource.getString("jdbc-0.user"));
pro.put("jdbc-0.password",resource.getString("jdbc-0.password"));//解密处理
pro.put("jdbc-0.proxool.house-keeping-test-sql",resource.getString("jdbc-0.proxool.house-keeping-test-sql"));
pro.put("jdbc-0.proxool.maximum-connection-count",resource.getString("jdbc-0.proxool.maximum-connection-count"));
pro.put("jdbc-0.proxool.minimum-connection-count",resource.getString("jdbc-0.proxool.minimum-connection-count"));
PropertyConfigurator.configure(pro);
} catch (ProxoolException e) {
e.printStackTrace();
}
conn = DriverManager.getConnection("proxool.test");
sta=conn.createStatement();
rs=sta.executeQuery("select * from test");
while(rs.next()) {
System.out.println(rs.getString("name")+" "+rs.getString("password"));
}
} catch (SQLException e) {
e.printStackTrace();
}finally{
try {
rs.close();
sta.close();
//conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
} }}