配置连接池出错

mmxy 2004-09-15 10:22:44
server.xml文件加入:

<Context path="/" docBase="D:\test\" debug="0" >
<Resource name="jdbc/SqlServerDB" auth="Container" type="javax.sql.DataSource"/> <ResourceParams name="jdbc/SqlServerDB">
......
</Context>

测试代码:

<%@ page import= "java.sql.* "%>
<%@ page import= "javax.naming.* "%>

<%
try{

Context initCtx = new InitialContext();

Context ctx = (Context) initCtx.lookup("java:comp/env");
//获取连接池对象

Object obj = (Object) ctx.lookup("jdbc/SqlServerDB");

//类型转换

javax.sql.DataSource ds = (javax.sql.DataSource)obj;

Connection conn = ds.getConnection();

Statement stmt = conn.createStatement();

String strSql = " insert into test(id,name) values('00001','holen') ";

stmt.executeUpdate(strSql);

出错信息:

D:\JmEport\Tomcat 5.0\work\Catalina\localhost\_\org\apache\jsp\test_jsp.java:60: cannot resolve symbol
symbol : class DataSource
location: package sql
javax.sql.DataSource ds = (javax.sql.DataSource)obj;

什么回事?
...全文
157 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
mmxy 2004-09-16
  • 打赏
  • 举报
回复
错了吗?
gwang119 2004-09-15
  • 打赏
  • 举报
回复
我想问一下lookup()中应该是什么内容?
mmxy 2004-09-15
  • 打赏
  • 举报
回复
没有javax.sql这个包的
它是自定义的命名空间
<Resource name="jdbc/SqlServerDB" auth="Container" type="javax.sql.DataSource"/> <ResourceParams name="jdbc/SqlServerDB">

然后用命名空间
<%@ page import= "javax.naming.* "%>
访问自定义的
javax.sql.DataSource

我的理解是这样,不知对不对?


lxg2000 2004-09-15
  • 打赏
  • 举报
回复
import javax.sql.*;
gogollili 2004-09-15
  • 打赏
  • 举报
回复
加上这句:import javax.sql.*;
skyboy0720 2004-09-15
  • 打赏
  • 举报
回复
javax.sql.DataSource !!!
没看到么!你没有包含这个包
import javax.sql.*

81,122

社区成员

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

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