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);
8 Application管理
Application 比session更大的作用域。 访问同一个web应用程序上的各种servlet,无论是不是同一session都会访问servletContext对象,都会访问这个作用域。
ServletContext application=this.getServletContext(); 我们写的servlet和tomcat打交道。
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简介** JSP(Java Server Pages)是一种服务器端脚本语言,用于创建动态网页。JSP文件实质上是HTML或XML文档,其中嵌入了Java代码片段。当客户端请求JSP页面时...
### Servlet基础知识总结 #### 一、Servlet简介 Servlet是一种服务器端的小程序,是Java平台上的一个重要的技术之一,主要用于处理客户端的HTTP请求并生成动态网页。Servlet是在服务器端运行的,能够提供各种服务...
黑马 程序员-方立勋老师-javaWeb开发-03-Web开发入门和 04-Servlet开发和ServletConfig和ServletContex对象 知识总结记录
### Servlet核心知识点详解 #### 一、Servlet简介与工作原理 Servlet是一种运行在服务器端的Java应用程序,专门用于处理客户端的HTTP请求并生成响应。它作为Web应用的重要组成部分,能够提供动态网页服务,实现了...
### JSP & Servlet知识点总结 #### 一、Web概述与工作原理 - **Web定义**:Web是指一种基于浏览器和服务器交互的技术体系,它通过有线(如家庭宽带)或无线(如Wi-Fi)网络连接客户端(通常是浏览器)与服务器端,...
【JSP和Servlet知识点详解】 一、JSP与Servlet的区别 1. **本质与生成**:JSP(Java Server Pages)本质上是Servlet的一种简化形式,它将HTML代码和Java代码结合在一起,经过Web容器(如Tomcat)的处理,被编译成...
jsp&servlet知识点总结.doc
servlet总结 都是基础和重要的知识点 大学软件专业的上课资料 想巩固基础知识请进
### Servlet基础知识详解 #### 一、Servlet的基本概念与工作原理 1. **Servlet定义** - **定义**: Servlet是一种Java程序,它运行在服务器端,遵循特定的标准规范,能够响应客户端的请求并生成动态内容。 - **...
以下是对Servlet和JSP知识点的详细归纳: **Servlet** 1. **Servlet概念**:Servlet是Java编写的小型服务器端程序,运行在Web服务器上,用于处理客户端请求并返回响应。 2. **生命周期**:Servlet的生命周期包括...
此外,描述中提到的“涉及servlet知识,接口等”,意味着该项目不仅涵盖了Servlet的基础应用,还可能包含了接口设计和实现。 描述中提到“实现了登录,增删改查的功能”,这涵盖了Web应用程序的基本操作。登录功能...
总结来说,开发JSP与Servlet的过程涉及多个方面,包括编写代码、配置部署描述文件、编译、部署和测试,最终通过服务器的配置来访问Web应用。Tomcat作为中间件,提供了运行这些应用所需的环境和框架支持。在开发过程...
### Servlet与JSP知识点总结 #### 一、Servlet概述及基本使用 - **Servlet定义**:Servlet是一种服务器端的小程序,用于处理来自Web浏览器或其他HTTP客户端的请求,并返回响应。Servlet通常作为MVC架构模式中的...
html,css,jsp相关知识总结,便于进行html,css,jsp的学习
自己总结的一些Servlet知识点!希望对大家有用!
### Servlet基础知识及应用详解 #### 一、Servlet概述 Servlet是一种服务器端的Java技术,用于扩展应用程序的功能。它主要用于Web应用程序开发,可以处理客户端发送到Web服务器的各种请求,并且能够生成动态网页。...
本文将用通俗易懂的语言深入浅出地介绍JSP和Servlet的基础理论知识。 首先,我们来理解什么是JavaServer Pages(JSP)。JSP是Java平台上的一个标准视图技术,它允许开发者将HTML、CSS和JavaScript与Java代码相结合...
### JavaWeb Servlet 开发知识点总结(二) #### 一、ServletConfig详解 ##### 1.1 配置Servlet初始化参数 在JavaWeb开发中,`ServletConfig` 是一个非常重要的接口,它允许开发者访问Servlet的一些特定配置信息...