1

我正在制作一个基于 rmi 的客户端服务器应用程序。

在服务器端,它由一个运行 rmi(用于绑定注册表)的 java 文件和所有必需的接口组成,这些接口调用其他类,用于各种基于服务器的操作(包括与数据库的连接)。

现在的疑问是

"我应该将用于配置ComboPoolDataSource 实例getConnection()方法的代码放在哪里,以便在我运行 java rmi 文件时可以完成配置,并且我可以从任何其他 java 文件调用.getConnection() 。

4

2 回答 2

0

您可以将它放在执行绑定的启动类中,或者放在单例类中。

于 2012-06-13T22:09:43.230 回答
0

首先...创建代码以在包含静态方法或变量的类中启动连接,如下所示..

        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();      
               }
             }
于 2012-06-16T13:39:52.573 回答