运行http://localhost:8080/webexample4/User.html结果:
欢迎来到 Shop Stop
请您输入用户 ID 以显示您的详细信息:  
——————(一个文本输入框)
提交(submit)提交后结果:
java.sql.SQLException: [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序 
欢迎来到Shop Stop
客户详细信息 
用户 ID: anne 
口令: null 
全名: null null 
性别: null 
年龄: null 岁 表中的信息未出现。用myeclipse+tomcat+SQL 2000做的。对SQL不是很懂,不知道是不是出了什么问题,麻烦大虾帮忙看看
User.html
[code=HTML  <body>
   <form method=post action="/webexample4/servlet/userservlet1">
   <h1 align="center">欢迎来到 Shop Stop</h1>
   请您输入用户 ID 以显示您的详细信息:
   <input type=text name="txtuserid">
   <br/>
   <input type=submit value="提交">
   </form>
  </body>
[/code]
UserServlet1.javapackage example_2;//import省略
public class UserServlet1 extends HttpServlet { private static final long serialVersionUID = 2214468689061574090L;
public void destroy() {
super.destroy();  } public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String uid=request.getParameter("txtuserid");
response.setContentType("text/html;charset=GBK");
PrintWriter out=response.getWriter();
ServletContext context=getServletContext();
context.setAttribute("userid", uid);
RequestDispatcher dispatcher=request.getRequestDispatcher("/servlet/userservlet2");
if(dispatcher==null)
{
response.sendError(response.SC_NO_CONTENT);
}
dispatcher.forward(request, response);
out.close();

} public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException { doGet(request,response);
} public void init() throws ServletException {
}}UserServlet2.java
package example_2;import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
import java.sql.ResultSet;import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;public class UserServlet2 extends HttpServlet {
private static final long serialVersionUID = -1412073465088887602L; public void destroy() {
super.destroy(); 
}
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException { String password=null;
String firstname=null;
String lastname=null;
String age=null;
String gender=null;
ServletContext context=getServletContext();
Object obj=context.getAttribute("userid");
response.setContentType("text/html; charset=GBK");
PrintWriter out = response.getWriter();
out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
out.println("<HTML>");
out.println("  <HEAD><TITLE>CustomerDetails</TITLE></HEAD>");
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con=DriverManager.getConnection("jdbc:odbc:petclinicapps","sa","sa");
Statement s=con.createStatement();
ResultSet rs=s.executeQuery("Select * from TABLE1 where UserId='"+obj.toString()+"'");
boolean flag=rs.next();
if(flag==true){
password=rs.getString(2);
firstname=rs.getString(3);
lastname=rs.getString(4);
gender=rs.getString(5);
age=rs.getString(6);
}
else{
out.println("<font color=red size=7>登陆失败</font>");
}
}catch(java.sql.SQLException sqle){
out.println("<font color=red size=7>"+sqle.toString()+"</font>");//是抛出的这个//异常
}
catch(ClassNotFoundException e){
out.println("类未找到异常"+e);
}
out.println("  <BODY>");
out.println("<h1 align=center>欢迎来到Shop Stop</h1>");
out.println("<table width=80% border=0 align=center>");
out.println("<tr align=center valign=top>");
out.println("<td colspan=2><h1><em><strong>客户详细信息</strong></em></h1></td>");
out.println("</tr>");
out.println("<tr>");
out.println("<td width=25%><span><strong>用户 ID:</strong></span></td>");
out.println("<td width=75%><span><strong>"+obj.toString()+"</strong></span></td>");
out.println("</tr>");
out.println("<tr>");
out.println("<td><span><strong>口令:</strong></span></td>");
out.println("<td><span>"+password+"</span></td>");
out.println("</tr>");
out.println("<tr>");
out.println("<td><span><strong>全名:</strong></span></td>");
out.println("<td><span>"+firstname+" "+lastname+"</span></td>");
out.println("</tr>");
out.println("<tr>");
out.println("<td><span><strong>性别:</strong></span></td>");
out.println("<td>"+gender+"</td>");
out.println("</tr>");
out.println("<tr>");
out.println("<td><span><strong>年龄:</strong></span></td>");
out.println("<td>"+age);
out.println("<span>岁</span></td>");
out.println("</tr>");
out.println("  </BODY>");
out.println("</HTML>");
out.flush();
out.close();
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request,response);
}
public void init() throws ServletException {
}}估计是这里有问题,SQL不熟悉,不是很懂这里面是什么意思。sa是数据库账户和密码,我是自己建立了个数据库test在里面建立了一个表TABLE1,不是到是路径的问题还是什么,账户访问权限的问题。
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con=DriverManager.getConnection("jdbc:odbc:petclinicapps","sa","sa");