`

Servlet知识总结

    博客分类:
  • J2EE
阅读更多

1.什么是Servlet?

Servlet是运行在Web服务器和应用服务器上的Java程序。它是一个中间层,负责连接来自Web浏览器或其他HTTP客户请求和HTTP服务器上的数据或应用程序。

 

2.Servlet和JSP的区别?

简单的说就是,Servlet是含有HTML的Java程序,JSP是含有Java代码的HTML页面。一般来来说,Servlet侧重于逻辑处理,JSP侧重于显示

 

3.Servlet的基本结构

public class ServletName extends HttpServlet { 

public void doPost(HttpServletRequest request,HttpServletResponse  response) throws ServletException, IOException { 
} 
public void doGet(HttpServletRequest request, HttpServletResponse  response) throws ServletException, IOException { 
} 
    }

4.Servlet的生命周期:

     服务器只创建一个Servlet的单一实例,每一个请求都会引发新的线程,只有第一次访问Servlet才会实例化Servlet。其生命周期如下

突例化(new) --> 初始化(init) --> services(doGet,doPost....) --> 销毁(destory)

 

    Servlet初始化有两种类型

       1)常规初始化,只是创建或载入在Servlet生命周期内用到的一些数据或执行一次计算;

       2)初始化参数控制的初始化,依懒web.xml中提供的初始化参数

 

5.Servlet获取表单数据:

       单个值的获取:request.getParameters,如果参数存在但没有相应的值,返回空的String;如要参数不存在,则返回null;

       多个值的获取:request.getParamenterValues,存在返回一个数组,不存在返回null;

参数名的查找:request.getParamenterNames和request.getParameterMap。

 

6.Cookie的管理:

    Cookie发送的三个步骤:1)创建Cookie;2)设置最大时效 3)将Cookie放到HTTP响应头

    Cookie的读取:1)request.getCookieS 2)循环Cookie数组

    示例:

      发送

      //新建

Cookie cookie=new Cookie("name1","value1");
//设置最大时效
cookie.setMaxAge(3600);
//添加到响应头
response.addCookie(cookie);

 

   读取:

      cookie[] cookies=request.getCookies();//获取

if(cookies!=null){
 Cookie cookie;
//循环
for(int i=0;i<cookies.length;i++)
{
   cookie=cookies[i];
   cookie.getName();
   cookie.getValue();
}
}

 

 Cookie的特点:

 

 

   1)服务器可以向客户端写内容;

   2)只能是文本内容; 长度不能超过4K

   3)客户端可以阻止服务器写入;

   4)只能拿自己webapp写入的东西

   5)Cookie分为两种

       属于窗口/子窗口(放在内存中)

       属于文本(有生命周期的)

   6)一个servlet/jsp设置的cookies 能够被同一个路径下面或者子路径下面的servlet/jsp读到(路径=URL)

       (路径!=真实文件路径)

         父路径:http://127.0.0.1/my/SetCookies

         子路径:http://127.0.0.1/my/servlet/ShowCookies

 

 

7.Session管理 

 session对象是写在服务器端,大小无限制

 

  1)服务器的一块内存(key-value)

   2)配置过期时间:conf/web.xml <session-config>

   3)和客户端窗口对应(子窗口)(独一无二)

   4)客户端和服务器都有对应的SessioID

   5)客户端向服务器端发送SessionID的时候两种方式:cookie(内存cookie)和 重写URL

 

    6)浏览器禁掉cookie,就不能使用session(使用cookie实现的session)

    7)如果想安全的使用session(不论客户端是否禁止cookie),只能使用URL重写(大大增加编程负担),所以很多网站要求客户打开cookie打卡

 

 示例

 

  HttpSession session=request.getSession(true);
  Integer accessCount = (Integer)session.getAttribute("accessCount");
  session.setAttribute("accessCount",accessCount);
 

 

 

Application管理

  Application session更大的作用域。 访问同一个web应用程序上的各种servlet,无论是不是同一session都会访问servletContext对象,都会访问这个作用域。

  ServletContext application=this.getServletContext(); 我们写的servlettomcat打交道。

 

 

  Integer accessCount=(Integer)application.getAttribute("accesscount");

  application.setAttribute();

 

9.中文乱码处理:

乱码的主要原因:整个处理过程中编码不一致。

取参数:request.getParameter("param1");

 

request.setCharacterEncoding("gbk");解决post方式提交内容的乱码,一定要写在存取第一个参数之前。因为一旦取第一个参数了,会把所有参数存到一个容器去。不要调用

 

response.setCharacterEncoding("gbk");

 

解决get方式提交的乱码:tomcat--->修改server.xml--URIEncoding="GBK"

 

 

 

参考:http://fushengfei.iteye.com/blog/783390

 

 

 

 

 

 

 

 

 

 

 

分享到:
评论

相关推荐

    jsp、servlet知识总结

    本文将对这两项技术进行详细的知识总结。** **一、JSP简介** JSP(Java Server Pages)是一种服务器端脚本语言,用于创建动态网页。JSP文件实质上是HTML或XML文档,其中嵌入了Java代码片段。当客户端请求JSP页面时...

    Servlet基础知识总结

    ### Servlet基础知识总结 #### 一、Servlet简介 Servlet是一种服务器端的小程序,是Java平台上的一个重要的技术之一,主要用于处理客户端的HTTP请求并生成动态网页。Servlet是在服务器端运行的,能够提供各种服务...

    web Servlet 的知识总结

    黑马 程序员-方立勋老师-javaWeb开发-03-Web开发入门和 04-Servlet开发和ServletConfig和ServletContex对象 知识总结记录

    servlet笔记,servlet的总结

    ### Servlet核心知识点详解 #### 一、Servlet简介与工作原理 Servlet是一种运行在服务器端的Java应用程序,专门用于处理客户端的HTTP请求并生成响应。它作为Web应用的重要组成部分,能够提供动态网页服务,实现了...

    jsp&servlet知识点总结

    ### JSP & Servlet知识点总结 #### 一、Web概述与工作原理 - **Web定义**:Web是指一种基于浏览器和服务器交互的技术体系,它通过有线(如家庭宽带)或无线(如Wi-Fi)网络连接客户端(通常是浏览器)与服务器端,...

    jsp和servlet知识点总结

    【JSP和Servlet知识点详解】 一、JSP与Servlet的区别 1. **本质与生成**:JSP(Java Server Pages)本质上是Servlet的一种简化形式,它将HTML代码和Java代码结合在一起,经过Web容器(如Tomcat)的处理,被编译成...

    jsp&servlet知识点总结.doc

    jsp&servlet知识点总结.doc

    servlet总结的基础和重要的知识点

    servlet总结 都是基础和重要的知识点 大学软件专业的上课资料 想巩固基础知识请进

    servlet基础知识新手下载

    ### Servlet基础知识详解 #### 一、Servlet的基本概念与工作原理 1. **Servlet定义** - **定义**: Servlet是一种Java程序,它运行在服务器端,遵循特定的标准规范,能够响应客户端的请求并生成动态内容。 - **...

    Servlet&JSP知识点归纳思维导图

    以下是对Servlet和JSP知识点的详细归纳: **Servlet** 1. **Servlet概念**:Servlet是Java编写的小型服务器端程序,运行在Web服务器上,用于处理客户端请求并返回响应。 2. **生命周期**:Servlet的生命周期包括...

    简单的BBS(javaweb),涉及servlet知识,接口等

    此外,描述中提到的“涉及servlet知识,接口等”,意味着该项目不仅涵盖了Servlet的基础应用,还可能包含了接口设计和实现。 描述中提到“实现了登录,增删改查的功能”,这涵盖了Web应用程序的基本操作。登录功能...

    Tomcat开发jsp与servlet总结.pdf

    总结来说,开发JSP与Servlet的过程涉及多个方面,包括编写代码、配置部署描述文件、编译、部署和测试,最终通过服务器的配置来访问Web应用。Tomcat作为中间件,提供了运行这些应用所需的环境和框架支持。在开发过程...

    servlet jsp总结

    ### Servlet与JSP知识点总结 #### 一、Servlet概述及基本使用 - **Servlet定义**:Servlet是一种服务器端的小程序,用于处理来自Web浏览器或其他HTTP客户端的请求,并返回响应。Servlet通常作为MVC架构模式中的...

    html,css,jsp相关知识总结

    html,css,jsp相关知识总结,便于进行html,css,jsp的学习

    servlet小结

    自己总结的一些Servlet知识点!希望对大家有用!

    servlet 笔记

    ### Servlet基础知识及应用详解 #### 一、Servlet概述 Servlet是一种服务器端的Java技术,用于扩展应用程序的功能。它主要用于Web应用程序开发,可以处理客户端发送到Web服务器的各种请求,并且能够生成动态网页。...

    jsp,servlet基础理论知识

    本文将用通俗易懂的语言深入浅出地介绍JSP和Servlet的基础理论知识。 首先,我们来理解什么是JavaServer Pages(JSP)。JSP是Java平台上的一个标准视图技术,它允许开发者将HTML、CSS和JavaScript与Java代码相结合...

    javaweb Servlet开发总结(二).docx

    ### JavaWeb Servlet 开发知识点总结(二) #### 一、ServletConfig详解 ##### 1.1 配置Servlet初始化参数 在JavaWeb开发中,`ServletConfig` 是一个非常重要的接口,它允许开发者访问Servlet的一些特定配置信息...

Global site tag (gtag.js) - Google Analytics