题外话:接触java又是半年之前的事情了,当初好好学了java却把cpp给忘了,到现在又把手里发热的cpp给放下重新捡起来java,究竟这两种OOP语言我能不能清晰分开记住呢

以下全部课件来自于同济大学刘岩老师(EnterpriseJavaProgramming)

一.什么是Servlet?

这个问题是在我学了快一个月J2EE的时候忽然开始问自己的,是的我们的代码打完了,服务器也跑动了,可是Servlet的角色在MVC Pattern中是如何的呢?

  通常所说的Servlet一般是指HTTPprotocol下的服务器程序,当然也就意味着有TCP/IP或者UDPprotocol的服务器程序。在Servlet类中我们可以Override的函数通常有doGet,doPost..这些doXX分别和HTML语言中的form标签的method属性相对应。这里也简单的说下get方法和post方法之间的差别的get方法是指把参数数据队列加到提交表单的action属性所制定的URL中,值与表单中的各个字段一一对应,在URL中是可以看到的。post方法是通过http协议的post机制,将表单中的各个字段及其内容放置在httpHeader内一直传输到action所指定的URL地址中。get方法安全性比较低,post方法的安全性比较高,所以建议在做数据的查询的时候使用get方法,而在数据的增删改的时候改用post方法会更加的贴切。

二.Request&Response Handling

根据web.xml中的值的定义,我们向不同的地址访问的话会根据web.xml中的url-pattern的定义会把不同的request和response交付给不同的Servlet来处理。

为了对request对象的本质有深一步的了解我们调用一次HttpServletRequest接口下的getContextPath等等函数如下

第一行getContextPath()是空的,因为我们并没有在Tomcat服务器的server.xml文件中配置context的path,也就是说虚拟的目录就是path=“”,所以第一行是是个空串

第二行getServletPath()返回的串指的的事我们在web.xml中配置的servlet-mapping中的url-pattern属性所提供的虚拟地址

第三行getContextInfo()是当我的url-pattern中映射了多个目录,而进入其中一个子目录的时候返回的便是子目录的path串“except(SQL)server的path串”。  

三.关于ListenerInterface

<J2EE学习笔记>关于Servlet的讲义的更多相关文章

  1. Java学习笔记之---Servlet

    Java学习笔记之---Servlet (一)如何实现Servlet 1.实现javax.servlet.Servlet接口: 2.继承javax.servlet.GenericServlet类: 3 ...

  2. 服务器学习笔记之servlet

    初衷 想学习下服务器这边的知识,制定了一条学习路线:java8--->servlet--->springMvc--->springBoot--->springCloud.在此当 ...

  3. <J2EE学习笔记>续上次Servlet部分提升内容 以及JSP的内容纲要

    以下全部课件均来自于同济大学刘岩老师的<EnterpriseJavaProgramming> 因为授课语言问题,如果翻译有不正确之处欢迎指正 Section 1. 关于Servlet的部分 ...

  4. JavaWeb学习笔记之Servlet(一)

    1. 引子: 当我们开始进入JavaWeb开发的学习时,我们就必须要和Servlet和HTTP这两个词进行打交道了,尤其是Servlet.即使到了后面使用JSP (我们知道JSP其本身就是一个Serv ...

  5. j2ee学习笔记 Filter过滤器

    作用:过滤response和request对象的内容 使用: Filter是J2EE的一个接口,自定义Filter需要实现该接口,并重写所有的方法. Filter提供的方法: init() doFil ...

  6. j2ee学习笔记

    Servlet: ①字符集问题:②身份验证:③统一的输入输出:类似母版,重写ServletResponeceWraper的getWriter,使用缓存流. 然后输出时,分析stringWriter , ...

  7. 【学习笔记】Servlet的配置

    为了让Servlet能响应用户的请求,需要将Servlet配置在Web应用中. 从Servlet3.0开始,配置Servlet有两种方式: l 在Servlet类中使用@WebServlet Anno ...

  8. J2EE学习笔记-第二章(Web应用初步)

    首先要理解一些概念的词语,到底这些是什么(当我读懂了后,会逐一填补完整,现在我真的有点混淆) web组件-相当于功能性的组件,就像是零件,汽车的轮胎,汽车的门,所有组件组合后,才能成为一辆车,有时候也 ...

  9. JavaWeb学习笔记之Servlet(二)

    1.  GenericServlet 抽象类: 1). 是一个 Serlvet. 是 Servlet 接口和 ServletConfig 接口的实现类. 但是一个抽象类. 其中的 service 方法 ...

随机推荐

  1. CentOS7.0修改主机名(hostname)

    Linux中的hostname在大多数应用中至为重要,例如有些应用强制使用主机名称而不能使用IP地址,如果默认主机名称都为localhost.localdomain 的话那一定会出现问题,而且看起来也 ...

  2. Oracle内存管理(之五)

    [深入解析--eygle]学习笔记 1.4. 2其它内存组件 Large Pool-大池是SGA的一个可选组件,通经常使用于共享server模式(MTS). 并行计算或 RMAN的备份恢复等操作. J ...

  3. AutoCAD如何设置A0A1图纸

    可以从网上下载相应的图纸模板,下载之后可以发现有相应的文字和模板文件   随后我们新建并找到这个dwt文件模板(比如要做一个A1的模板)   随后即可发现模板的样式,包括每种颜色的粗细,颜色和明细栏等 ...

  4. SharePoint 2013 对话框

    The quick way to open a sharepoint 2013 dialog modal form is via Javascript below 1 2 3 4 5 function ...

  5. Effective C++ 35,36,37

    35.使公有继承体现 "是一个" 的含义. 共同拥有继承意味着 "是一个".如  class B:public A. 说明类型B的每个对象都是一个类型A的对象, ...

  6. python中executemany的使用

    conn = MySQLdb.connect(host = “localhost”, user = “root”, passwd = “password”, db = “myDB”, charset= ...

  7. 在C#中怎样推断线程当前所处的状态

    在C#中怎样推断线程当前所处的状态 老帅       在C#中.线程对象Thread使用ThreadState属性指示线程状态.它是带Flags特性的枚举类型对象.    ThreadState 为线 ...

  8. win10+vs2017+asp.net MVC5+EF6+mysql 闪退问题,解决方法

    1.安装 mysql-for-visualstudio-2.0.5.msi 2.安装 mysql-connector-net-6.10.7.msi 3.在VS2017 右键选中项目,管理NuGet程序 ...

  9. 02-cookie案例-显示用户上次访问网站的时间

    package cookie; import java.io.IOException;import java.io.PrintWriter;import java.util.Date; import ...

  10. PHPExcel简易使用教程

    在企业里使用PHP进行开发,不可避免总会遇到读/写Excel的需求,遇到这种需求,一般使用PHPExcel类库进行开发. PHPExcel现在最新版本是1.8.0,最低需要PHP5.2版本,支持读取x ...