我使用JDBC连接数据库并使用select查询。我将数据提取到Arraylist中,并以表格格式将数据显示到JSP页面中。
一切顺利但我无法从Arraylist中检索数据以在我的JSP页面上显示它。
(在我删除了导入的代码中)
任何帮助将不胜感激。
public class Search extends HttpServlet {
ArrayList<Object> list = new ArrayList<Object>();
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
try{
Integer n =Integer.parseInt(request.getParameter("empno"));
Class.forName("com.mysql.jdbc.Driver");
Connection con =(Connection)DriverManager.getConnection("jdbc:mysql://localhost:3306/mydb","root", "root");
PreparedStatement ps = con.prepareStatement("select * from astintech where EmpNo = ?");
ps.setInt(1, n);
ResultSet rs = ps.executeQuery();
if(rs.next())
{
{
String empno = rs.getString(1);
String ename = rs.getString(2);
String job = rs.getString(3);
String loc = rs.getString(4);
list.add(empno);
list.add(ename);
list.add(job);
list.add(loc);
System.out.println("list::" +list);
}
request.setAttribute("nList", list);
System.out.println("valid User no.");
RequestDispatcher rd = request.getRequestDispatcher("Welcome.jsp");
rd.include(request, response);
}
else
{
System.out.println("invalid User no.");
RequestDispatcher rd = request.getRequestDispatcher("Error.jsp");
rd.include(request, response);
}
}catch(NumberFormatException nfe)
{
System.out.println("ONLY INTEGER VALUE ALLOWED");
System.out.println("PLEASE ENTER ONLY INTEGER");
RequestDispatcher rd = request.getRequestDispatcher("NumberFormatException.jsp");
rd.include(request, response);
}
catch (Exception e)
{
e.printStackTrace();
}
finally
{
out.close();
}
}
}