在tomcat中数据库连接使用JNDI时,在spring配置文件中的名字前需要加上一个前缀:java:comp/env/,否则系统启动时会报Name jdbc is not bound in this Context。
比如在tomcat的Context.xml中配的JNDI如下
auth="Container"
type="javax.sql.DataSource"
username="user"
password="password"
driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@192.168.2.2:1521:sid"
maxActive="10"
maxIdle="4"/>
这时jndi的名字为myds,则在spring的配置文件中写法如下:
如果在代码中取DataSource,则用如下方式:
Context initCtx = new InitialContext();
Context envCtx = (Context) initCtx.lookup("java:comp/env");
DataSource ds = (DataSource)envCtx.lookup("myds");
摘自 indexchen的专栏
http://www.dengb.com/Javabc/543850.htmlwww.dengb.comtruehttp://www.dengb.com/Javabc/543850.htmlTechArticle在tomcat中数据库连接使用JNDI时,在spring配置文件中的名字前需要加上一个前缀:java:comp/env/,否则系统启动时会报Name jdbc is not bound in this...