How to create multiple database connections for different databases in java

前端 未结 6 1078
心在旅途
心在旅途 2020-12-25 08:31

I have an application which uses four databases in different geographical locations. All the databases contains same tables and only the database name is different according

6条回答
  •  暖寄归人
    2020-12-25 08:51

    is very easy :)

    1.Create a Data Source to try connection to DB

    public DataSource getDataSource(String db) throws Exception {
    DataSource dt = null;
    InitialContext ic = null;
    try {
        if(db.trim().equals("you_database_name")) {
            dt = (DataSource)ic.lookup("jdbc/connection_name");
        } else if(db.trim().equals("you_database_name")) {
            dt = (DataSource) ic.lookup("jdbc/connection_name");
        }
        return dt;
    } catch(NamingException n) {
        throw new Exception("Err getDataSource (ServiceLocator) NamingException - " + n.getMessage());
    }
    

    2.Create a class DataBase, remember close all connection in this point.

    public class DataBases {
    public YouNameDataSourceClass dataSrc;
    public DataBases() throws Exception {
       super();
       dataSrc = new YouNameDataSourceClass.getDataSource();
    }
    public Connection getConnectionAS400() throws Exception {
        return locator.getDataSource("you_database_name").getConnection();
    }
    
    public Connection getConnectionOracle() throws Exception {
        return locator.getDataSource("you_database_name").getConnection();
    }
    
    public Connection getConnectionSQLServer() throws Exception {
        return locator.getDataSource("you_database_name").getConnection();
    }
    }
    

    Good look.

提交回复
热议问题