- 浏览: 89081 次
文章分类
最新评论
第三章:servlet基础
核心方法:
1.使用HTML验证器检查由您servlet所生成的页面的语法。
HTML文档中包括<!DOCTYPE...>
这个就是告诉HTML验证器我们使用的是那个HTML版本,从而验证器知道用哪种规范对文档进行检查。验证器所在页面为:
www.htmlhelp.com/tools/validator。
2.如果需要同等处理GET和POST,可以让其中之一调用另一个,不要覆盖service方法。
警告
1.必须在传送实际的文档之前设定内容的类型。
2.不要让高流量的servlet实现SIngleThreadModel。servlet规范2.4不赞成使用SingleThreadModel,因为SingleThreadModel是针对单一实例,让所有请求排队,减少了性能,此外,如果我们产生多个实例来实现SingleThreadModel那么每个实例就会拥有自己的实例变量,就无法完成同步,所以我们需要使用明确的synchronized的代码块实现代码级的共享。
心得笔记
1.如果你发现自己在out.println()多次重复相同的代码,我们可以创建简单的实用工具类,来简化这些构造。比如
:
2.servlet的生命周期,首次创建servlet时。它的inti方法会得到调用,因此,inti是放置一次性设置代码的地方,在这之后,针对每个用户请求,都会创建一个线程,该线程调用service()方法,多个并发请求一般会导致多个线程同时调用service(),之后,由
service方法依据接收到的HTTP请求的类型,调用doGet,doPost或其他doXxx方法,最后服务器决定卸载某个servlet,会首先调用servlet的destroy方法。
3.service方法,GET请求起因于正常的URL请求,或没有指定METHOD的HTML表单。
a.service中已经拥有对options和Trace请求的自动支持,所以我们可以不写doOptions和doTrace
4.init方法,a.常见初始化。b.由初始化参数控制的初始化,这种方式使管理员无需修改servlet的源代码。就可以将servlet在机器间移动,以及改变特定的参数。
这种方式非常依赖于部署描述文件web.xml。a.通过向web.xml的servlet元素添加init-param,可以指定初始化参数的名称和值,然后servlet的inti方法中,调用getServletConfig,获取ServletConfig对象的引用,然后调用ServletConfig的getInitParameter方法,返回值就是init参数的值,或者null——由于我们没有设置。
5.SingleThreadModel接口:a.系统只生成servlet的单一实例,之后为每个用户请求创建新的线程。注意多个线程并不共享局部变量,而共享全局变量(或者叫成员变量,全局变量又包括类变量和实例变量),所以需要对共享的变量予以保护。这里就要理解下为什么不共享局部变量,因为如果一个变量是局部变量,那么每个线程都会有一个该局部变量的拷贝,一个线程对该局部变量的改变不会影响到其他的线程。
核心方法:
1.使用HTML验证器检查由您servlet所生成的页面的语法。
HTML文档中包括<!DOCTYPE...>
这个就是告诉HTML验证器我们使用的是那个HTML版本,从而验证器知道用哪种规范对文档进行检查。验证器所在页面为:
www.htmlhelp.com/tools/validator。
2.如果需要同等处理GET和POST,可以让其中之一调用另一个,不要覆盖service方法。
警告
1.必须在传送实际的文档之前设定内容的类型。
2.不要让高流量的servlet实现SIngleThreadModel。servlet规范2.4不赞成使用SingleThreadModel,因为SingleThreadModel是针对单一实例,让所有请求排队,减少了性能,此外,如果我们产生多个实例来实现SingleThreadModel那么每个实例就会拥有自己的实例变量,就无法完成同步,所以我们需要使用明确的synchronized的代码块实现代码级的共享。
心得笔记
1.如果你发现自己在out.println()多次重复相同的代码,我们可以创建简单的实用工具类,来简化这些构造。比如
:
public class ServletUtilities{ public static final String DOCTYPE = ""; public static final String headWithTitle(String title){ return (DOCTYPE +"\n"+"<HTML>\n" +"<head><title>"+title+"</title><head>\n"); } }
2.servlet的生命周期,首次创建servlet时。它的inti方法会得到调用,因此,inti是放置一次性设置代码的地方,在这之后,针对每个用户请求,都会创建一个线程,该线程调用service()方法,多个并发请求一般会导致多个线程同时调用service(),之后,由
service方法依据接收到的HTTP请求的类型,调用doGet,doPost或其他doXxx方法,最后服务器决定卸载某个servlet,会首先调用servlet的destroy方法。
3.service方法,GET请求起因于正常的URL请求,或没有指定METHOD的HTML表单。
a.service中已经拥有对options和Trace请求的自动支持,所以我们可以不写doOptions和doTrace
4.init方法,a.常见初始化。b.由初始化参数控制的初始化,这种方式使管理员无需修改servlet的源代码。就可以将servlet在机器间移动,以及改变特定的参数。
这种方式非常依赖于部署描述文件web.xml。a.通过向web.xml的servlet元素添加init-param,可以指定初始化参数的名称和值,然后servlet的inti方法中,调用getServletConfig,获取ServletConfig对象的引用,然后调用ServletConfig的getInitParameter方法,返回值就是init参数的值,或者null——由于我们没有设置。
5.SingleThreadModel接口:a.系统只生成servlet的单一实例,之后为每个用户请求创建新的线程。注意多个线程并不共享局部变量,而共享全局变量(或者叫成员变量,全局变量又包括类变量和实例变量),所以需要对共享的变量予以保护。这里就要理解下为什么不共享局部变量,因为如果一个变量是局部变量,那么每个线程都会有一个该局部变量的拷贝,一个线程对该局部变量的改变不会影响到其他的线程。
发表评论
-
servlet和jsp核心编程(第2版)第十六章 简化对Java代码的访问:jsp2.0表达式语言学习笔记
2012-08-23 21:49 768第十六章:简化对Java代 ... -
servlet和jsp核心编程(第2版)第十五章servlet和JSP的集成,模型-视图-控制器构架
2012-08-23 14:59 778第十五章:servlet和JSP的集成,模型-视图-控制器构架 ... -
servlet和jsp核心编程(第2版)第十四章 JavaBean组件在JSP文档中的应用 学习笔记
2012-08-21 11:55 733第十四章 JavaBean组件在JSP文档中的应用 一、bea ... -
servlet和jsp核心编程(第2版)第十三章 在JSP页面中包含文件和applet学习笔记
2012-08-20 15:53 888第十三章 在JSP页面中包 ... -
servlet和jsp核心编程(第2版)第十二章page指令学习笔记
2012-08-19 17:00 799第十二章 控制所生成的servlet的结构:JSP page指 ... -
servlet和jsp核心编程(第2版)第十一章jsp脚本元素的调用学习笔记
2012-08-18 21:09 847第十一章 用JSP脚本元素 ... -
servlet和jsp核心编程(第2版)第十章jsp技术概述学习笔记
2012-08-18 10:37 718第十章jsp技术概述 学习笔记: 一servlet和jsp的区 ... -
servlet和jsp核心编程(第2版)第九章会话跟踪学习笔记
2012-08-17 17:30 927第九章 会话跟踪 核心 ... -
servlet和jsp核心编程(第2版)第八章cookie管理学习笔记
2012-08-08 12:27 876第八章 cookie管理 核心方法: 1.在创建cookie对 ... -
servlet和jsp核心编程(第2版)第七章服务器响应的生成:HTTP响应报头学习笔记
2012-08-06 17:45 773第七章:服务器响应的 ... -
servlet和jsp核心编程(第2版)第六章服务器响应的生成:HTTP状态代码学习笔记
2012-08-05 10:52 775第六章:服务器响应的生成:HTTP状态代码 核心方法: 1.在 ... -
servlet和jsp核心编程(第2版)第五章客户请求的处理:HTTP请求报头学习笔记
2012-08-02 21:36 732第五章客户请求的处理:HTTP请求报头 核心方法: 1.在使用 ... -
servlet和jsp核心编程(第2版)第四章客户请求的处理,表单数据学习笔记
2012-07-31 16:05 1260第四章学习笔记 客户请 ...
相关推荐
**JSP(Java Server Pages)与Servlet...这个**[JSP&Servlet学习笔记(第2版)]**会涵盖这些主题,并可能包括示例代码、最佳实践和常见问题解答,帮助读者全面掌握JSP和Servlet的使用技巧,进一步提升Java Web开发能力。
JSP Servlet 学习笔记 第2版 林信良 随书光盘 第3卷
《JSP & Servlet学习笔记(第2版)》是作者多年来教学实践经验的总结,汇集了学生在学习JSP&Servlet;或认证考试时遇到的概念、操作、应用等各种问题及解决方案。 《JSP & Servlet学习笔记(第2版)》针对Servlet 3.0的...
本书是作者多年来教学实践经验的总结,汇集了教学过程中学生在学习JSP & Servlet时遇到的概念、操作、应用或认证考试等问题及解决方案。 本书针对Servlet 3.0的新功能全面改版,无论是章节架构与范例程序代码,都...
JSP & Servlet学习笔记(第2版),高清完整版,学习servlet和jsp的经典教材,推荐! 出版时间:2012-05-01,林信良 著
根据提供的文件信息,标题为“JSP&Servlet学习笔记(第2版)_打印版”,描述指出文档经过空白边裁剪处理以便于打印。虽然提供的部分内文无法直接转化为明确的知识点,但我们可以根据标题和描述推测该文档的主要内容,...
本书是作者多年来教学实践经验的总结,汇集了教学过程中学生在学习JSP &Servlet;时遇到的概念、操作、应用或认证考试等问题及解决方案。 本书针对Servlet 3.0的新功能全面改版,无论是章节架构与范例程序代码,都...
jsp&servlet学习笔记(第2版)光盘,买书附赠光盘,完片版本。
学习笔记"及提供的源码,开发者可以全面了解JSP和Servlet的工作原理,学会如何创建动态Web应用,同时提升解决问题和实际开发的能力。结合实际项目练习,能够更好地将理论知识转化为实践经验,从而在Java Web开发领域...
本资源为吉林大学珠海学院JSP&Servlet学习笔记(第二版)的课后答案,涵盖了JSP和Servlet相关的知识点。本笔记共分为九章,每章节都包含了相关的问题答案,涉及到JSP和Servlet的各个方面。 在第一章中,本笔记涵盖...
在这个"Servlet & JSP学习笔记NetBeans源代码"压缩包中,你将找到一系列与Servlet和JSP相关的示例代码,这些代码是基于NetBeans IDE编写的,并且是在Tomcat服务器上运行的。 Tomcat是一个开源的轻量级Web服务器和...
[JSP&Servlet学习笔记(第2版)] 林信良
**林学良Jsp&Servlet学习笔记**: 这份学习资料可能是对JSP和Servlet基础知识的系统性讲解,涵盖了上述概念和原理,适合初学者入门。通过阅读这份笔记,你可以了解JSP和Servlet的基本语法、生命周期、以及如何将它们...
该书是学习JSP和Servlet的好书,讲解通俗易懂,详细全面,带目录。
**JSP(JavaServer Pages)/Servlet 知识详解** JSP 和 Servlet 是 ...以上就是关于 JSP 和 Servlet 的核心知识点,希望对你学习和理解这些技术有所帮助。通过深入学习和实践,你可以创建出高效、稳定的 Web 应用。
Servlet和JSP是Java Web开发中的核心技术,它们用于构建动态网页和服务器端应用程序。这篇学习笔记将深入探讨这两个概念,以及它们在实际开发中的应用。 Servlet是Java编程语言的一个接口,由Sun Microsystems(现...
第三篇为“JSP技术基础”,主要讲述JSP的基本语法和内建对象及JSP和Servlet的集成,JavaBean和表达式语言;第四篇为“数据库访问技术”,主要讲述JDBC技术及JSP和Servlet如何通过JDBC访问数据库,以及如何改进数据库...
本书以其独特的学习风格,深入浅出地介绍了Servlet和JSP(JavaServer Pages)这两项核心的Java Web开发技术。 Servlet是Java平台上的一个标准API,用于构建动态Web应用程序。它允许开发者通过Java代码来处理HTTP...