我正在制作一个基于 rmi 的客户端服务器应用程序。
在服务器端,它由一个运行 rmi(用于绑定注册表)的 java 文件和所有必需的接口组成,这些接口调用其他类,用于各种基于服务器的操作(包括与数据库的连接)。
现在的疑问是
"我应该将用于配置ComboPoolDataSource 实例和getConnection()方法的代码放在哪里,以便在我运行 java rmi 文件时可以完成配置,并且我可以从任何其他 java 文件调用.getConnection() 。
您可以将它放在执行绑定的启动类中,或者放在单例类中。
首先...创建代码以在包含静态方法或变量的类中启动连接,如下所示..
private static ComboPooledDataSource cpds = new ComboPooledDataSource();
public static void MakePool()
{
try
{
cpds=new ComboPooledDataSource();
cpds.setDriverClass("com.mysql.jdbc.Driver");
cpds.setJdbcUrl("jdbc:mysql://localhost:3306/att_db");
cpds.setUser("root");
cpds.setPassword("dragon");
cpds.setMaxPoolSize(MaxPoolSize);
cpds.setMinPoolSize(MinPoolSize);
cpds.setAcquireIncrement(Accomodation);
}
catch (PropertyVetoException ex)
{
//handle exception...not important.....
}
}
public static Connection getConnection()
{
return cpds.getConnection();
}
一旦你完成创建另一个用于服务器操作的类......
并从池中获取连接...
try{
con=DatabasePool.getConnection();
// DatabasePool is the name of the Class made earlier....
.
.
.
. // Server operations as u wanted.....
.
.
}
catch(SQL EXCEPTION HERE)
{
.....
}
finally
{
if(con!=null)
{
con.close();
}
}