Java Servlet & JSP经典实例
Java Servlet & JSP经典实例
Bruce W. Perry
朱涛江, 邹红霞, 林琪 译
出版时间:2005年07月
页数:760
Java servlet和JSP构成了企业级Java体系结构的“Web层”。这些组件在服务器上执行与Web相关的常见任务,如处理与电子邮件服务器、数据库、企业级JavaBean(EJB)及Web服务器的交互。
本书用Tomcat和BEA WebLogic作为servlet容器,提供了230多个与许多重要的日常Web任务相关的技巧。本书开始简要介绍了打包servlet和JSP、编写部署描述文件、部署servlet和JSP、使用Apache Ant、预编译JSP以及创建XML文档形式的JSP等方面的技巧。
本书包含了大量关于复杂的日常开发任务的技巧,如:
* 操作“会话”、过滤器、定制标记和JSP标准标记库(JSTL)
* Web客户端认证
* 与数据库和电子邮件服务器交互
* 读取和设置“cookie”
* 从客户端上传文件
* 将JavaScript集成于servlet和JSP
* 在JSP和servlet中嵌入多媒体文件(如数字电影和音乐)
* 处理有不同语言用户的Web客户端(国际化)
* 记录servlet和JSP的消息日志
* 动态地导入内容,如同传统的服务器端导入(SSI)代码
* 在serlvet或JSP中使用Amazon和Google的Web Services API
这些技巧涵盖了许多与Servlet 2.4和JSP 2.0规范相关联的新特性,包括ServletRequestListener、新的JSTL 1.1函数、使用模板文本中的JSTL元素、标记文件和基于XML Schema的部署描述文件。
Bruce W. Perry是一位独立的Java软件开发人员及作家。自1996年以来,他为各种非赢利机构、设计和营销公司及广告代理商开发Web应用程序和数据库。在不从事编程和写作的时候,他喜爱骑自行车、在美国和瑞士登山。他同他的妻子Stacy LeBaron、女儿Rachel和儿子Scott一起居住在美国马萨诸塞州的Newburyport。
  1. 前言
  2. 第一章 编写servlet和JSP
  3. 1.0 引言
  4. 1.1 编写servlet
  5. 1.2 编写JSP
  6. 1.3 编译servlet
  7. 1.4 将servlet和JSP打包
  8. 1.5 创建部署描述文件
  9. 第二章 部署servlet和JSP
  10. 2.0 引言
  11. 2.1 在Tomcat中部署独立的servlet
  12. 2.2 在Tomcat的server.xml中使用Context元素
  13. 2.3 在WebLogic中部署独立的servlet
  14. 2.4 在Tomcat中部署独立的JSP
  15. 2.5 在WebLogic中部署独立的JSP
  16. 2.6 在Tomcat中部署Web应用程序
  17. 2.7 在WebLogic中使用Ant部署Web应用程序
  18. 2.8 使用WebLogic管理控制台
  19. 2.9 使用WebLogic Builder部署Web应用程序
  20. 2.10 使用weblogic.Deployer命令行工具
  21. 第三章 为servlet命名
  22. 3.0 引言
  23. 3.1 在web.xml中将servlet映射为名
  24. 3.2 为一个servlet创建多个映射
  25. 3.3 为servlet创建JSP类型的URL
  26. 3.4 将静态内容映射到servlet
  27. 3.5 不使用web.xml映射而调用servlet
  28. 3.6 将所有Web应用程序的请求映射到一个servlet
  29. 3.7 将请求映射到控制器并保留servlet映射
  30. 3.8 为Web应用程序创建欢迎文件
  31. 3.9 限制对某些servlet的请求
  32. 3.10 仅赋予控制器对某些servlet的访问权限
  33. 第四章 使用Apache Ant
  34. 4.0 引言
  35. 4.1 获取和安装Ant
  36. 4.2 使用Ant目标
  37. 4.3 在构建文件类路径中包括Tomcat JAR文件
  38. 4.4 用Ant构建文件编译servlet
  39. 4.5 用Ant创建WAR文件
  40. 4.6 用Ant创建JAR文件
  41. 4.7 用Ant启动Tomcat应用程序
  42. 4.8 用Ant停止Tomcat应用程序
  43. 第五章 转换JSP格式
  44. 5.0 引言
  45. 5.1 在Tomcat中预编译JSP
  46. 5.2 在WebLogic中预编译JSP
  47. 5.3 使用预编译协议预编译JSP
  48. 5.4 将JSP映射为页面实现类
  49. 5.5 从头开始创建JSP文档格式的JSP
  50. 5.6 从JSP中生成XML视图
  51. 第六章 在servlet和JSP中动态地导入内容
  52. 6.0 引言
  53. 6.1 在servlet每次处理请求时导入资源
  54. 6.2 在servlet中使用外部配置导入资源
  55. 6.3 在servlet中导入嵌套多层的资源
  56. 6.4 在JSP中导入很少改变的资源
  57. 6.5 在JSP每次处理请求时导入内容
  58. 6.6 使用外部配置文件在JSP中导入资源
  59. 6.7 在JSP文档中导入XML代码段
  60. 6.8 在JSP导入上下文之外的内容
  61. 第七章 在servlet和JSP中处理Web表单数据
  62. 7.0 引言
  63. 7.1 在servlet中处理POST HTTP请求
  64. 7.2 在JSP中处理POST HTTP请求
  65. 7.3 在JSP中设置JavaBean的特性
  66. 7.4 在JSP中设置表单参数值的作用范围
  67. 7.5 从servlet中发送数据
  68. 7.6 从JSP中发送数据
  69. 7.7 使用servlet向查询字符串添加参数
  70. 7.8 使用JSP向查询字符串添加参数
  71. 7.9 使用过滤器读取参数值
  72. 第八章 上传文件
  73. 8.0 引言
  74. 8.1 准备文件上传的HTML页面
  75. 8.2 使用com.oreilly.servlet库
  76. 8.3 一次上传一个文件
  77. 8.4 上传多个文件
  78. 8.5 文件重命名
  79. 8.6 使用JSP处理文件上传
  80. 第九章 在Web应用程序中处理异常
  81. 9.0 引言
  82. 9.1 在web.xml中声明异常处理器
  83. 9.2 创建处理异常的servlet
  84. 9.3 从servlet中发出错误
  85. 9.4 从JSP中发出错误
  86. 9.5 创建处理错误的JSP
  87. 9.6 声明为其他JSP处理异常的特殊JSP
  88. 第十章 读取和设置cookie
  89. 10.0 引言
  90. 10.1 使用servlet设置cookie
  91. 10.2 创建请求中所有cookie的数组
  92. 10.3 使用JSP设置cookie
  93. 10.4 使用servlet读取cookie的值
  94. 10.5 使用JSP读取cookie的值
  95. 10.6 修改或移除已经设置的cookie
  96. 第十一章 跟踪会话
  97. 11.0 引言
  98. 11.1 在web.xml中设置会话超时时间
  99. 11.2 在所有Tomcat Web应用程序中设置会话超时时间
  100. 11.3 以编程方式设置会话超时时间
  101. 11.4 检查会话是否存在于HttpServletRequest
  102. 11.5 在servlet中跟踪会话的活动
  103. 11.6 在JSP中跟踪会话的活动
  104. 11.7 在JSP中使用URL重写
  105. 11.8 在servlet中使用URL重写
  106. 11.9 使用监听器跟踪会话的生命周期
  107. 11.10 使用监听器监视会话属性
  108. 11.11 使用过滤器监视会话属性
  109. 第十二章 在servlet和JSP中集成JavaScript
  110. 12.0 引言
  111. 12.1 在servlet中包括JavaScript模块
  112. 12.2 在JSP中包括JavaScript模块
  113. 12.3 在servlet中使用JavaScript创建新窗口
  114. 12.4 在JSP中使用JavaScript创建新窗口
  115. 12.5 在servlet中使用JavaScript验证表单值
  116. 12.6 在JSP中使用JavaScript验证表单值
  117. 第十三章 发送非HTML内容
  118. 13.0 引言
  119. 13.1 发送PDF文件
  120. 13.2 发送Word文件
  121. 13.3 发送XML文件
  122. 13.4 发送音频文件
  123. 13.5 在Servlet中查看内部资源
  124. 第十四章 记录servlet和JSP中的消息日志
  125. 14.0 引言
  126. 14.1 不通过log4j记录日志
  127. 14.2 设置log4j
  128. 14.3 不通过配置文件使用日志记录器
  129. 14.4 向root日志记录器添加日志存储器
  130. 14.5 在日志记录器的存储器中使用模式
  131. 14.6 在JSP中使用log4j
  132. 14.7 使用servlet上下文事件监听器记录消息日志
  133. 14.8 使用会话事件监听器记录消息日志
  134. 第十五章 客户端认证
  135. 15.0 引言
  136. 15.1 用Tomcat创建用户和口令
  137. 15.2 在Tomcat中建立SSL
  138. 15.3 使用BASIC认证
  139. 15.4 使用基于表单的认证
  140. 15.5 注销用户
  141. 15.6 使用JAAS创建LoginModule
  142. 15.7 创建JAAS配置文件
  143. 15.8 在servlet中使用JAAS
  144. 15.9 在JSP中使用JAAS
  145. 第十六章 在Web应用程序中绑定、访问和移除属性
  146. 16.0 引言
  147. 16.1 在servlet中设置ServletContext属性
  148. 16.2 在JSP中设置ServletContext属性
  149. 16.3 在servlet中访问或移除ServletContext属性
  150. 16.4 在JSP中访问或移除ServletContext属性
  151. 16.5 在servlet中设置会话属性
  152. 16.6 在JSP中设置会话属性
  153. 16.7 在servlet中访问或移除会话属性
  154. 16.8 在JSP中访问或移除会话属性
  155. 16.9 在servlet中设置请求属性
  156. 16.10 在JSP中设置请求属性
  157. 16.11 在servlet中访问或移除请求属性
  158. 16.12 在JSP中访问或移除请求属性
  159. 第十七章 在JSP中嵌入多媒体
  160. 17.0 引言
  161. 17.1 使用jsp:plugin在JSP中嵌入applet
  162. 17.2 使用HTML Converter在JSP中嵌入applet
  163. 17.3 自动创建包括Flash文件的HTML模板
  164. 17.4 编写嵌入Flash文件的HTML模板
  165. 17.5 在servlet中嵌入Flash
  166. 17.6 在JSP中嵌入QuickTime影片
  167. 17.7 在JSP中嵌入SVG文件
  168. 17.8 在JSP中嵌入背景音乐
  169. 第十八章 处理客户请求
  170. 18.0 引言
  171. 18.1 检查servlet中的HTTP请求首部
  172. 18.2 检查JSP中的HTTP请求首部
  173. 18.3 使用过滤器修改请求首部
  174. 18.4 自动刷新servlet
  175. 18.5 自动刷新JSP
  176. 18.6 Web应用程序请求的计数
  177. 第十九章 过滤请求和响应
  178. 19.0 引言
  179. 19.1 将过滤器映射到servlet
  180. 19.2 将过滤器映射到JSP
  181. 19.3 将多个过滤器映射到一个servlet
  182. 19.4 改变过滤器应用于servlet的顺序
  183. 19.5 为过滤器配置初始参数
  184. 19.6 可选择地使用过滤器阻塞请求
  185. 19.7 过滤HTTP响应
  186. 19.8 使用过滤器操作RequestDispatcher对象
  187. 19.9 使用过滤器检查表单参数
  188. 19.10 使用过滤器阻塞IP地址
  189. 第二十章 在servlet和JSP中操纵电子邮件
  190. 20.0 引言
  191. 20.1 将电子邮件有关的类放置于类路径中
  192. 20.2 在servlet中发送电子邮件
  193. 20.3 使用JavaBean在servlet中发送电子邮件
  194. 20.4 在servlet中访问电子邮件
  195. 20.5 使用JavaBean在servlet中访问电子邮件
  196. 20.6 在servlet中处理所接收电子邮件的附件
  197. 20.7 在servlet中向电子邮件添加附件
  198. 20.8 在servlet中读取所接收电子邮件的首部
  199. 第二十一章 访问数据库
  200. 21.0 引言
  201. 21.1 不用DataSource在servlet中访问数据库
  202. 21.2 在Tomcat中配置DataSource
  203. 21.3 在Tomcat的servlet中使用DataSource
  204. 21.4 在WebLogic中创建DataSource
  205. 21.5 在WebLogic使用 JNDI查找来获取DataSource
  206. 21.6 在WebLogic的JSP中使用DataSource
  207. 21.7 在servlet中调用存储过程
  208. 21.8 在JSP中调用存储过程
  209. 21.9 将ResultSet转换为Result对象
  210. 21.10 在一个事务中执行多个SQL语句
  211. 21.11 在JSP中使用事务
  212. 21.12 查找ResultSet的有关信息
  213. 第二十二章 使用定制标记库
  214. 22.0 引言
  215. 22.1 创建典型标记处理器
  216. 22.2 为典型标记处理器创建JSP 1.2 TLD
  217. 22.3 为典型标记处理器创建JSP 2.0 TLD
  218. 22.4 在Web应用程序中打包标记库
  219. 22.5 将标记库打包在JAR文件中
  220. 22.6 在JSP中使用定制标记
  221. 22.7 在定制标记类中处理异常
  222. 22.8 创建简单标记处理器
  223. 22.9 为简单标记处理器创建TLD
  224. 22.10 在JSP中使用简单标记处理器
  225. 22.11 创建JSP标记文件
  226. 22.12 在Web应用程序中打包JSP标记文件
  227. 22.13 将JSP标记文件打包在JAR中
  228. 22.14 使用与标记文件关联的定制标记
  229. 22.15 向标记库添加监听器类
  230. 第二十三章 使用JSTL
  231. 23.0 引言
  232. 23.1 下载JSTL 1.0并在JSP中使用JSTL标记
  233. 23.2 下载Java Web服务开发者包
  234. 23.3 使用核心JSTL标记
  235. 23.4 使用XML核心JSTL标记
  236. 23.5 使用XML转换标记
  237. 23.6 使用格式化JSTL标记
  238. 23.7 通过DataSource配置使用SQL JSTL标记
  239. 23.8 不通过DataSource配置使用SQL JSTL标记
  240. 23.9 用EL访问作用范围内的变量
  241. 23.10 用EL访问请求参数
  242. 23.11 使用EL访问请求首部
  243. 23.12 使用EL访问一个请求首部
  244. 23.13 使用EL访问cookie
  245. 23.14 使用EL访问JavaBean特性
  246. 23.15 使用JSTL函数
  247. 第二十四章 国际化
  248. 24.0 引言
  249. 24.1 在servlet中检测客户区域
  250. 24.2 在JSP中检测客户区域
  251. 24.3 以特性文件方式创建一个ResourceBundle
  252. 24.4 以Java类方式创建ResourceBundle
  253. 24.5 在servlet中使用ResourceBundle
  254. 24.6 在JSP中使用ResourceBundle
  255. 24.7 在servlet中格式化日期
  256. 24.8 在JSP中格式化日期
  257. 24.9 在servlet中格式化货币
  258. 24.10 在JSP中格式化货币
  259. 24.11 在servlet中格式化百分数
  260. 24.12 在JSP中格式化百分数
  261. 24.13 在部署描述文件中设置区域化上下文
  262. 第二十五章 使用JNDI和企业级JavaBeans
  263. 25.0 引言
  264. 25.1 在Tomcat中配置JNDI对象
  265. 25.2 在servlet中访问Tomcat JNDI资源
  266. 25.3 在JSP中访问Tomcat JNDI资源
  267. 25.4 在WebLogic中配置JNDI资源
  268. 25.5 在WebLogic中查看JNDI树
  269. 25.6 在servlet中访问WebLogic JNDI资源
  270. 25.7 在JSP中访问WebLogic JNDI资源
  271. 25.8 使用WebLogic JNDI树访问EJB
  272. 第二十六章 收集Web信息
  273. 26.0 引言
  274. 26.1 使用javax.swing.text子包解析HTML页面
  275. 26.2 使用servlet收集Web数据
  276. 26.3 创建作为Web页面解析器的JavaBean
  277. 26.4 在servlet中使用Web页面解析JavaBean
  278. 26.5 在JSP中使用Web页面解析JavaBean
  279. 第二十七 章使用Google和Amazon Web API
  280. 27.0 引言
  281. 27.1 准备使用Google的Web API
  282. 27.2 创建连接Google的JavaBean
  283. 27.3 使用servlet连接Google
  284. 27.4 使用JSP连接Google
  285. 27.5 准备使用Amazon的Web服务API
  286. 27.6 创建连接Amazon的JavaBean
  287. 27.7 使用servlet连接Amazon
  288. 27.8 使用JSP连接Amazon
  289. 索引
