编程Android开发经验谈首页投稿(暂停使用,暂停投稿)

Form表单提交常见问题

2016-07-07  本文已影响1142人  清枫_小天

Form表单的提交

Form表单的提交

我们在SessionOne的Servlet中,先拿到你在form表单里的数据通过如下方式;
在doPost中代码如下:

     tring name = request.getParameter("username");
    String sex = request.getParameter("gender");
    String[] hobby = request.getParameterValues("hobby");
    PrintWriter printWriter = response.getWriter();
    printWriter.println("name:"+name);
  1. 提交方式
    有form表单里面的Method属性控制
    GET:(安全性不高)最多只能提交256个字符
    把数据放在协议的头部
    可以在浏览器里的地址栏里面看到的
    POST
    协议的体部
    不可以在浏览器的地址栏里面看到的
    安全性高
    数据的长度是没有限制的
    想要使用post提交,必须明确指定使用post提交,否则默认都用get
  2. 乱码问题
    原则:字符从编写到显示都采用一种编码方式
    UTF-8  GBK GB2312
  1. 路径问题

我们常需要在form表单中进行跳转,跳转的时候写的Action就设计到路径问题还有就是在Servlet进行内部跳转(获取分发器时)也会涉及到路径问题比如(如下代码)。

 getServletConfig().getServletContext()
    .getRequestDispatcher("/WEB-INF/jsp/register.jsp")
    .forward(request, response);
  1. 跳转问题

    • 内部跳转

         context
         request
         .getRequestDispatcher("WEB-INF/jsp/first.jsp")
         .forword(req,resp);
      
    • 路径

      • 绝对 /开头
        后台(内部分发如servlet) / =>项目根目录(webcontent)
        前台 / =>服务器根目录(webapps)

          (重定向跳转)
          response.sendRedirector("/");
          <form action="/"></form>
          <a href="/"></a>
        
      • 相对
        相对当前文件(jsp,html..)或者当前Servlet所在的命名空间

                a.jsp{
                <a href="/loginServlet">aa</a>
                }
        * 点击aa跳转后的路径是  
        `http://localhost:8888/loginServlet`   

@WebServlet("/toFirstServlet")
toFirstServlet{
//内部跳转
//request.getRequestDispatcher("/a.jsp");
response.sendRedirector("/a.jsp");
}

上一篇下一篇

猜你喜欢

热点阅读