在这里学习Servlet和JSP

>> Servlet&JSP的那些事儿

>> servlet

【书籍】

孙鑫的《Servlet/JSP深入详解:基于Tomcat的Web开发》

林信良的《JSP&Servlet学习笔记(第二版)》

Servlet容器处理请求的过程

  在开始正文之前,让我们复习并细化一下Servlet容器处理请求的过程。

  1)用户点击一个链接,指向了一个servlet而不是一个静态页面。

  2)容器“看出”这个请求是一个Servlet,所以它创建了两个对象HttpServletRequest和HttpServletResponse。

  3)容器根据请求中的URL找到正确的Servlet,为这个请求创建或分配一个线程,并把请求和响应对象传递给这个Servlet线程。

  4)容器调用Servlet的service()方法。根据请求的不同类型,service()方法会调用doGet()或doPost()方法。这里假设调用doGet()方法。

  5)doGet()方法生成动态页面,并把这个页面“塞到”响应对象里,需要注意的是,容器还有响应对象的一个引用!

  6)线程结束,容器把响应对象转换为一个HTTP响应,并把它发回给客户,然后删除请求和响应对象。

那么问题来了:doGet()和doPost()的区别?

  1.doGet和doPost的区别,在什么时候调用,为什么有时doPost中套用doGet
  2.提交的form     method=Post就执行DOPOST,否则执行GOGET 套用是不管method是post还是get都执行dopost方法
  3.get:你可以通过URL传参数。http://www.csdn.net/index.asp?user=1234    , Post不行  
  4.你的表单提交都有方法的,如果提交为get就调用get方法,用post就调用post方法.   get显示你传过去的参数,post则不显示.
  5.通常的写法:先用doGet(),然后在doPost()中调用doGet(),这样就万无一失了
  6. 简单的说,get是通过http     header来传输数据,有数量限制,而post则是通过http     body来传输数据,没有数量限制。
  7.还有一点:get和post提交的数据量是不一样的.  
      get好像最多只能在url后跟64K(?具体多少忘记了),  
      post好像没这个限制,至少我post过5M以上的文本    
      还有url刷新时get好像可以不用重复提交原来提交的数据,  
      而post则会说内容已提交,想刷新请再提交.

[Java]Servlet&JSP的更多相关文章

  1. Java Servlet JSP编程(一)

    最近想学学java编程,java现在的应用还是挺广泛的,有必要学习一下. # index.jsp <%@ page language="java" contentType=& ...

  2. Java Servlet/JSP容器配置 session id

    http://www.eclipse.org/jetty/documentation/current/session-management.html#setting-session-character ...

  3. java servlet jsp 导入boostrap css js

    1.在导入boostrap.css的时候注意了 一定要注意路径,你知道把js和css包放在servlet服务器的静态路径下面就是 lib 文件夹路径下,直接使用 lib/js/boostrap.css ...

  4. java/servlet/jsp 中String与int相互转换

    String ---> int //方式一:Integer(String s) //demo: Integer i = int a = i.intValue() //方式二:static int ...

  5. Struts框架——(一)用Servlet + JSP演示Struts基本原理

    一. 用Servlet + JSP演示Struts基本原理 struts是开源项目.它通过采用 Java Servlet/JSP 技术,实现了基于Java EE Web应用的MVC的应用框架.Stru ...

  6. servlet&jsp高级:第三部分

    声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...

  7. Java EE JSP内置对象及表达式语言

    一.JSP内置对象 JSP根据Servlet API规范提供了一些内置对象,开发者不用事先声明就可使用标准变量来访问这些对象. JSP提供了9种内置对象: (一).request 简述: JSP编程中 ...

  8. Java开源JSP标签库

    01displytag 与Struts结合使用最出名的一个tag主要是显示表格数据很漂亮.完善. 02cewolf tag 用来在web上显示复杂图形报表的一个jsp tag. 03Loading T ...

  9. springMVC: java.lang.ClassNotFoundException: javax.servlet.jsp.jstl.core.Config

    springMVC开发web的时候,报错:java.lang.ClassNotFoundException: javax.servlet.jsp.jstl.core.Config 原因:未引入jstl ...

随机推荐

  1. Codeforces 931 C. Laboratory Work

    http://codeforces.com/problemset/problem/931/C 题意: 给定一个数列,要求构造一个等长的数列,使得数列的平均值等于给定数列,并且使得构造出的数列中与原数列 ...

  2. hdu 5385 The path

    http://acm.hdu.edu.cn/showproblem.php?pid=5385 题意: 给定一张n个点m条有向边的图,构造每条边的边权(边权为正整数),令d(x)表示1到x的最短路,使得 ...

  3. mysql出现ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' 错误

    init 神奇..其他的都没有成功,这个居然成功了!! 还试验过:sudo mysqld restart啥的,都没有用......

  4. 【问题收集·知识储备】Xcode只能选择My Mac,不能选择模拟器如何解决?

      网友问题:请问打开一个应用,只能选择My Mac,不能选择模拟器如何解决? 答案:             下面将问答过程记录如下:     CHENYILONG Blog 请问打开一个应用,只能 ...

  5. c++刷题(33/100)笔试题1

    笔试总共2小时,三道题,时间挺充裕的,但是最后只做了一道,原因在于自己很浮躁,不审题,不仔细思考.没过的两道都是稍微改一下代码就能过,但是没过就是没过,要引以为戒 题目1: 小W有一个电子时钟用于显示 ...

  6. 蓝桥杯 问题 1117: K-进制数 (递归)

    题目链接 题目描述 考虑包含N位数字的K-进制数. 定义一个数有效, 如果其K-进制表示不包含两连续的0. 考虑包含N位数字的K-进制数. 定义一个数有效, 如果其K-进制表示不包含两连续的0. 例: ...

  7. redhat7配置本地yum源

    1.首先是要有一个iso文件,并将这个文件挂载到某个目录 挂载: 配置: 检验: yum list 现在你就可以在没有网的情况下,安装软件了~~~

  8. 云计算-MapReduce

    Hadoop示例程序WordCount详解及实例http://blog.csdn.net/xw13106209/article/details/6116323 hadoop中使用MapReduce编程 ...

  9. C/C++杂记:深入理解数据成员指针、函数成员指针

    1. 数据成员指针 对于普通指针变量来说,其值是它所指向的地址,0表示空指针. 而对于数据成员指针变量来说,其值是数据成员所在地址相对于对象起始地址的偏移值,空指针用-1表示.例: 代码示例: str ...

  10. SUSE Enterprise Server 12 SP3 64 设置防火墙开放8080端口,出现Unsafe permissions for file /etc/sysconfig/SuSEfirewall2 to be sourced

    SUSE Enterprise Server  12 SP3 64 设置防火墙开放8080端口时出现  Unsafe permissions for file /etc/sysconfig/SuSEf ...