JSP程序设计

JSP程序设计
作 者: Vivek Chopra Jon Eaves Rupert Jones 张文静 林琪 张文静
出版社: 人民邮电出版社
丛编项: 图灵程序设计丛书
版权说明: 本书为公共版权或经版权方授权,请支持正版图书
标 签: jsp
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

  VIVEK CHOPRA作为软件开发人员、架构师以及开发小组主管已经有十余年的经验,在WEB服务、J2EE和中间件技术方面经验尤其丰富。他曾经供职于硅谷多家公司、拥有多项有关WEB服务的专利(有的还在申请中)。VIVEK是活跃的技术作家,曾与人合作撰写了6本有关开源软件、JAVA、XML和WEB服务的著作。他还积极从事开源软件开发,曾经开发了UDDI4J库的一部分(这是一个面向UDDI的升级JAVA API)。

内容简介

JSP(JavaServerPages)是目前热门的跨平台动态Web应用开发技术。本书由经验丰富的开发人员撰写,是一本通俗易懂的JSP入门书籍。书中主要介绍JSP基础知识、JSP和表达式语言(EL)、JSP标记库和JSTL、JSP指令、JSP和JavaBean、错误处理、JSP和servlet、访问数据库以及MVC等。书中展示了许多实际的代码示例,并对一些实例做了深入的分析,通过这些内容,为读者展示JSP2.0的许多新特性,并强调Web开发的一些最佳实践。本书配有习题和综合项目,非常适合作为相关院校JSP程序设计课程的教材。JSP是目前热门的一种跨平台动态Web应用开发技术,能够使用Java编写的XML标记创建内容丰富多彩的动态网页。最新的JSP2.0版功能更为强大,但这也为初学者学习增加了一些困难。本书通俗易懂、深入浅出、注重实践的风格将帮助读者轻松上手。本书凝聚了作者多年的实践经验,并讲述实际开发中最需要的技术。书中包含大量的代码实例、习题,并在最后给出一个综合项目,除了适合Web应用开发人员阅读之外,也特别适合作为JSP程序设计课程的教材。本书特色·展示JSP2.0的许多新特性,并强调Web开发的一些最佳实践。·讲述JSP基础知识,包括JSP语法和指令、JSP表达式语言(EL)、标记库以及测试和调试技术。·涵盖JSP与JavaBean、JSP指令、错误处理、JSP和servlet、数据库访问及MVC等方面的内容。·给出许多实际的代码实例,并针对实例进行深入的解析,更加注重实践。·给出一个综合项目(个性化门户网站项目),把书中讲过的概念综合起来,并在完整的实际Web应用中加以运用。·每章配有相关习题,并在网上(www.turingbook.com)提供部分习题答案。

图书目录

译者序

致谢

前言

第1章 预备知识....................................................1

1.1 创建因特网应用..............................................1

1.1.1 基本Web服务器模型的局限性..............2

1.1.2 通过CGI实现动态HTML生成.............3

1.1.3 CGI的缺点...............................................4

1.1.4 改善基于Java的CGI:servlet................4

1.2 小结................................................................20

习题.........................................................................21

第2章 JSP基础1:创建动态页面实现树据表示..................................................22

2.1 剖析一个JSP页面.........................................22

2.1.1 指令..........................................................22

2.1.2 XML兼容语法........................................23

2.1.3 模板数据..................................................24

2.1.4 动作..........................................................24

2.1.5 脚本元素..................................................25

2.1.6 利用JSP处理HTML表单提交.............26

2.1.7 网站个性化..............................................43

2.2 小结................................................................50

习题..........................................................................50

第3章 JSP基础2:通用模板和服务器脚本.......................................................52

3.1 用于嵌入Java代码的脚本元素....................52

3.2 创建一个简单的网上商店............................57

3.2.1 向隐式对象附加属性..............................62

3.2.2 显示种类列表..........................................64

3.2.3 显示给定种类中的商品的列表..............65

