在我的动态web项目中,我需要调用Controller
中的一个方法来从数据库中获取一些数据,然后刷新JSP
页面。
Controller
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
processRequest(request,response);
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
processRequest(request,response);
}
private void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
if(request.getParameterMap().containsKey("action")) {
action = request.getParameter("action");
}
if(action.isEmpty()) {
getAllOrders();
}
getAllOrders
将从DataBase
获取一些信息,填充ArrayList
,然后返回到显示该信息的JSP
页面。
有没有合适的方法从JSP
页面进行此调用?我目前正在研究是否可以使用AJAX
来实现这一点。
谢谢你的帮助。
许多人会使用AJAX来实现这一点。您基本上有servlet(因为您使用的是JSP,我想您也有servlet),它们被设计为支持AJAX类型的请求,比如返回JSON结构,因为JSON很容易被web客户端代码处理,而所有的javascript库,比如jQuery和Dojo,都处理JSON。
由于不知道应用程序的具体情况,使用AJAX,您可以让基本页面只是一个普通的HTML页面,加载您需要的任何javascript库/模块,然后对servlet进行AJAX调用,用动态数据填充页面。
所有这些都假设您需要在客户端中启用Javascript。如果你想支持禁用Javascript的客户端,那么你必须使用纯HTML表单。