jsp+tomcat4.1+sql2000连接池的问题 急~~~~~~~

wwwfox111 2004-02-18 06:30:05
<Context path="/My_web" docBase="My_web" debug="5" reloadable="true">
<Resource name="jdbc/LinkDB" auth="Container" type="javax.sql.DataSource"/>
<ResourceParams name="jdbc/LinkDB">
<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://localhost:1433;databaseName=oyw_web
</value>
</parameter>
<parameter>
<name>username</name>
<value>sa</value>
</parameter>
<parameter>
<name>password</name>
<value>oyw75422838</value>
</parameter>
<parameter>
<name>maxActive</name>
<value>20</value>
</parameter>
<parameter>
<name>maxIdle</name>
<value>20</value>
</parameter>
<parameter>
<name>maxWait</name>
<value>-1</value>
</parameter></ResourceParams>
</Context>
以上是我的配置文件。

<%@ page contentType="text/html;charset=GBK"%>
<%@ page import="java.util.*" %>
<%@ page import="java.sql.*" %>
<%@ page import="javax.sql.*" %>
<%@ page import="javax.naming.*" %>
<%
try{
Context ctx = new InitialContext();
DataSource ds =(DataSource)ctx.lookup("java:comp/env/jdbc/LinkDB");
Connection conn = ds.getConnection();
Statement stmt = conn.createStatement();
String strSql = "select id ,username from MY_USERS";
ResultSet rs = stmt.executeQuery(strSql);
if(rs.next()){
out.println(""+rs.getLong(1)+rs.getString(2));
}
rs.close();
conn.close();
}catch(Exception ex){
ex.printStackTrace();
throw new SQLException("cannot get Connection pool.");
}
%>

//以上是jsp页面测试,能正常连接数据库读取数据

import java.sql.*;
import javax.sql.*;
import javax.naming.*;
import java.util.*;
public class DBConnectionManager{
String foo = "Not Connected";
long bar = -1;

public void init() {
try{
Context ctx = new InitialContext();
DataSource ds =(DataSource)ctx.lookup("java:comp/env/jdbc/LinkDB");
Connection conn = ds.getConnection();
Statement stmt = conn.createStatement();
String strSql = "select id ,username from MY_USERS";
ResultSet rs = stmt.executeQuery(strSql);
if(rs.next()){
System.out.println(""+rs.getLong(1)+rs.getString(2));
}
rs.close();
conn.close();
}catch(Exception ex){
ex.printStackTrace();
}
}
public static void main(String[] args){
DBConnectionManager dcm=new DBConnectionManager();
dcm.init();
}
}
//以上是写在bean中的测试,总是出现异常:
javax.naming.NoInitialContextException: Need to specify class name in environmen
t or system property, or as an applet parameter, or in an application resource f
ile: java.naming.factory.initial
at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:6
40)
at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:243
)
at javax.naming.InitialContext.getURLOrDefaultInitCtx(InitialContext.jav
a:280)
at javax.naming.InitialContext.lookup(InitialContext.java:347)
at DBConnectionManager.init(DBConnectionManager.java:20)
at DBConnectionManager.main(DBConnectionManager.java:38)
Press any key to continue...

不解,请各位帮帮忙,看一下,急~连接池的问题已经苦恼我很久了。

在线等待你的回复!再次感谢!



...全文
37 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复

81,094

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