1、servlet接口

含5个抽象放法

void init(ServletConfig config) throws ServletException //初始化Servlet

void service(ServletRequest request,ServletResponse response) throws ServletException,IOException  //获得请求数据进行处理,并响应

void destroy()  //销毁

ServletConfig getServletConfig() //返回由Servlet容器传递给init()方法的ServletConfig对象

String getServeltInfo() //返回Servlet的一段描述

Servlet的生命周期:

--->实例化

--->第一次加载调用init

---->service 每次请求是都会执行

--->destroy 销毁,服务器停止时调用一次

servlet和CGI的区别:

servlet 多线程的,每次启用是调用一个线程,可以并发访问跟多

CGI:每次请求启动一个进程,并发访问数少

2、web.xml文件

<web-app>

  //欢迎页,默人首页,如果不配置,默认为tomcat路径下的全局配置,如果已经配置,则会覆盖tomcat下面的全局配置

  <welcome-file-list>

    <welcome-file>index.jsp</welcome-file>

    <welcome-file>default.jsp</welcome-file>

    <welcome-file>index.html</welcome-file>

  </welcome-file-list>

  <servlet>

    <servlet-name>TestServlet</servlet-name>

    <servlet-class>com.cnblog.TestServlet</servlet-class>

  </servlet>

  <servlet-mapping>

    <servlet-name>TserServlet</servlet-name>

    <url-pattern>/test</url-pattern>

  </servlet-mapping>

</web-app>

3、ServletRequest接口

  常用方法   String  getParameter(String name) 获得请求的参数值

         String[]  getParameterValues(String name) 获得多个请求参数值

         void setAttribute(String name,Object value) 设置属性

         Object  getAttribute(String name)获取参数

         void removeAttribute(String name)移除参数

         String getScheme() 获得请求协议

         String getServletName()获得服务器名

         int getServerPort()获得服务器端口号

         String getLocalAddr() 获得服务器ip地址

         String getRemoteAddr() 获得客户端ip地址

         void setCharacterEncoding(String encode) 设置请求编码(只对post提交起作用)

       对GET提交跟POST提交都管用的设置编码方式   String name = request.getParameter("name");

                             name = new String(name.getBytes("ISO-8859-1","UTF-8"));

4、ServletResponse接口

  PrintWriter getWriter()获得输出流 ServletOutputStream getOutputStream

  void setCharacterEncoding(String encode)设置响应编码

  void serContextType("text/html;charser=UTF-8")设置相应编码跟MIME类型       

关于Servlet的一些归纳(1)的更多相关文章

  1. Servlet面试题归纳

    尊重原创:http://blog.csdn.net/caohaicheng/article/details/38116481 1.说一说Servlet生命周期 Servlet生命周期包括三部分: 初始 ...

  2. 关于Servlet的一些归纳(2)

    1.web项目结构 根路径: 文件夹 文件 WEB-INF: lib(存放一些jar文件) classes(存放class文件) web.xml 2.GenericServlet类 实现了Servle ...

  3. java-we不在esclipse创建servlet之后改名不起作用的问题归纳

    有时候我们不满意类名而去改名,但是改过了之后却发现不能实现它本来该实现的功能了,这是为什么呢,原因就是在2.5里面创建了servlet之后就会在web.xml里生成关于这个servlet的配置,你只是 ...

  4. Servlet和CGI的区别

    Servlet被服务器实例化后,容器运行其init方法,请求到达时运行其service方法,service方法自动派遣运行与请求对应的doXXX方法(doGet,doPost)等,当服务器决定将实例销 ...

  5. 初学 Java Web 开发,请远离各种框架,从 Servlet 开发

    Web框架是开发者在使用某种语言编写Web应用服务端时关于架构的最佳实践.很多Web框架是从实际的Web项目抽取出来的,仅和Web的请求和响应处 理有关,形成一个基础,在开发别的应用项目的时候则可以从 ...

  6. JSP/Servlet基础语法

    相关学习资料 http://my.oschina.net/chape/blog/170247 http://docs.oracle.com/cd/E13222_01/wls/docs81/webapp ...

  7. 【重走Android之路】【路线篇(二)】知识点归纳

    [重走Android之路][路线篇(二)]知识点归纳   参考:http://blog.csdn.net/xujing81/article/details/7313507   第一阶段:Java面向对 ...

  8. jsp与El,jstl知识点总结归纳

    jsp与El,jstl知识点总结归纳 jsp部分 一.jsp的三大指令 page ,include,taglib 1.jsp中的page指令 <% page %>-设置jsp 例如: &l ...

  9. 图解JSP与Servlet的关系

      Servlet是Java提供的用于开发Web服务器应用程序的一个组件,运行在服务器端,由Servlet容器所管理,用于生成动态的内容.Servlet是平台独立的Java类,编写一个Servlet, ...

随机推荐

  1. 关于javaweb项目红叉报错可但项目可以正常运行的解决办法

           有时候导入的项目工程,文件夹左下角永远有一个红叉,但是由于不影响程序运行,所以之前一直忽略了,但是强迫症患者表示不解决巨蓝瘦,网上有些方法没有讲清楚,所以今天做了个总结来教大家如何详细解 ...

  2. python 环境安装和卸载1

    同事换了新机器,系统从win7变为了win10,因此需要重新安装python环境啦!不废话,直奔主题. A 安装 一.进入python官网  www.python.org 进入downloads-&g ...

  3. Python 框架化代码的学习

    1 def 1: 2 pass 3 4 def 2: 5 pass 6 7 def 3: 8 pass 从Python初学我们习惯的风格就是如上图,把函数方法直接放到全局来写,这的确是最简单易懂的方式 ...

  4. html知识点汇总(持续更新中)

    本人从事前端行业三年多,打算从今天开始整理一些关于前端的一些比较经典的知识点,持续更新中...希望能对一些相关知识点有疑问的朋友有一些帮助! HTML篇: 1.常见的行内元素/块级元素/空元素有哪些? ...

  5. gradle project sync failed.please fix your project and try again-Android Studio3.1.2运行出错

    原因: 修改了工程中MainActivity.java和app文件夹下的代码后运行不了. 解决办法: 关闭Android Studio,然后再重新启动,它会再次构建gradle.

  6. [php] 添加接口访问日志(文件)

    日志参数: 请求参数,请求地址,响应结果 步骤: 1. 定义日志目录,没有的需要创建 2. 定义日志名称 3. 以追加的形式写入日志文件  FILE_APPEND public function ad ...

  7. 解决IE11安装时需要“获取更新”(IE11离线安装)

    方法一:说明:目前是针对Windows7 64位操作系统安装! 1. 在C盘下新建文件夹,取名为“IE11”. 2. 将官网下载的IE11离线包放到此文件夹中. 3. win + r 打开运行窗口,输 ...

  8. Python字符串 --Python3

    Python语言中,字符串是用两个双引号或者单引号括起来的词汇表或多个字符. 1.Python字符串的两种序号体系 反向递减序号:-- -9 -8 -7 -6 -5 -4 -3 -2 -1 正向递增序 ...

  9. 【Code Tools】Java微基准测试工具JMH之高级篇

    一.IntelliJ IDEA JMH Plugin 这是一个插件,允许您以与JUnit相同的方式使用JMH.以下是已经实现的功能: 1.@Benchmark method generation(自动 ...

  10. LVM (逻辑卷管理器)

    图片来自:https://www.cnblogs.com/linuxprobe/p/5381538.html 参考博客:https://www.cnblogs.com/linuxprobe/p/538 ...