一、复习
servlet接口的实现类中的service()方法,在继承HttpServlet类时,如果没有覆盖父类的service()方法,
那么父类的service()方法会根据请求类型的不同会分别调用覆盖的doGet(),doPost()方法,如果响应两
种请求的动作相同,那么可以直接覆盖service()方法。如果覆盖了
doGet(),doPost()方法之一,那么就会只对一种请求作出相应。在浏览器的地址栏操作按回车键,或者是
热连接,都是get请求,form的method属性如果不指定,默认为get请求。
我们可以通过ServletRequest对象或HttpServletRequest对象的方法来获取请求中传送的参数。
getParameter(String name)方法,可以获得form表单中指定名字的参数,多参数同名时,只取一个。
getParameterNames(),可以获得一个迭代器Enumeration,通过这个迭代器,来获得form表单中参数的名字。
getParameterValues(String name)获得指定的所有同名参数的值。
get请求,会将参数显示在浏览器的地址栏上,其显示格式,在地址之后会以问号开始,以'&'分隔参数,
可以通过HttpServletRequest对象的getQueryString()方法来获得get请求的参数值。
ServletRequest对象的getInputStream()方法可以获得一个由Socket得来的输入流,可以使用这个流来
实现文件的上传。getReader()方法可以直接获取post请求的参数。
注意:getParameter()与getReader()方法不能同时调用
ServletContext对象是Servlet的上下文对象,这个对象是在服务器启动时创建的,他可以看作是
一个应用的对象,他可以看作是包含Servlet,管理Servlet的对象。
二、servlet的生命周期
遵守servlet规范的类,就可以通过服务器产生对象(反射机制),并处理请求。
servlet接口中的方法
所有的servlet都必须实现javax.servlet.Servlet接口
public class TestServlet implements Servlet {
ServletConfig config;
public void init(ServletConfig config) throws ServletException {
this.config=config;
//这个ServletConfig对象是由服务器生成,也就是有系统提供的,通过他可以获得启动信息。ServletConfig对象和Servlet是一一对应的。
//这个方法是在Servlet创建后调用的。如果要是用到ServletConfig对象是一定要为对象赋值。
}
public ServletConfig getServletConfig() {
return this.config;
}
public void service(ServletRequest request, ServletResponse response) throws ServletException, IOException {
...;//这个方法是用来处理请求的核心方法
}
public String getServletInfo() {
return "....";//这个是用来写Servlet信息的,用来写作者,以及版本信息
}
public void destroy() {
...;//这个方法是用来销毁Servlet对象的
}
}
HttpServlet和GenericServlet都实现了Servlet接口。
HttpServlet中的service(HttpServletRequest request,HttpServletResponse response)方法是通过service(ServletRequest request,ServletResponse response)方法的调用来实现对请求的处理。
1、Servlet的生命周期分为四个阶段
(1)创建Servlet对象,通过服务器反射机制创建Servlet对象,第一次请求时才会创建。(默认)
(2)调用Servlet对象的init()方法,初始化Servlet的信息,init()方法只会在创建后被调用一次
(3)响应请求,调用service()或者是doGet(),doPost()方法来处理请求,这些方法是运行的在多线程状态下的。
(4)在长时间没有被调用或者是服务器关闭时,会调用destroy()方法来销毁Servlet对象。
2、servlet创建时机:
(1)第一个请求到来的时候创建
(2)在web.xml中<servlet>标签下添加<load-on-startup>2</load-on-startup>,则在服务器启动的时候就创建
标签体是正数的时候,启动服务器,即创建servlet
并且当多个<servlet>标签都定义了这个时,数字小的先加载
3、初始化参数
可以通过<init-param>标签来配置初始化参数,可以用ServletConfig对象的
getInitParameter(String name)方法来得到参数。
<init-param>
<param-name>...</param-name>
<param-value>...</param-value>
</init-param>
三、多线程下的操作
多线程下所操作的变量,如果操作的是一个变量,且兼有读写操作,就要考虑加上同步,但同步不能乱加,否则会造成死锁问题。
init()和destroy()方法都是运行在单线程下的。
四、分布式模型
把系统部署在不同的地址空间执行
在有限的硬件条件下,服务更多的用户
在Servlet中可以访问,JDBC,RMI(远程方法调用),以及跨语言平台的组件等资源。
在Servlet中是用JDBC很容易,也就是在Servlet中调用JDBC中的方法,就可以实现对数据库的访问
五、有参和无参的init方法。
public void init(ServletConfig config)throws ServletException
{
this.config = config;
init();
}
public void init()throws ServletException
{
.....;//覆盖了的无参的init()方法,会在Servlet创建,调用有参的init方法时
也会被调用。
}
先覆盖init(),有父类调init(config)
init()方法可抛异常,初始化成功才进入service()方法中
六、war文件
扩展名为“.war”的文件放在tomcat的webapps下,当服务器启动的时候,自动把文件解压开
注意:文件名字,就是将来访问时应用的名字
分享到:
相关推荐
JSP Servlet 学习笔记 第2版 林信良 随书光盘 第3卷
Servlet学习笔记(java的Servlet)。 jsp的学习基础。此笔记可让你5天内学会使用Servlet,可快速入门,也可当手册使用。 更多:http://download.csdn.net/user/daillo/all
《JSP & Servlet学习笔记(第2版)》是作者多年来教学实践经验的总结,汇集了学生在学习JSP&Servlet;或认证考试时遇到的概念、操作、应用等各种问题及解决方案。 《JSP & Servlet学习笔记(第2版)》针对Servlet 3.0的...
**林学良Jsp&Servlet学习笔记**: 这份学习资料可能是对JSP和Servlet基础知识的系统性讲解,涵盖了上述概念和原理,适合初学者入门。通过阅读这份笔记,你可以了解JSP和Servlet的基本语法、生命周期、以及如何将它们...
本书是作者多年来教学实践经验的总结,汇集了教学过程中学生在学习JSP & Servlet时遇到的概念、操作、应用或认证考试等问题及解决方案。 本书针对Servlet 3.0的新功能全面改版,无论是章节架构与范例程序代码,都...
Java相关课程系列笔记之九Servlet学习笔记 Java相关课程系列笔记之十JSP学习笔记 Java相关课程系列笔记之十一Ajax学习笔记 Java相关课程系列笔记之十二jQuery学习笔记 Java相关课程系列笔记之十三Struts2学习笔记 ...
吉林大学珠海学院JSP&Servlet学习笔记(第二版)课后答案 本资源为吉林大学珠海学院JSP&Servlet学习笔记(第二版)的课后答案,涵盖了JSP和Servlet相关的知识点。本笔记共分为九章,每章节都包含了相关的问题答案,...
**JSP(Java Server Pages)与Servlet...这个**[JSP&Servlet学习笔记(第2版)]**会涵盖这些主题,并可能包括示例代码、最佳实践和常见问题解答,帮助读者全面掌握JSP和Servlet的使用技巧,进一步提升Java Web开发能力。
jsp&servlet学习笔记(第2版)光盘,买书附赠光盘,完片版本。
本书是作者多年来教学实践经验的总结,汇集了教学过程中学生在学习JSP &Servlet;时遇到的概念、操作、应用或认证考试等问题及解决方案。 本书针对Servlet 3.0的新功能全面改版,无论是章节架构与范例程序代码,都...
[JSP&Servlet学习笔记(第2版)] 林信良
### Servlet学习笔记精炼知识点 #### 一、Servlet初始化与加载机制 1. **Servlet注册与实例化**:在Web应用中,一个Servlet的生命周期始于它的注册与实例化过程。通常,这一过程是在Web服务器启动时,根据`web.xml...
学习 JSP 和 Servlet 要注重理论与实践相结合,不仅要理解它们的工作原理,还要通过编写实际项目来提升技能。同时,不断关注新技术,如 Spring Boot 和微服务架构,这将有助于你更好地适应 Java Web 开发的未来趋势...
书 名:JSP & Servlet学习笔记(第2版) 作 者:(台湾)林信良 著 出 版 社:清华大学出版社 出版时间:2012-5-1 ISBN:9787302283669 纸书页数:456页 定 价:¥ 58.00 内容简介: 本书是作者多年来...
本书是作者多年来教学实践经验的总结,汇集了教学过程中学生在学习JSP & Servlet时遇到的概念、操作、应用或认证考试等问题及解决方案。, 本书针对Servlet 3.0的新功能全面改版,无论是章节架构与范例程序代码,都做...
根据提供的文件信息,标题为“JSP&Servlet学习笔记(第2版)_打印版”,描述指出文档经过空白边裁剪处理以便于打印。虽然提供的部分内文无法直接转化为明确的知识点,但我们可以根据标题和描述推测该文档的主要内容,...
JSP Servlet学习笔记,java编程相关知识