JSP系统开发学习之四关于用户登录界面的补充——通过request页面传值&wel.jsp的MVC的实现
来源:互联网 发布:国内主机推荐 知乎 编辑:程序博客网 时间:2024/05/18 00:35
1、由于在.jsp页面中不应进行相关.java的逻辑处理文件的调用,因此我们在LoginClServlet.java中当登陆成功后,可通过下列语句获取相关的数据(wel.jsp需要使用的):
ArrayList al=ubc.getUserByPage(1);
int pageCount=ubc.getPageCount();
那么我们如何传递到wel.jsp页面呢?可以通过request设置属性:
request.setAttribute("result", al);
request.setAttribute("pageCount", pageCount+"");
这样在wel界面就可以这样改写代码:
//调用UserBeanCl的方法(创建一个UserBeanCl的方法,然后完成处理),完成分页显示//UserBeanCl ubc=new UserBeanCl();//ArrayList al=ubc.getUserByPage(pageNow); //要显示的用户信息从request中取ArrayList al=(ArrayList)request.getAttribute("result");//wel界面初始显示的al就是这样获得的
2、对于wel.jsp页面,我们要把它构造成MVC的形式
添加一个Servlet,UsersClServlet.java
package com.jingchenyong.controller;import java.io.IOException;import java.io.PrintWriter;import java.util.ArrayList;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import com.jingchenyong.model.UserBeanCl;public class UsersClServlet extends HttpServlet {public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {//得到用户期望显示的pageNowString s_pageNow=request.getParameter("pageNow");try {int pageNow=Integer.parseInt(s_pageNow);//调用UserBeanClUserBeanCl ubc=new UserBeanCl();ArrayList al=ubc.getUserByPage(pageNow);int pageCount=ubc.getPageCount();//将al,pageCount放入request中request.setAttribute("result", al);request.setAttribute("pageCount", pageCount+"");//重新跳转回wel.jsprequest.getRequestDispatcher("wel.jsp").forward(request, response);} catch (Exception e) {// TODO: handle exceptione.printStackTrace();}}public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {this.doGet(request, response);}}
下面是wel.jsp界面的改写:
//要显示的用户信息从request中取
ArrayList al=(ArrayList)request.getAttribute("result");
当点击超链接时,我们提交到Servlet处理
//上一页 if(pageNow!=1){ out.println("<a href=UsersClServlet?pageNow="+(pageNow-1)+">上一页</a>"); } //显示超链接 for(int i=pageNow;i<=pageNow+4;i++){ out.println("<a href=UsersClServlet?pageNow="+i+">["+i+"]</a>"); } String s_pageCount=(String)request.getAttribute("pageCount"); //得到pageCount int pageCount=Integer.parseInt(s_pageCount); //下一页 if(pageNow!=pageCount) out.println("<a href=UsersClServlet?pageNow="+(pageNow+1)+">下一页</a>");这里“UsersClServlet?pageNow=”会使得pageNow被保存在request中,然后UsersClServlet.java通过request.getParameter("pageNow")获取它并通过查询相关数据,保存到request中,供wel.jsp页面调用。
这里注意一下:我们是通过这种方式request.getRequestDispatcher("wel.jsp").forward(request, response)进行页面跳转,因为这样可以实现request的共享。
0 0
- JSP系统开发学习之四关于用户登录界面的补充——通过request页面传值&wel.jsp的MVC的实现
- JSP系统开发学习之二用户登录系统改进的model1模式(jsp+java class版)
- JSP系统开发学习之三用户登录系统改进MVC模式开发
- jsp简单的用户登录界面
- JSP—一个简单的登录界面
- jsp struts2 学习(四) ----- 用户登录验证(补充)
- 制作login.jsp页面,要求实现提供用户登陆的界面, 用户通过该界面输入用户名(控件名userName)和密码(控件名password), 然后点击“登录”按钮实现登陆操作.
- jsp 界面注册、登录按钮的实现
- 登录界面的JSP简单实现
- javaweb学习总结(——基于Servlet+JSP+JavaBean开发模式的用户登录注册
- 用户自动登录的jsp实现
- 简单的jsp页面实现登录
- jsp页面显示request对象的值
- SSM登录的JSP界面
- 【JSP开发】通过request获取各种静态页面的表单数据
- 用JSP写的一个用户登录界面
- JSP继续学习(完成一个最简单的用户登录界面)
- jsp页面通过 request对象直接获取 struts2 Action的变量的值。
- 键盘快捷键大全
- 异常机制
- 打三拍上下边沿检测代码段
- bug处理 非法字符: 'ufeff'
- 部件大小策略
- JSP系统开发学习之四关于用户登录界面的补充——通过request页面传值&wel.jsp的MVC的实现
- rpm命令参数
- node.js学习日记(3)
- OpenGL ES 3.0之着色器和程序
- jps 命令使用
- C语言
- 谈一下ACM的入门书籍及方法
- PHP中的数组(指针)
- 自定义绘图View之onDraw