Name jdbc is not bound in this Context tomcat的conf\catalina\localhost配置samples.xmleclipse的samples工程里名为ConnPool的servletpackage servlet;import java.sql.*;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.Ser

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/11 23:41:28
Name jdbc is not bound in this Context tomcat的conf\catalina\localhost配置samples.xmleclipse的samples工程里名为ConnPool的servletpackage servlet;import java.sql.*;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.Ser

Name jdbc is not bound in this Context tomcat的conf\catalina\localhost配置samples.xmleclipse的samples工程里名为ConnPool的servletpackage servlet;import java.sql.*;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.Ser
Name jdbc is not bound in this Context
tomcat的conf\catalina\localhost配置samples.xml
eclipse的samples工程里名为ConnPool的servlet
package servlet;
import java.sql.*;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* Servlet implementation class ConnPool
*/
public class ConnPool extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException {
// TODO Auto-generated method stub
response.setContentType("text/html");
response.setCharacterEncoding("GB2312");
PrintWriter out=response.getWriter();
try
{
javax.naming.Context ctx=new javax.naming.InitialContext();
javax.sql.DataSource ds=(javax.sql.DataSource) ctx.lookup("java:/comp/env/jdbc/jdbcdemo");
Connection conn=ds.getConnection();
PreparedStatement pstmt=conn.prepareStatement("select * from t_books");
ResultSet rs=pstmt.executeQuery();
StringBuilder table=new StringBuilder();
table.append("

");
table.append("");
while(rs.next())
{
table.append("");
}
table.append("
书名作者
"+rs.getString("name")+"");
table.append(rs.getString("author")+"
");
out.println(table.toString());
pstmt.close();
}
catch(Exception e)
{
out.println(e.getMessage());
}
out.flush();
out.close();
}
}.
为什么会这样呢?

Name jdbc is not bound in this Context tomcat的conf\catalina\localhost配置samples.xmleclipse的samples工程里名为ConnPool的servletpackage servlet;import java.sql.*;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.Ser
在web.xml中配置如下:
<resource-ref>
<res-ref-name>数据库名</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
<res-sharing-scope>Shareable</res-sharing-scope>
</resource-ref>
在tomcat中配置如下:
<Context path="/web的根目录名">
<Resource name="数据库名"
type="javax.sql.DataSource"
username="root"
password="root"
driverClassName="com.mysql.jdbc.Driver"
maxIdle="10"
url="jdbc:mysql://localhost:3306/tarena"
maxActive="10"/>
</Context>