参照tomcat的自带文档, 说明的还可以。
解决方案 »
- 求救mybatis配置出错,创建sqlSessionFactory失败
- request.getparameter得不到相应值
- 简单的js图片轮显出错
- struts2 在页面过滤集合 并取出他的大小
- JMX的问题
- 散发!大家分享下在工作当中遇到的技术问题!
- 如何对两个TimeStamp格式的时间进行比较?
- how to destory a stateful session bean when network is unavailable
- 模糊查询想到的..顶者又分
- 请问STRUTS的form中如果把数据类型设置和数据库一致如何解决java默认值问题!
- 能使用java开发c/s架构的系统吗?
- LDAP何JNDI用什么实现呢?
<Context path="/mew"
docBase="/mew"
crossContext="false"
debug="0"
reloadable="true">
<DecodeInterceptor defaultEncoding="utf-8" useSessionEncoding="false" />
<Resource name="jdbc/sa" auth="Container" type="javax.sql.DataSource"/>
<ResourceParams name="jdbc/sa">
<parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>com.microsoft.jdbc.sqlserver.SQLServerDriver</value>
</parameter>
<parameter>
<name>url</name>
<value>jdbc:microsoft:sqlserver://192.168.1.33:1433;DatabaseName=test</value>
</parameter>
<parameter>
<name>username</name>
<value>sa</value>
</parameter>
<parameter>
<name>password</name>
<value>sa</value>
</parameter>
<parameter>
<name>maxActive</name>
<value>20</value>
</parameter>
<parameter>
<name>maxIdle</name>
<value>10</value>
</parameter>
<parameter>
<name>maxWait</name>
<value>-1</value>
</parameter>
</ResourceParams>
</Context>然后把数据库连接和数据库名密码修改成你自己的。ok我这是用的sqlserver,你可以把驱动类改成oracle
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;import java.util.Hashtable;import javax.naming.Context;
import javax.naming.InitialContext;import javax.sql.DataSource;public class TestTomcat { public static void main(String[] args) throws Exception {
DataSource ds = null;
try{
Context initCtx = new InitialContext();
Context envCtx = (Context)initCtx.lookup("java:comp/env"); ds = (DataSource)envCtx.lookup("jdbc/sa");
if (ds != null){
Connection con = ds.getConnection();
Statement stmt = con.createStatement();
ResultSet rst = stmt.executeQuery("sql语句");
while(rst.next()){
//取数据操作
}
}
else{
out.println("没有得到数据源");
}
}catch(Exception e){
out.println(e);
}
}
}
env.put(Context.INITIAL_CONTEXT_FACTORY, "weblogic.jndi.WLInitialContextFactory");
env.put(Context.PROVIDER_URL, "t3://localhost:7003");
这两句如果换成Tomcat容器的话该如何写,上下文工厂的类用哪个,URL的协议用什么(weblogic用的t3)
public static Connection getConnection(String jndiName) {
Connection conn = null;
try {
Context initCtx = new InitialContext();
Context envCtx = (Context) initCtx.lookup("java:comp/env");
DataSource ds = (DataSource) initCtx.lookup("jndiName");
conn = ds.getConnection();
}
catch (NamingException e) {
e.printStackTrace();
}
if (conn != null) {
System.out.println("Jndi is OK!");
}
return conn;
}