3.3 向目录增加一个购物车................................66

3.4 创建购物车....................................................69

3.4.1 对收到的请求参数进行解码..................70

3.4.2 显示订单信息..........................................71

3.4.3 显示返回购物超链接..............................72

3.4.4 购物车限制..............................................72

3.4.5 克服购物车限制......................................73

3.4.6 会话和JSP...............................................78

3.4.7 使用会话属性显示购物车......................81

3.5 小结................................................................84

习题.........................................................................84

第4章 CSS、JavaScript、VBScript和JSP......................................................... 85

4.1 客户端执行的代码元素................................85

4.1.1 CSS...........................................................87

4.1.2 JavaScript..................................................87

4.1.3 VBScript...................................................88

4.2 用户首选项的实现........................................88

4.3 创建一个用户可定制的DHTML菜单........97

4.4 小结..............................................................106

习题........................................................................106

第5章 JSP和EL....................................................107

5.1 EL及其在JSP中的重要地位.....................107

5.2 EL 命名变量.................................................108

5.3 应用EL.........................................................109

5.3.1 在模板数据中内联使用EL表达式......109

5.3.2 在属性值中使用EL表达式..................109

5.4 强制转换:自动类型转换..........................116

5.4.1 装箱和拆箱............................................117

5.4.2 强制转换为字符串................................117

5.4.3 强制转换为数字....................................117

5.4.4 强制转换为字符....................................117

5.4.5 自动类型转换实例................................118

5.5 访问对象性质和集合..................................120

5.6 JSP 2.0中的EL隐式对象...........................125

5.7 用户提供的EL函数....................................129

5.7.1 命名空间和EL函数..............................129

5.7.2 Java类的静态方法................................130

5.8 小结...............................................................132

习题.......................................................................133

第6章 JSP标记库和JSTL..............................134

6.1 JSP标记库的重要地位................................134

6.2 JSP标准标记库............................................135

6.3 标记库剖析...................................................136

6.3.1 标记库描述文件....................................136

6.3.2 web.xml部署描述文件中的aglib映射..............................................137

6.3.3 JSTL的下载和打包..............................137

6.3.4 JSTL标记...............................................138

6.4 小结...............................................................159

习题.......................................................................159

第7章 JSP指令................................................161

7.1 指令基础......................................................161

7.1.1 指令作为容器的指示............................161

7.1.2 指令的另一种XML语法.....................162

7.1.3 可用的JSP指令....................................162

7.2 page 指令....................................................163

7.2.1 language 属性....................................164

7.2.2 extends 属性.....................................164

7.2.3 import 属性.......................................164

7.2.4 session 属性......................................165

7.2.5 info 属性............................................165

7.2.6 isELIgnored 属性............................165

7.2.7 isErrorPage 属性............................165

7.2.8 errorPage 属性..................................166

7.2.9 contentType 属性.............................166

7.3 taglib指令...............................................168

7.3.1 taglib指令的两种一般用法..............169

7.3.2 taglib指令的属性..............................169

7.4 include 指令.............................................173

7.5 小结..............................................................179

习题........................................................................179

第8章 JSP标准动作........................................180

8.1 JSP标准动作是内置标记...........................180

8.2 处理JavaBean的动作...................................181

8.2.1 <jsp:useBean> 标准动作................181

8.2.2 <jsp:useBean>与JSTL<c:set>的区别...................................................193

8.3 通过<jsp:include>包含JSP输出.........194

8.4 在JSP之间传递控制...................................198

8.5 指定其他动作的参数..................................199

8.6 处理插件......................................................199

8.6.1 <jsp:plugin> 标准动作..................200

8.6.2 <jsp:params> 标准动作...................200

8.6.3 <jsp:fallback> 标准动作.............201

8.7 特定于标记文件的标准动作......................205

8.8 小结.............................................................206

习题.......................................................................206

第9章 JSP 和JavaBean.....................................207

