我用的tomcat数据池连的数据库,数据库是sql server 2000,配置好了所有的东东后面写了一个jsp页面来测试读数据库的数据。
代码如下:
<!--测试数据源-->
<%@ page contentType="text/html; charset=gb2312" %>
<%@ page import="javax.naming.Context" %>
<%@ page import="javax.sql.DataSource"%>
<%@ page import="javax.naming.InitialContext"%>
<%@ page import="java.sql.*"%> <%
DataSource ds = null;
try{
Context initCtx = new InitialContext();
Context envCtx = (Context) initCtx.lookup("java:comp/env");
//从Context中lookup数据源。
ds = (DataSource)envCtx.lookup("jdbc/jspdev");
if(ds!=null)
{
out.println("已经获得DataSource!");
out.println("<br>");
Connection conn = ds.getConnection();
Statement stmt=conn.createStatement();
ResultSet rst=stmt.executeQuery("SELECT ClassId FROM TreeMenu");
out.println("以下是从数据库中读取出来的数据");
while(rst.next())
{
out.println("ClassId:"+rst.getString("ClassId"));
out.println("<br>");
}
}
else
out.println("连接失败!");
}
catch(Exception ne)
{
out.println(ne);
}
%>
运行的结果如下:已经获得DataSource!
java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]对象名 'TreeMenu' 无效说明已获得了数据源了啊,为什么还会“无效”呢!
大家有什么高见!
代码如下:
<!--测试数据源-->
<%@ page contentType="text/html; charset=gb2312" %>
<%@ page import="javax.naming.Context" %>
<%@ page import="javax.sql.DataSource"%>
<%@ page import="javax.naming.InitialContext"%>
<%@ page import="java.sql.*"%> <%
DataSource ds = null;
try{
Context initCtx = new InitialContext();
Context envCtx = (Context) initCtx.lookup("java:comp/env");
//从Context中lookup数据源。
ds = (DataSource)envCtx.lookup("jdbc/jspdev");
if(ds!=null)
{
out.println("已经获得DataSource!");
out.println("<br>");
Connection conn = ds.getConnection();
Statement stmt=conn.createStatement();
ResultSet rst=stmt.executeQuery("SELECT ClassId FROM TreeMenu");
out.println("以下是从数据库中读取出来的数据");
while(rst.next())
{
out.println("ClassId:"+rst.getString("ClassId"));
out.println("<br>");
}
}
else
out.println("连接失败!");
}
catch(Exception ne)
{
out.println(ne);
}
%>
运行的结果如下:已经获得DataSource!
java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]对象名 'TreeMenu' 无效说明已获得了数据源了啊,为什么还会“无效”呢!
大家有什么高见!
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货