[code="java"][/code]public static Connection getConn() throws NamingException, SQLException {
//获得此 Java 虚拟机实例的当前默认语言环境值
Locale locale = Locale.getDefault();
//通过localResource 可以获取到工程下servertype.properties里头参数值
ResourceBundle localResource = ResourceBundle.getBundle("servertype", locale);
//获取键type的值
String value = localResource.getString("type");
Connection conn=null;
if(value!=null && value.equals("weblogic")){
Context ct = new InitialContext() ;
DataSource ds = (DataSource) ct.lookup("jdbc/proposal_single_db") ;
conn = ds.getConnection() ;
}else if(value!=null && value.equals("tomcat")){
Context initCtx = new InitialContext();
Context ctx = (Context) initCtx.lookup("java:comp/env");
Object obj = (Object) ctx.lookup("jdbc/proposal_db");
javax.sql.DataSource ds = (javax.sql.DataSource) obj;
conn = ds.getConnection();
}else if(value!=null && value.equals("jboss")){
Context initCtx = new InitialContext();
//Context ctx = (Context) initCtx.lookup("java:comp/env");
//Object obj = (Object) ctx.lookup("jdbc/proposal_single_db");
Object obj = (Object) initCtx.lookup("java:"+"jdbc/proposal_single_db");
javax.sql.DataSource ds = (javax.sql.DataSource) obj;
conn = ds.getConnection();
conn.setAutoCommit(false);
}
return conn;
}
//获得此 Java 虚拟机实例的当前默认语言环境值
Locale locale = Locale.getDefault();
//通过localResource 可以获取到工程下servertype.properties里头参数值
ResourceBundle localResource = ResourceBundle.getBundle("servertype", locale);
//获取键type的值
String value = localResource.getString("type");
Connection conn=null;
if(value!=null && value.equals("weblogic")){
Context ct = new InitialContext() ;
DataSource ds = (DataSource) ct.lookup("jdbc/proposal_single_db") ;
conn = ds.getConnection() ;
}else if(value!=null && value.equals("tomcat")){
Context initCtx = new InitialContext();
Context ctx = (Context) initCtx.lookup("java:comp/env");
Object obj = (Object) ctx.lookup("jdbc/proposal_db");
javax.sql.DataSource ds = (javax.sql.DataSource) obj;
conn = ds.getConnection();
}else if(value!=null && value.equals("jboss")){
Context initCtx = new InitialContext();
//Context ctx = (Context) initCtx.lookup("java:comp/env");
//Object obj = (Object) ctx.lookup("jdbc/proposal_single_db");
Object obj = (Object) initCtx.lookup("java:"+"jdbc/proposal_single_db");
javax.sql.DataSource ds = (javax.sql.DataSource) obj;
conn = ds.getConnection();
conn.setAutoCommit(false);
}
return conn;
}
本文介绍了一种基于Java的应用程序中根据不同服务器类型(weblogic、tomcat、jboss)配置数据库连接池的方法。通过读取配置文件来判断服务器类型,并根据类型使用不同的JNDI查找路径获取数据源。
2301

被折叠的 条评论
为什么被折叠?



