读书人

JavaWeb快速入门6

发布时间: 2012-10-10 13:58:11 作者: rapoo

JavaWeb快速入门六

表单提交

package servlet;

?

import java.io.IOException;

?

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

importjavax.servlet.http.HttpServletRequest;

importjavax.servlet.http.HttpServletResponse;

?

public class RegisterServlet extends HttpServlet {

?

?? public void doGet(HttpServletRequest request, HttpServletResponseresponse)

???????? throws ServletException, IOException {

????? /*这里选择将所有以get方式提交的全部交给doPost方法处理;

????? get方式提交是将所有的要传递的参数附加在地址栏后传过来,

????? 这样在参数少的情况或者没有参数的情况会考虑这种方式,

????? 因为附加在地址栏的字符不安全,二字符不能超过一定的大小

????? 在网页中大部分时候都要传递大量的数据,尤其有上传文件就不能选择get方式提交

????? */

????? doPost(request,response);

?? }

?

?? public void doPost(HttpServletRequest request, HttpServletResponseresponse)

???????? throws ServletException, IOException {

????? String name = request.getParameter("name");

????? String password = request.getParameter("password");

????? //将页面中form表单提交过来的参数保存到request对象中,采用map的形式保存的

????? request.setAttribute("registerName", name);//在页面中通过registerName取得name的值

????? request.setAttribute("registerPassword", password);

????? request.getRequestDispatcher("/register_success.jsp").forward(request,response);

?? }

}

这个是javaweb比较常见的问题——乱码,在简单例程中为避免这个问题没有采用全部用的是英文

<%@ page language="java" import="java.util.*"pageEncoding="UTF-8"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

? <head>

? </head>

? <body>

??? <form action="servlet/RegisterServlet"method="post">

??? Plasewrite your name and password!<br/>

??? name:<input type="text" name="name"/><br/>

??? password:<input type="password" name="password"/>

??? <input type="submit" value="regiser"/>

??? </form>

? </body>

<%@ page language="java" import="java.util.*"pageEncoding="UTF-8"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

? <body>

??? <font color="red">register success!</font><br/>

??? <font color="blue">Your regiser name is :</font><%=request.getAttribute("registerName") %><br/>

??? <font color="blue">Your regiser passwordis :</font><%=request.getAttribute("registerPassword") %>

??? <%--

??? 在这个jsp中写了部分java代码,像用<% %>包含的可以写在java类写的任意语句

??? 这里用<%= %>是直接输出结果的意思

???? --%>

??? <%-- 在jsp中有两个注释,这种注释任何用<% %>包含的java代码,还可以注释标签--%>

??? <!--? 这种注释只能注释纯jsp的代码-->

? </body>

</html>

?

测试地址:http://localhost:8080/test2/register.jsp

?

读书人网 >Web前端

热点推荐