书名:Java Servlet & JSP经典实例
作者:Bruce W. Perry
译者:朱涛江, 邹红霞, 林琪 译
国内出版社:中国电力出版社
出版时间:2005年07月
页数:760
书号:7-5083-3267-9
原版书出版商:O'Reilly Media
Bruce W. Perry
 
Bruce W. Perry是一位独立的Java软件开发人员及作家。自1996年以来,他为各种非赢利机构、设计和营销公司及广告代理商开发Web应用程序和数据库。在不从事编程和写作的时候,他喜爱骑自行车、在美国和瑞士登山。2004年春天,Perry结束了在Brandeis大学的软件工程硕士课程。他同他的妻子Stacy LeBaron、女儿Rachel和儿子Scott一起居住在美国马萨诸塞州的Newburyport。
 
 
本书的封面动物是一只长耳狐(Fennecus zerda),也称作沙狐。长耳狐生活在北非干旱的沙漠地区、撒哈拉沙漠、西奈半岛和阿拉伯半岛,是犬科中个头最小的一族(最高只有8英寸,通常都不足一英尺长)。大大的耳朵和圆圆的黑眼睛让它们看起来与众不同。长耳狐浓密的尾巴是大多数狐狸的特征,奶油色的厚毛是它们在沙地环境中的伪装。
长耳狐生活在洞穴中,以植物、小的啮齿动物、鸟类和鸟卵、蜥蜴及昆虫为食。它们的听力非常敏锐,甚至能够听到最小的猎物在沙地上行走的声音。这些狐狸经常跟踪和突袭猎物;它们的垂直跳跃高达两英尺,可以从站立姿势跳出四英尺远,在同样大小的动物中的确出类拔萃。它们行动迅速,善于挖掘,以能从静止站立中在沙地中“消失”著称。有些报告称这类动物可以在一夜之间掘地20英尺!
长耳狐不属于濒临灭绝物种,但由于过度猎杀和进入宠物市场,在一些过去十分常见的地区目前已变得非常稀少。