Ava*_*nst 6 java tomcat jndi datasource
我在Tomcat服务器上使用Java Web应用程序,想知道在Tomcat的JNDI中访问数据库连接方面的"最佳实践"是什么?
目前,这基本上是我每次需要访问数据库时所做的事情:
Context envContext = null;
DataSource dataSource = null;
try {
envContext = (Context)ctx.lookup("java:/comp/env");
dataSource = (DataSource)envContext.lookup("jdbc/datasource");
return dataSource.getConnection();
} catch (Exception e){
e.printStackTrace();
return null;
}finally {
if(envContext != null){
try{
envContext.close();
} catch (NamingException e){
e.printStackTrace();
}
}
}
Run Code Online (Sandbox Code Playgroud)
但是,这是每次我想访问数据库时从JNDI查找连接的正确方法吗?我应该持有对Context或Datasource的引用吗?
小智 3
jndi 查找本质上是 Map 查找,因此它们的开销很小。但最好获取一次数据源并“缓存”它。因此,如果有的话,编写一个返回 DataSource 的方法是理想的选择,这样就不会将太多代码绑定到 J2EE 内部并使代码更易于测试。
| 归档时间: |
|
| 查看次数: |
4482 次 |
| 最近记录: |