新書推薦:
《
铝合金先进成型技术
》
售價:NT$
1214.0
《
英雄之旅:把人生活成一个好故事
》
售價:NT$
398.0
《
分析性一体的涌现:进入精神分析的核心
》
售價:NT$
556.0
《
火枪与账簿:早期经济全球化时代的中国与东亚世界
》
售價:NT$
352.0
《
《全面与进步跨太平洋伙伴关系协定》国有企业条款研究
》
售價:NT$
449.0
《
银行业架构网络BIAN(全球数字化时代金融服务业框架)(数字化转型与创新管理丛书)
》
售價:NT$
449.0
《
金托邦:江湖中的沉重正义
》
售價:NT$
275.0
《
易经今解:释疑·解惑·见微
》
售價:NT$
403.0
|
內容簡介: |
JSP是Java EE的核心技术之一,它是一种与平台无关、基于Java Servlet技术及整个Java体系的Web开发技术,它秉承了Java语言的优势,开发周期短、代码执行效率高、可扩展性和可移植性强、技术规范公开,因此成为了开发Web应用程序动态网站的主要技术之一。本书系统地介绍了Tomcat服务器的使用、JSP的基本语法、JSP的内置对象、Servlet技术、Java Bean的使用、JDBC数据库应用开发等JSP基本技术;还介绍了Servlet事件监听器、过滤器、表达式语言、自定义标签、标准标签库JSTL等JSP高级技术;使用JSP解决Web应用程序开发中的常见问题,包括:页面间数据的传递、JSP中文问题、国际化、日志组件、文件上传组件、安全设置等。本书力求深入浅出,例程精练典型,是系统学习JSP技术的教材和参考手册。本书没有介绍JSP Web程序模式二MVC开发技术,即各种JSP开发框架,但为进一步学习这些技术打下了必要的基础。本书内容丰富、突出应用、例程详尽,对JSP中的疑难点进行了辨析。本书可作为高等学校本、专科的教材及各类培训班的教材,也可供从事计算机应用和开发的各类人员学习参考。
|
關於作者: |
杨占胜,临沂大学信息学院教师。省级精品课程网络软件开发课程群-Java Web应用程序课程负责人。主要教授:软件开发基础、Java Web应用程序开发、专业英语等。
|
目錄:
|
目录
第1篇JSP基本技术
第1章JSP运行环境1
1.1动态网页技术1
1.1.1Web发展的三个阶段1
1.1.2Web应用程序开发的三个阶段2
1.1.3HTTP请求地址URL3
1.1.4HTTP状态码3
1.1.5JSP动态网页的处理过程5
1.2Tomcat服务器的安装与配置5
1.2.1安装Java SE5
1.2.2安装Tomcat7
1.2.3Tomcat服务器的目录结构9
1.2.4Tomcat服务器的配置文件9
1.3JSP Web应用程序的目录结构与
发布11
本章小结15
思考题15
第2章JSP基本语法16
2.1JSP的构成16
2.2指令元素16
2.2.1page指令17
2.2.2include指令20
2.2.3taglib指令21
2.3脚本元素21
2.3.1Scriptlet22
2.3.2表达式22
2.3.3声明23
2.4动作元素26
2.4.1<jsp:include>26
2.4.2<jsp:param>28
2.4.3<jsp:forward>28
2.4.4<jsp:plugin>29
本章小结31
思考题31
第3章JSP内置对象32
3.1out32
3.2request33
3.3response38
3.4Cookie40
3.5session42
3.6application45
3.7pageContext46
3.8page48
3.9JSP作用域49
3.10config49
3.11exception50
3.12内置对象综合例程50
本章小结53
思考题53
第4章Servlet54
4.1Servlet技术54
4.1.1Servlet技术概述54
4.1.2Servlet的特点54
4.1.3Servlet的生命周期54
4.2Servlet接口56
4.2.1Servlet实现相关57
4.2.2Servlet配置相关59
4.2.3请求和响应相关60
4.2.4会话相关61
4.2.5Servlet上下文相关61
4.2.6Servlet协作相关61
4.2.7过滤器相关62
4.2.8Servlet异常相关62
4.3Servlet设计与配置63
4.3.1Servlet的开发流程63
4.3.2JSP的配置路径69
4.3.3Servlet的注解配置70
4.4JSP Web应用程序的开发模式72
本章小结73
思考题74
第5章Java Bean75
5.1Java Bean简介75
5.1.1Java Bean的特性75
5.1.2Java Bean的属性75
5.1.3Java Bean的编写76
5.2JSP中使用Java Bean77
5.2.1<jsp:useBean>78
5.2.2<jsp:getProperty>79
5.2.3<jsp:setProperty>79
本章小结83
思考题83
第6章JDBC84
6.1JDBC介绍84
6.2JDBC API85
6.2.1Driver接口85
6.2.2DriverManager类85
6.2.3Connection接口86
6.2.4Statement接口86
6.2.5ResultSet接口87
6.3JDBC访问数据库88
6.3.1使用JDBC-ODBC桥访问
数据库90
6.3.2使用All-Java JDBC Driver
访问数据库98
6.3.3通过Java Bean访问数据库107
6.3.4JDBC的其他操作125
6.4数据分页显示131
6.5数据库连接池143
6.6JSP数据库开发实例145
本章小结159
思考题160
第7章Eclipse161
7.1Eclipse开发环境的建立161
7.1.1Eclipse的下载安装161
7.1.2插件安装162
7.2Eclipse的界面与参数设置165
7.2.1Eclipse的界面165
7.2.2Eclipse的参数设置167
7.3使用Eclipse开发JSP171
7.3.1动态Web项目的建立171
7.3.2Eclipse内嵌Web服务器173
7.3.3增强的代码编辑功能177
7.4Eclipse项目管理183
7.4.1项目导出183
7.4.2导入项目184
本章小结186
思考题186
第2篇JSP应用开发专题
第8章页面之间数据的传递187
8.1同一个会话页面间数据的传递187
8.2不同会话页面间数据的传递192
本章小结193
思考题193
第9章JSP中文问题194
9.1字符编码194
9.2Java语言中的编码196
9.2.1Java程序处理中的编码转换196
9.2.2JSP程序处理过程中的
编码转换197
9.2.3JSP中文处理199
9.2.4数据库中文问题203
本章小结207
思考题207
第10章JSP应用程序的安全性208
10.1安全配置元素208
10.2Tomcat安全域211
10.3安全控制实例213
本章小结215
思考题216
第3篇JSP高级技术
第11章Servlet监听器217
11.1Servlet事件监听相关的API217
11.1.1ServletContext监听API217
11.1.2HttpSession监听API218
11.1.3ServletRequest监听API219
11.2监听器程序的开发219
11.2.1监听器的设计与配置220
11.2.2Servlet上下文监听程序
实例222
11.2.3会话监听程序实例223
11.2.4请求监听程序实例228
本章小结231
思考题231
第12章Servlet过滤器232
12.1Servlet中与过滤器相关的API232
12.1.1Filter接口232
12.1.2FilterChain接口233
12.1.3FilterConfig接口233
12.2过滤器程序的开发234
12.2.1过滤器的设计与配置234
12.2.2简单的过滤器实例237
12.2.3处理参数的过滤器实例239
12.2.4过滤器的简单应用241
本章小结242
思考题243
第13章表达式语言244
13.1表达式语言的语法244
13.1.1EL保留字244
13.1.2EL字面量Literals244
13.1.3EL默认值与自动类型
转换244
13.1.4表达式语言中的设置245
13.2表达式语言中的普通运算246
13.3表达式语言中的Java Bean248
13.4表达式语言中的隐式对象249
13.5EL函数251
本章小结253
思考题253
第14章自定义标签254
14.1自定义标签简介254
14.1.1自定义标签的优点254
14.1.2自定义标签的特点254
14.1.3自定义标签的设计过程254
14.1.4taglib指令254
14.1.5自定义标签的类型255
14.1.6自定义标签的接口与类255
14.2经典标签255
14.2.1Tag接口256
14.2.2tld文件260
14.2.3自定义标签的属性263
14.2.4IterationTag接口265
14.2.5BodyTag接口268
14.2.6标签的嵌套271
14.3简单标签272
14.4标签文件274
本章小结281
思考题281
第15章标准标签库282
15.1JSTL简介282
15.1.1JSTL的安装配置282
15.1.2JSTL的优点282
15.1.3JSTL标签库282
15.2核心标签库283
15.2.1c:out283
15.2.2c:set285
15.2.3c:if288
15.2.4c:choose、c:when、
c:otherwise288
15.2.5c:forEach289
15.2.6c:forToken291
15.2.7c:import292
15.2.8c:url293
15.2.9c:redirect294
15.2.10c:param294
15.2.11c:catch295
15.3SQL标签库295
15.3.1sql:setDataSource295
15.3.2sql:query296
15.3.3sql:param299
15.3.4sql: update301
15.4国际化与标准化标签库302
15.4.1<fmt:setLocale>303
15.4.2<fmt:bundle>、
<fmt:setBundle>303
15.4.3<fmt:message>304
15.4.4<fmt:param>305
15.4.5<fmt:requestEncoding>306
15.4.6<fmt:timeZone>、
<fmt:setTimeZone>306
15.4.7<fmt:formatNumber>306
15.4.8<fmt:parseNumber>307
15.4.9<fmt:formatDate>308
15.4.10<fmt:parseDate>309
本章小结312
思考题312
第4篇JSP常用组件
第16章文件上传和下载组件313
16.1jspSmartUpload API313
16.1.1File类313
16.1.2Files类314
16.1.3Request类315
16.1.4SmartUpload类315
16.2文件上传318
16.3文件下载322
本章小结323
思考题323
第17章日志组件324
17.1Log4j324
17.1.1Log4j API324
17.1.2Log4j的配置328
17.1.3Log4j的使用329
17.2commons-logging333
17.2.1commons-logging API333
17.2.2commons-logging的使用335
本章小结335
思考题336
附录
附录ATomcat版本简介337
附录BMySQL使用说明337
附录C实验指导书337
附录D实验参考答案337
参考文献338
|
內容試閱:
|
第2版前言
自本书出版以来,Java Web界发生了一些重要的事件。Oracle公司于2010年完成了对SUN公司的收购;2014年发布了变更较大的JSDK8,其中取消了对JDBC-ODBC桥驱动的支持;Apache Software Foundation于2010年首次发布Tomcat 7,Tomcat 7支持Java EE 6,实现了Servlet 3.0 JSP 2.2规范,新增的注解功能,简化了 Servlet、过滤器Filter和监听器Listener的配置,精简了部署描述文件web.xml。由于JSP技术在不断地更新发展,本书有必要进行修订再版。
本书第2版在第1版的基础上修订编写而成,主要修改了1.2节JSDK与Tomcat下载安装的内容;重写了第6章JDBC,增加了使用Access JDBC驱动访问Access数据库的内容,增加了JDBC访问SQL Server 2005的注意事项,以及JDBC访问更高版本SQL Server数据库的问题,简化了6.4节数据分页部分;在相关的章节增加了运用Annotation配置Servlet、Filter、Listener的内容;各章之后新增了本章小结和思考题;重写了附录A;修改了附录C的实验3;重写了附录C的实验5;书中的例程组织为一个网站,提供Eclipse项目,供读者学习参考。
The Eclipse Foundation于2007年Eclipse3.3 Eruopa版开始,发布集成了Java Web开发插件的Eclipse IDE for Java EE Developers工具,使得Java Web开发者无须再安装配置众多的Java Web插件,或者依赖于庞大的MyEclipse商业软件,就能轻松、方便地使用功能强大的Eclipse IDE来进行Java Web开发。为使本书的知识体系更加完善,第2版补充一章介绍Eclipse的使用,以Eclipse4.4 Luna版的Eclipse IDE for Java EE Developers为基础。
本书第2版秉承第1版的特点,力求克服以往教材的不足,减少与相关课程知识的重叠;吸取多年来的教学经验,注重反映Web应用程序开发技术的最新成果;按照知识关联和循序渐进的学习路线,构建更加完善和清晰的知识体系;对JSP技术进行了系统、深入的介绍。本书的结构经过精心编排设计,讲解深入细致,例程精练典型,主要特点如下。
1对JSP的各种技术进行了简练的、实质性的解释。指令是对JSP解析器环境的设置;动作是服务器端的动态标记,JSP解析器调用特定的方法处理相应的动作标记;内置对象是服务器提供的API类库;Servlet是一个实现了特定接口,运行在服务器环境中的特殊Java类;监听器是Web方式的Java事件处理机制;过滤器是对HTTP请求的预处理和后处理;分页显示是对数据的二次选择。
2对JSP语法中容易混淆且较难理解的概念进行了解释和辨析。如page指令中有关页面编码的contentType属性与pageEncoding属性,声明中的变量定义与Scriplet中变量的定义,include指令与include动作,forward动作转向与response内置对象sendRedirect方法转向,request内置对象的getParameter方法与getAttribute方法等。
3对各类程序的开发过程进行了总结。包括Servlet的开发步骤,JDBC访问数据库的步骤,Web监听器的设计步骤,过滤器的设计步骤,EL函数的应用步骤,自定义标签的设计步骤。
4对JDBC访问各类数据库的注意事项进行了详细总结。
5附录实验指导书中采用程序填空的方式进行代码设计的训练,并对每个实验的注意事项进行了说明,对实验程序填空、上机作业、实验思考题给出了参考答案。
6本书只专注于JSP技术的介绍。不讲HTML、CSS、JavaScript,不讲Java,不讲XML,不讲数据库原理,这些知识应从前置课程中系统地学习;也不讲Structs、Spring、Hibernate或iBatis,这些MVC和数据访问框架是后续的进阶课程。
7本书包含配套教学PPT及相关资源,读者可登录华信教育资源网www.hxedu.com.cn注册后免费下载。
使用本书作为教材,64学时不包括实验学时可讲完全书大部分内容;课时为32学时,建议讲授第1篇JSP基本技术的7章,其余部分可供学生自学、参考。第7章Eclipse可提前讲授,也可在各章节中穿插讲解应用。
本书得到山东省高校精品课程基金项目的支持,基金编号为2013BK106。杨占胜编写了本书中的第1章至第14章、第17章与附录部分;王海峰与杨占胜共同编写了第15章;王鸽编写了第16章。孙琳、刘士彩参与了部分习题的编写,并对部分章节提出了许多宝贵的意见和建议;全书由杨占胜统稿。感谢电子工业出版社的鼎力支持和通力合作,由于戴晨辰编辑和其他工作人员付出的辛勤劳动,使得本书得以尽快出版,以应教学之需。
这次修订再版希望能反映一些最新的Java Web技术,并使本书更加严谨完善,但这并非易事,敬请广大读者们批评指正,特别是使用本教程的各位教师和同学,如果有什么问题和建议,欢迎大家随时向作者提出,作者E-mail:670418190@qq.com。
作 者
2017年8月于临沂
第1版前言
程序设计可分为系统程序设计和应用程序设计,系统程序如操作系统、编译程序、数据库管理系统、驱动程序等。应用程序按应用范围有:多媒体程序、网络程序、数据库程序等;按其运行方式有:命令方式程序、图形用户界面窗口程序、Web应用程序、手机及PDA程序等。命令方式程序是我们在学习C、C、汇编、Java等各种计算机语言时常遇到的例子和练习程序,这类程序通过在命令方式下的输入输出与用户进行交互,人机界面单一,设计较为简单,实际应用中已很少将其作为单独的一类程序使用。图形用户界面GUI程序是我们最常见的,因为Windows是一个图形用户界面的操作系统,其中的大部分程序都是图形界面的。这类程序是事件驱动的,以菜单、工具栏、对话框等窗体元素作为人机交互的界面。如果单纯使用操作系统的API,用任何一种语言设计一个图形界面的程序都是很复杂、很低效的,即使用面向对象的程序设计语言,再辅以类库也还是有一定的复杂性。所幸的是组件技术的出现,大大地降低了窗口程序的设计难度;再加上功能强大的集成开发环境IDE,使窗口程序设计达到了简单高效的地步。手机及PDA程序目前很热门,这类程序与一般的计算机程序原理基本一致,只是运行环境受限,比如CPU的运算速度、存储器的容量等,一般使用专有类库及API进行设计。Internet的迅速普及,电子商务的广泛应用,促使Web应用程序爆炸式发展,Web程序已经成为企业应用的主要形式。在Web应用程序流行之前,有一种基于客户机服务器CS的网络程序,这类程序都有一个专用的服务器程序和一个客户端程序,双方通过底层的TCPIP协议通信。编程时主要使用Socket技术,Socket是操作系统TCPIP API的高层抽象。CS程序的缺点是每个客户端必须安装专用的客户程序,在使用的方便性和安全性方面存在很大的问题,使用底层的传输协议,常被防火墙拦截,在安全性要求高的领域不能应用。Web应用程序也是基于客户机服务器模式的,但它的服务器统一为Web服务器,客户机统一为浏览器,所以又称为BSBrowserServer结构的程序。BS程序使用HTTP协议进行通信,利用Web服务器和浏览器的安全机制,克服了CS程序的缺点。Web应用程序是一个服务器端动态的网站,它通过浏览器与用户交互,最终返回给用户的是一个HTML文档,所以学习Web应用程序开发,需要Web技术基础知识:HTML、JavaScript、CSS;JSP Web应用程序使用Java语言编写服务器端动态程序,所以又需要Java语言程序设计方面的知识;Web应用程序通常要访问数据库,数据库访问是Web应用程序设计的重点和难点,所以还需要数据库基础与应用方面的知识,如结构化查询语言SQL、数据库的安全机制与权限设置等,JSP中的大量配置文件都使用XML格式,所以也需要XML基础与应用方面的知识。本书介绍的JSP Web应用程序开发技术是以上述先修课程的知识为基础的。
JSP应用开发涉及的软件技术多,综合性强。JSP技术本身的知识也较繁杂,各知识点之间相互关联,如自定义标签中会用到表达式语言EL,而EL函数又会用到自定义标签中的标签库描述。要系统地介绍JSP技术体系,合理地组织和编排JSP的知识结构很重要。在JSP技术的发展过程中,是先有Servlet,后有JSP的。介绍JSP技术的教材主要有两种顺序,一种是先介绍JSP基本语法,然后介绍Servlet;另一种是先介绍Servlet,后引入JSP。鉴于Servlet的复杂性和几年来的教学实践,本书在结构安排上,从动态网页的发展入手引入JSP,然后介绍Servlet,但将Servlet提到Java Bean之前。在JSP高级技术部分,由于表达式语言较为简单,标准标签库JSTL使用到了表达式语言,而自定义标签与JSTL应有连贯性,所以将表达式语言提到了自定义标签之前。在内容方面,本书力求对各种技术进行简练、实质性的解释,如指令是对JSP解析器环境的设置;动作是服务器端的动态标记,JSP解析器调用特定的方法处理相应的动作标记;内置对象是服务器提供的API类库;Servlet是一个实现了特定接口,运行在服务器环境中的特殊Java类;监听器是Web方式的Java事件处理机制;过滤器是对HTTP请求的预处理和后处理;分页显示是对数据的再次选
|
|