9.1 JavaBean剖析...............................................207

9.1.1 JavaBean性质........................................209

9.1.2 JavaBean方法.......................................211

9.1.3 常用的JavaBean打包...........................212

9.2 JavaBean与EJB的区别..............................227

9.3 小结..............................................................227

习题.......................................................................228

第10章  错误处理.............................................229

10.1 理解错误根源............................................229

10.1.1 Java语言编码中的错误.....................230

10.1.2 脚本元素中的错误.............................230

10.1.3 JSP指令和动作中的错误..................233

10.1.4 JSTL 错误和EL错误.........................246

10.1.5 用户数据输入错误.............................247

10.1.6 JSP模板数据中的错误......................247

10.2 小结............................................................247

习题.......................................................................248

第11章 构建定制JSP标记库.........................249

11.1 什么是标记文件........................................249

11.2 一个简单的标记文件:显示今天的日期...........................................................249

11.3 标记文件的优点.........................................250

11.3.1 代码重用..............................................251

11.3.2 隐藏复杂性.........................................251

11.3.3 问题分离..............................................251

11.3.4 简单性..................................................251

11.3.5 灵活的打包.........................................251

11.4 开发标记文件...........................................252

11.4.1 作用域和隐式对象..............................252

11.4.2 在标记文件中使用指令.....................254

11.4.3 体处理.................................................259

11.4.4 属性......................................................262

11.5 标记文件打包...........................................272

11.6 小结............................................................275

习题........................................................................275

第12章 JSP和servlet......................................276

12.1 JSP实际上就是servlet..............................276

12.1.1 servlet剖析..........................................279

12.1.2 servlet的生命周期..............................282

12.1.3 在部署描述文件中为容器描述servlet.........................................284

12.1.4 servlet声明.........................................287

12.1.5 可用JSP时使用servlet.......................290

12.1.6 指定初始化参数..................................291

12.1.7 ControllerServlet中访问初始化参数........................................293

12.1.8 通过控制器servlet定制到来的请求的转发............................................295

12.1.9 转发目标..............................................296

12.2 小结............................................................296

习题.......................................................................297

第13章 访问数据库.........................................298

13.1 数据库简介................................................298

13.1.1 连接数据库..........................................299

13.1.2 下载和安装MySQL...........................302

13.1.3 JDBC API............................................303

13.2 构建应用....................................................321

13.2.1 数据特征.............................................321

13.2.2 事务.....................................................322

13.2.3 对象-关系映射..................................323

13.3 不同类型的应用........................................324

13.3.1 简单应用..............................................324

13.3.2 使用JSP 和JDBC...............................325

13.3.3 更复杂的应用.....................................327

13.4 使用 Hibernate............................................328

13.5 小结............................................................365

第14章 模型-视图-控制器.............................366

14.1 MVC...........................................................366

14.2 MVC 和 Web应用......................................367

14.3 小结.............................................................377

习题.......................................................................378

第15章 综合项目:个性化门户网部...........379

15.1 门户网站项目...........................................379

15.1.1 RSS简介..............................................379

15.1.2 Web服务简介.....................................382

15.2 项目特性....................................................384

15.2.1 用例.....................................................384

15.2.2 初始分析..............................................384

15.3 应用设计....................................................385

15.3.1 设计持久存储库.................................385

15.3.2 定义关键实体对象.............................387

15.3.3 设计网站控制流..................................395

15.4 开发环境.....................................................397

15.4.1 目录结构.............................................397

15.4.2 构建脚本.............................................398

15.4.3 Struts....................................................400

15.4.4 Tiles......................................................400

15.4.5 Log4j.....................................................401

15.4.6 Rome....................................................403

15.4.7 Apache Axis..........................................405

15.5 应用............................................................407

15.5.1 视图......................................................407

15.5.2 控制器..................................................414

15.5.3 运行门户应用.....................................423

15.6 小结.............................................................427

习题......................................................................427