我们必须重用一段具有一些jdbc调用的代码。现有代码在jar中,我们无法修改。他们正在为这样的数据库连接进行JNDI查找
InitialContext context = new InitialContext();
DataSource dataSource = (DataSource) context.lookup("java:jdbc/testDB");
这在JBoss中运行良好,但是我们试图在Tomcat服务器中使用它,但它失败了。经过一段谷歌搜索,我发现对于tomcat我需要做这样的事情。
InitialContext context = new InitialContext();
DataSource dataSource = (DataSource) context.lookup("java/comp/env/:jdbc/testDB");
我无法修改代码以使java / comp / env仅用于tomcat。是否有一个服务器独立的方式(通过一些配置文件)解决这个问题,以便我可以在不修改代码的情况下找到资源?
答案 0 :(得分:0)
那段“某段代码”是 - 什么?如果是EJB, Servlet, JSP
..你可以进行注射:
@Resource(mappedName = "jdbc/testDB")
DataSource dataSource;