package my.servlets;
import java.io.*;
import my.model.mess;
import java.sql.*;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import db.DBConnAccess;
/**
Servlet implementation class tt
*/
public class tt extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
/**
/**
@see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
String email=request.getParameter("email");
String login=request.getParameter("login");
String password=request.getParameter("password");
String confirmpass=request.getParameter("confirmpass");
//创建session周期的RegInfo对象存储出错的信息
mess regInfo=new mess();
HttpSession session=request.getSession();
session.setAttribute("regInfo",regInfo);
PrintWriter out=response.getWriter();
if(email==null || login.equals("") || password==null || confirmpass.equals("")){
regInfo.setMess("不能为空!");
response.sendRedirect("signup.jsp");
return;
}
if(!password.equals(confirmpass)){
regInfo.setMess("两次输入的密码不一致!");
response.sendRedirect("signup.jsp");
return;
}
DBConnAccess DBConn=new DBConnAccess();
String dbpath = "test.mdb"; //
Connection conn = DBConn.getConnToAccess(request.getSession().getServletContext().getRealPath(dbpath));
Statement stmt=null;
ResultSet rs = null;
try {
stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
String sql = "insert into username(email,login,pwd)values('"+email+"','"+login+"','"+password+"')";
rs = stmt.executeQuery(sql);
String selectsql="select *from username";
ResultSet rs1 = stmt.executeQuery(selectsql);
while (rs1.next()) {
out.println(rs.getString("login"));
}
} catch (Exception e) {
// TODO Auto-generated catch block
out.println(e);
e.printStackTrace();
}
DBConn.close();
//regInfo.setMess("");
//验证成功调用ProcessData对象的update方法将注册信息添加入数据库
//regInfo.setMess("注册成功,请重新登录!");
//response.sendRedirect("signin.jsp");
//RequestDispatcher requestDispatcher=request.getRequestDispatcher("signin.jsp");
//requestDispatcher.forward(request, response);
}
}
异常:java.sql.SQLException: No ResultSet was produced
rs = stmt.executeQuery(sql);
String selectsql="select *from username";
ResultSet rs1 = stmt.executeQuery(selectsql);
你处理了两次sql语句,只用了一次 stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
你在处理String selectsql语句后再添加一次conn.createStatement连接试试看,然后再做ResultSet rs1 = stmt.executeQuery(selectsql);语句,毕竟是做两次不同的sql操作,两次访问数据库,不一定对,试试看