如题 jndi一般都用来配置数据库连接在程序中使用Context上下文
InitialContext ctx = new InitialContext();
ds = (DataSource) ctx.lookup("java:comp/env/jdbc/" + "tomcat中配置的数据源");
来取得jndi的数据库连接池
问题1:
我使用下面的方法 想遍历
NamingEnumeration ne = ctx.list(""); // 用句号表示根目录
while (ne.hasMore()){
NameClassPair item = (NameClassPair)ne.next();
String cl = item.getClassName();
String name = item.getName();
System.out.println(cl+ " - "+name);
}
但是没有结果 很奇怪 至少也应该有一个数据库连接池啊
但是我用上面的方法 什么也遍历到问题2:
这种数据库连接池 也可以在struts-config中配置
<data-sources>
<data-source key="om1" type="org.apache.commons.dbcp.BasicDataSource">
<set-property property="username" value="web"/>
<set-property property="password" value="web"/>
<set-property property="url" value="jdbc:oracle:thin:@10.4.120.193:1521:mbijx"/>
<set-property property="driverClassName" value="oracle.jdbc.driver.OracleDriver"/>
<set-property property="minActive" value="2"/>
<set-property property="maxActive" value="10"/>
<set-property property="wait-timeout" value="5000"/>
<set-property property="defaultAutoCommit" value="false"/>
</data-source>
</data-sources>这种方式 属于webApp应用的上下文吗?
用上面的jndi的 InitialContext 的 lookup方法 如果取得啊
InitialContext ctx = new InitialContext();
ds = (DataSource) ctx.lookup("java:comp/env/jdbc/" + "tomcat中配置的数据源");
来取得jndi的数据库连接池
问题1:
我使用下面的方法 想遍历
NamingEnumeration ne = ctx.list(""); // 用句号表示根目录
while (ne.hasMore()){
NameClassPair item = (NameClassPair)ne.next();
String cl = item.getClassName();
String name = item.getName();
System.out.println(cl+ " - "+name);
}
但是没有结果 很奇怪 至少也应该有一个数据库连接池啊
但是我用上面的方法 什么也遍历到问题2:
这种数据库连接池 也可以在struts-config中配置
<data-sources>
<data-source key="om1" type="org.apache.commons.dbcp.BasicDataSource">
<set-property property="username" value="web"/>
<set-property property="password" value="web"/>
<set-property property="url" value="jdbc:oracle:thin:@10.4.120.193:1521:mbijx"/>
<set-property property="driverClassName" value="oracle.jdbc.driver.OracleDriver"/>
<set-property property="minActive" value="2"/>
<set-property property="maxActive" value="10"/>
<set-property property="wait-timeout" value="5000"/>
<set-property property="defaultAutoCommit" value="false"/>
</data-source>
</data-sources>这种方式 属于webApp应用的上下文吗?
用上面的jndi的 InitialContext 的 lookup方法 如果取得啊
//得到数据源
DataSource ds=this.getDataSource(request,"om1");
如果是 怎么用InitialContext 的方式读取这种资源