加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

Servlet中的doPost方法(第十九周)

(2009-07-12 08:39:59)
标签:

杂谈

分类: JAVA课程笔记及总结

Servlet中的doPost方法

   本周学的东西本身就不多,对于概括性较强的篇幅而言,写一篇博文以完全足矣,但是,没有办法,本部要求(也许是学校的要求)每周学了五天就必须得写五篇,这条规定显得在写博文时相当牵强,也相当机械。说老实话,写这个博文对我而言根本没有任何帮助,如果是从便于以后复习的出发点来考虑的话是不实际的,我的电脑是单机版的,没法联网,总不至于随时复习都还要跑那么远到网吧去复习吧,首先抛开经济消耗、时间消耗都不说,就光从学习效率上来讲都是不允许的。如果是从博客中总结学习来看也不太现实,因为我每次跑网吧上传一次博客基本上都要耽搁至少半天的时间,这时间如果留给我自己学习比起上传博客的收获将是翻倍的,大家可知道,这时间可是花的我心痛啊(尤其对我曾经辛辛苦苦打工挣来的8500更是莫大的对不住)。好了,废话少说,接下来继续上一篇博文Servlet中doPost方法的讨论

 

doPost方法是用来处理表单post方式提交的表单,不能处理客户端浏览器直接访问

实例如下:USERFORM2.JSP

<%@ page language="java" contentType="text/html;charset=gb2312"%>

<html>

<head>

       <title>用户表单</title>

</head>

<body>

       <form action="DoPostDemo" method="post">

              用户名:<input type="text" name="username"/><br>

              密码:<input type="password" name="password"/><br>

              <input type="submit" value="提交"/>

              <input type="reset" value="重置"/>

       </form>

</body>

</html>

接下来,相对应的Servlet代码如下(DOPOSTDEMO.JAVA

package com.javaweb.ch10;

import java.io.IOException;

import java.io.PrintWriter;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

 

public class DoPostDemo extends HttpServlet {

    public void doPost(HttpServletRequest request, HttpServletResponse response)

                     throws ServletException, IOException {

              response.setContentType("text/html;charset=gb2312");

              PrintWriter out = response.getWriter();

              request.setCharacterEncoding("gb2312");

              String username = request.getParameter("username");

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

              out.println("<html>");

              out.println("<body>");

              out.println("用户名:" + username + "<br>");

              out.println("密码:" + password);

              out.println("</body>");

              out.println("</html>");

       }

}

解释一下上面代码的意思:

实例代码DOPOSTDEMO.JAVA的主体代码与前面的doGet方法的主体代码相似,只是将代码写在了doPost中,doPost方法能处理Post方式提交的表单,但无法处理浏览器的直接访问。实际上,我这样写的目的就是想说不论是doGet方法还是doPost方法都能处理各自的提交方式,但两个方法之间对同一种请求的处理则是不允许混用。如果要想用一种方法来同时处理客户端的get及post请求请关注下周博文中的service方法(今天写完了的话下周就没有写的了,OK!)。

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有