Java代码在这里,我的数据库中有8个订户,它以表格格式在前端显示(列-用户名,订户类型,日期,有效期至)单击订户用户名>它必须获取该特定名称及其有效性详细信息。这必须使用JAVA完成。在这里,我使用了Servlet计数器,因此每次单击时都会增加计数,并将计数作为参数传递给我的模型类,该模型类接受该计数具有参数,并且来自数据库的数据已存储在ArrayList中。使用ArrayList getInt方法,已将Count传递给此方法。该应用程序运行正常!但是当应用程序吸引到更多访问者并且servlet计数未初始化回hitCount到零时。如何在Java中动态获取数据?以及我可以在此代码中进行哪些改进以获得适当的结果!
ServletCounter
private int hitCount;
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
HttpSession session=request.getSession();
hitCount++
try {
Model m=new Model();
System.out.println("Entering getstatement method...");
String NAME=m.getStatement(hitCount);
session.setAttribute("NAME", NAME);
response.sendRedirect("ManageAccount.jsp");
System.out.println(NAME);
}
catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
Model Class
public class Model{
public String getStatement(int hitCount) throws Exception
{
System.out.println("Inside getStatement..");
pst = conn
.prepareStatement("SELECT user FROM trillup.subscribers");
ArrayList ar=new ArrayList();
rs = pst.executeQuery();
ar.add("");
while(rs.next()==true)
{
System.out.println("Inside while loop");
ar.add(rs.getString("user"));
}
System.out.println(ar);
hitCount++;
String NAME=(String) ar.get(hitCount);
return NAME;
}
}
您是否尝试在DoGet方法之前初始化hitCount = 0?看看sql JSTL库手册。这是非常有趣并且易于使用的数据提取。不需要掌握数据结构