• Java学习11.21(使用 Servlet 完成控制)


    接收用户的输入信息

    在 Servlet 中,doPost 和 doGet 服务方法中都有一个参数是 HttpServletRequest 的对象,用户的请求信息存放在该对象中,要获取用户提交的数据需要通过该对象获取。获取用户
    请求信息的方法如下:
    String getParameter(String name)
    String[] getParamterValues(String name)
    第一个方法用于获取单值表单元素的值,参数指出要获取的表单元素的名字。例如,用户在输入用户编号的时候使用的表单元素的名字是 userid,要想获取用户在这个输入框中输
    入的值,就可以使用下面的代码:
    String userid = request.getParameter("userid");
    如果参数指定的表单元素的名字不存在,则返回 null。所以通常在处理的时候,需要先判断返回的结果是否为 null。第二个方法用于获取多值表单元素的值,参数也是表单元素的名字,但是返回值是一
    个数组
     

    调用业务方法

    因为 Servlet 是 Java 类,所以调用业务方法的代码就是我们在 Java 中学习的调用其他类的方法。首先需要创建所使用的 JavaBean 的对象,然后再调用业务方法。
    要使用 UserBean 对象,可以使用下面的代码:
    UserBean user = new UserBean();
    然后调用业务方法,代码如下:
    boolean b = user.validate(userid,userpass);

    使用 request 存储执行的结果

    Servlet 完成控制的功能,查询的结果通过视图(JSP 文件)显示,需要把查询的结果传递给 JSP 文件。因为打开这两个文件属于同一次请求,所以共享同一个 request。因为共享同
    一个 request,所以在 Servlet 中把查询结果存储在 request 中,然后在视图中显示结果。在登录功能中不需要传递信息。假设需要把使用 temp 对象保存的查询结果传递到视图,
    可以使用下面的代码:
    request.setAttribute("user",temp);
    第一个参数表示信息的名字,第二个参数存储对象本身,在视图中会根据名字获取。
     

    选择界面对用户进行响应

    Servlet 中的最后一项任务就是跳转到显示界面,在显示界面显示信息。在 JSP 中要重定向到某个文件,可以使用<jsp:forward>标签。那么在 Servlet 中如何完成这种跳转呢?在Servlet 中提供了一个
    RequestDispatcher 接口,通过这个接口可以完成重定向功能。要 使 用 RequestDispatcher , 需 要 先 创 建 该 类 的对象, 可以通 过 request 的getRequestDispatcher 方法创建。该方法需要一个
    String 类型的参数,该参数指定要转向的文件。假设要转向 userlist.jsp,可以使用下面的代码:
    RequestDispatcher rd=request.getRequestDispatcher("userlist.jsp");
     
    要完成转向,还需要调用一个方法,用法如下:
    rd.forward(request,response);
     
    在学习<jsp:forward>标签的时候,还学习过一个标签<jsp:include>。<jsp:include>标签对应的功能在 Servlet 中的实现也是通过上面的 RequestDispatcher 来实现的。例如现在要包含userlist.jsp,
    而不是转向 success.jsp,可以使用下面的代码:
    RequestDispatcher rd=request.getRequestDispatcher("success.jsp");
    rd.include(request,response);
     
    实际上,还有一个方法,即 response 对象的 sendRedirect 方法可以完成重定向的功能。
    例如要转向 success.jsp,可以使用下面的代码:
    response.sendRedirect("success.jsp");
  • 相关阅读:
    ajax长轮询实现即时聊天室
    node.js 通过post上传图片并显示
    Java集合类详解
    多行子查询
    Oracle中查看用户下面所有表的语句
    关于Oracle的create
    Oracle数据库学习
    oracle数据库
    js 中 undefined、NaN、null
    学习数据库SQL语句2
  • 原文地址:https://www.cnblogs.com/Lizhichengweidashen/p/14204366.html
Copyright © 2020-2023  润新知