资料来自互联网软件应用与开发大纲 南京航空航天大学 高纲4295和JSP 应用与开发技术(第 3 版) 马建红、李学相 清华大学出版社2019年
识记:要求考生能够识别和记忆本课程中有关互联网软件开发与应用的概念性内容,并能够根据考核的不同要求,做出正确的表述、选择和判断。领会:要求考生能够阅读相关的代码或程序段,能够读懂给定的代码或程序段,进而理解如何利用各种互联网软件开发工具来解决不同问题,并在此基础上根据考核的不同要求,做出正确的推断、描述和解释。应用:要求考生根据已知的互联网软件开发知识,在面对具体、实际的问题时,充分利用本课程中介绍的互联网软件开发的思想和方法,书写出代码或程序段,选取适当的互联网软件开发工具进行设计与开发,观察运行的结果,解决实际的问题。
第 1 章 JSP 与 Web 技术概论
知识点名称 |
知识点内容 |
Web应用程序所基于的协议 |
HTTP协议 |
传统的 Web 应用程序 |
目前,大多数的Web应用程序都是基于HTTP通信协议的,即一个典型的基于Web的服务器和客户端应用程序必须具备“接受客户端的请求”和“将处理结果回应给客户端”这两种能力。 在线表单,购物车,文字处理器,电子表格,视频和照片编辑,文件转换,文件扫描以及电子邮件程序 |
基于Web模式的系统的结构 |
|
HTTP 通信协议及其流程 |
|
CGI 工作流程及缺点 |
工作流程:如果客户端请求的内容是静态的HTML网页数据(即这些数据不是从数据库等数据源动态获取生成),Web服务器将会根据事先编写好的处理程序自行处理,产生回应信息并返回。 如果涉及动态数据(如查询在服务器上的数据),则由内嵌的CGI程序负责处理,处理结束后,CGI程序会先把结果回送给Web服务器,再由Web服务器传回用户端。 缺点:(1)从运行方式上来看,CGI程序属于“操作系统进程”,因此对于每个HTTP的请求,服务器端都必须对应地开启一个CGI的服务,这加重了系统整体资源负担。
|
客户端和服务器端的作用和角色 |
客户端:要打开和浏览网络上的网页文件,必须通过浏览器程序,如IE、Netscape等。而使用浏览器打开网页的这一端,称为客户端。因为网站为上线用户提供打开网页的服务,因此用户也可称为客户。 服务器端:与客户端相比,提供浏览网页服务的一方称作“服务器端”,而用来放置这些网页信息的计算机,则称为服务器。 |
URL 的组成 |
①Internet资源类型(scheme):指出WWW客户程序用来操作的工具。如“http://”表示WWW服务器,“ftp://”表示FTP服务器,“gopher://”表示Gopher服务器,而“new:”表示Newgroup新闻组。 ②服务器地址(host):指出WWW页所在的服务器域名。 ③端口(port):有时需要,对某些资源的访问来说,需给出相应的服务器提供端口号。 ④路径(path):指明服务器上某资源的位置(其格式与DOS系统中的格式一样,通常由“目录/子目录/文件名”这样的结构组成)。与端口一样,路径并非总是需要的。 |
HTML 的定义、基本组成、典型的标签。 |
定义:HTML称为超文本标记语言,是一种用于开发静态网页的技术语言,主要提供创建网页文件所需的标准语法,以及描述网页数据的呈现方式,其中包含超级链接、图形或声音影像等多媒体内容。 基本组成:由各种HTML标签组成,这些标签各有其特定的意义 典型标签:<b>…</b>表示其中包含的文字要以粗体的外观显示,<i>…</i>则是将其中包含的文字设置为斜体格式。 |
静态网页的 HTML 技术的不足 |
网页一旦设计完成,内容就不会再变动 |
动态网页的程序语言的种类和文件类型 |
种类:客户端Script语言和服务器端网页语言 文件类型:.htm .php、.jsp、py等 |
客户端执行的网页语言,包括定义和功效、种类 |
JavaScript:JavaScript是一种独立使用在前端网页的脚本语言 VBScript:这种语言以Visual Basic为基础发展而来,只有微软本身的浏览器支持这种脚本语言 |
服务器端执行的网页语言,包括定义、技术种类和对比 |
①CGI:比较早期的服务器端动态技术,已逐渐淡出用户的视线 ②ASP:ASP是微软开发的新一代服务器端网页语言,其英文全称为Active Server Pages(动态服务器网页)简单易用 ③ASP.NET:微软集成.NET平台发展而来的服务器端网页语言,功能强大,紧密结合.NET平台,而且在性能上也有相当出色的表现 ④JSP:以Java为基础的服务器端网页语言 |
客户端与服务器端网页语言的不同 |
对服务器来说,服务端语言是程序而客户端语言只是普通文本; |
客户端执行的网页语言的工作过程和优、缺点 |
工作过程:(1)用户通过浏览器指定URL,向网页服务器请求特定的网页内容。
优点:降低服务器的负担并提高执行的效率 缺点:无法集成服务器上的资源,如文件操作与数据库存取等 |
服务器端执行的网页语言的工作流程 |
|
网站访问数据库的操作 |
Web服务器在接收到请求后解析该JSP文件,如果其中含有数据库操作的代码,则Web服务器会连接相应的数据库,并执行需要的SQL语句,如插入、修改或删除等。数据库操作完成后,数据库服务器会将结果返回给Web服务器(如果需要的话),Web服务器再根据这些结果生成相应的页面,最后将这个页面及其他一些必要的文件,如图片文件、CSS文件等,一起发送给用户端,这一过程称为HTTP响应 |
Web 服务器和数据库服务器的位置关系 |
Web服务器和数据库服务器在物理上可以是同一台服务器,也可以是相距非常远的两台或多台服务器 |
JSP 页面访问数据库的基本流程 |
|
JSP 的倡导者、定义、组成、双重特性、动态程序的标记 |
倡导者:JSP是由Sun Microsystems公司倡导的、许多公司参与建立的一种动态网页技术标准 定义:JSP是基于Java的技术,用于创建可支持跨平台及Web服务器的动态网页 组成:JSP页面代码一般由普通的HTML语句和特殊的基于Java语言的嵌入标记组成 双重特性:Web和Java功能 动态程序的标记:这些标记常常以“<%”开始并以“%>”结束 |
JSP的特点 |
JSP是一种动态网页技术标准,可以将网页中的动态部分和静态的HTML相分离 JSP的执行效率比较高 编写简单 跨平台 JSP可以嵌套在HTML或XML网页中 |
JSP 执行方式、运行本质、Servlet 容器的概念、JSP 与Servlet 的关系、编写 JSP 的注意点 |
执行方式:JSP文件的执行方式是“编译式”,并非“解释式”,即在执行JSP页面时,是把JSP文件先翻译为Servlet形式的Java类型的字节码文件,然后通过Java虚拟机来运行。 运行本质:运行JSP文件最终还是要通过Java虚拟机,不过根据JSP技术的相关规范,JSP语言必须在某个构建于Java虚拟机之上的特殊环境中运行,这个特殊环境就是Servlet Container(通常被译为Servlet容器),而且,每个JSP页面在被系统调用之前,必须先被Servlet容器解析成一个Servlet文件。 JSP 与Servlet 的关系: |
JSP 本质与 Servlet |
JSP是一种集成技术,以Java平台为基础,提供一种简便的方式,让Java技术能够轻易运用于构建动态网页内容。Java为了产生与用户互动的动态网页内容,开发出一种名为Servlet的应用技术。Servlet是一种纯粹以Java语言编写,符合标准规范的Java应用程序,在网站服务器运行的时候被加载,在客户端浏览器针对服务器提出内容要求时,作出动态响应。 |
JSP 的运行流程 |
|
服务器的处理特点 |
当服务器第一次接收到对某个页面的请求时,JSP引擎就开始进行上述的处理,将被请求的JSP文件编译成Class文件。在后续对该页面再次进行请求时,若页面没有进行任何改动,服务器只需直接调用Class文件执行即可。所以当某个JSP页面第一次被请求时,会有一些延迟,而再次访问时会感觉快了很多。如果被请求的页面经过修改,服务器将会重新编译这个文件,然后执行。 |
JavaBean 的定义和作用 |
JavaBean是一种组件技术,为Java应用程序提供一种极具灵活性的设计模型,它将程序依功能分开,包装成为一种称为JavaBean的程序组件,让其可以被外部JSP网页重复使用以提供所需的功能,同时还可以扩充JSP网页的功能,维持简洁易于维护的JSP网页程序代码。 |
两大编程体系,包括发展潮流、各自的编程语言 |
C/S:开发基于C/S结构项目,其传统的开发环境有VB、VC及Delphi等,随着Java体系及.NET体系的普及,目前更流行.NET编程体系和Java编程体系。 B/S:开发基于B/S结构项目,目前主要采用三种服务器端语言:JSP(Java Server Pages)、PHP(Personal Home Page)和ASP.NET。这三种语言构成三种常用应用开发组合:JSP+Oracle体系、PHP+MySQL体系及ASP.NET+SQL Server体系。 |
B/S 的浏览器端编程语言的分类 |
浏览器端包括HTML(HypertextMarkup Language,超文本标记语言)、CSS(Cascading Style Sheets,层叠样式表单)、JavaScript语言和VBScript语言 |
两大编程体系的数据库支持系统 |
数据库支持是必需的,目前应用领域的数据库系统全部采用关系型数据库(Relation Database Management System,RDBMS)。在企业级的开发领域中,主要采用三大厂商的关系数据库系统:微软公司的SQL Server、Oracle公司的Oracle和IBM公司的DB2 |
B/S 模式和 C/S 模式的工作优缺点。 |
C/S:优点是用户端程序一致,比较方便控制,服务器端和用户本地的数据很容易进行交互,通信速度比较快;缺点是每个用户都需要安装客户端,比较烦琐,而且不能很好地跨操作系统平台。 B/S:B/S结构的优点: 1)具有分布性特点,可以随时随地进行查询、浏览等业务处理。 2)业务扩展简单方便,通过增加页面即可增加服务器功能。 3)维护简单方便,只需要改变网面,即可实现所有用户的同步更新。 4)共享性强 B/S 模式的缺点: 1)响应速度不及C/S,随着AJAX技术的发展,相比传统B/S结构软件提升一倍速度。 2)用户体验效果不是很理想,B/S需要单独界面设计,厂商之间的界面也是千差万别,由于浏览器刷新机制,使用时有刷屏现象,好在AJAX技术解决这一难题,像用友,智赢等开发的B/S架构软件用户体验效果与C/S差不多。 |
两层、三层、N 层架构的组成 |
两层:用户接口和后台程序 三层:用户接口、商务逻辑层、数据库(后台程序) N层:如果某个应用超过3个独立的代码层,那么这个应用叫作N层应用 |
J2EE 的版本、组成(基础)、特点、本质、相关产品 |
J2ME、J2SE、J2EE 基础:核心Java平台或Java 2平台的标准版 特点:编写一次、随处运行”的特性,方便存取数据库的JDBC API、CORBA技术,以及能够在Internet应用中保护数据的安全模式等,同时还提供了对EJB(Enterprise JavaBeans)、Java Servlets API、JSP及XML技术的全面支持。 本质:成为一个能够使企业开发者大幅缩短投放市场时间的体系结构 产品:BEA WebLogic、IBM WebSphere及开源的JBos |
J2EE 的分布 |
J2EE使用多层的分布式应用模型,应用逻辑按功能划分成组件,各个应用组件根据它们所在的层分布在不同的机器上 |
开发架构之间的比较 |
在传统模式中,客户端担当了过多的角色而显得臃肿,第一次部署的时候比较容易,但难以升级或改进,可伸展性也不理想,而且经常基于某种专有的协议(通常是某种数据库协议),使得重用业务逻辑和界面逻辑非常困难。现在J2EE的多层企业级应用模型将两层化模型中的不同层面切分成许多层,一个多层化应用能够为不同的服务提供一个独立的层, |
J2EE 典型的 4 层架构 |
运行在客户端机器上的客户层组件。 运行在J2EE服务器上的Web层组件。 运行在J2EE服务器上的业务层组件。 运行在数据库服务器上的EIS(EnterpriseInformation System,企业信息系统)层组件。 |
第 2 章 JSP 的开发和运行环境
JSP 的开发和应用平台的种类 |
Apache Gercnimo、BEA、CAS、IBM、JBoss和NEC等厂家的产品都支持JSP技术和Java Servlet |
各平台的特性 |
Caucho公司的Resin平台:①支持JSP和在服务器端编译的JavaScript。 ②比mod_perl、mod_php更快,比Tomcat快3倍。 ③自动的Servlet/Bean编译。 ④支持Servlet、XSL Filtering。 ⑤支持IIS、Apache、Netscape和其他内置了HTTP/1.1的Web服务器。 ⑥XSLT和XPath1.0引擎。 ⑦企业级的共享软件(基于一个开放源码的协议)。 Apache公司的Tomcat平台 BEA公司的WebLogic平台 IBM WebSphere Application Server平台:①基于Java和Servlet的Web应用程序运行环境,包含为Web站点提供服务所需要的一切,如项目管理、连接数据库、Java Servlet代码生成器、Bean和Servlet开发工具、HTML编译器、网站发布等,为开发Servlet和Java Bean提供了多种向导。WebSphere Performance Pack作为网络优化管理工具,可以减少网络服务器的拥挤现象,扩大容量,提高Web服务器性能。 ②运行时可以协同并扩展Apache、Netscape、IIS和IBM的HTTP Web服务器,因此可以成为强大的Web应用服务器。 ③包含eNentworkDispatcher、WebTrafficeExpress代理服务器和AFS分布式文件系统,可以提供伸缩的Web服务器环境。其基本工作过程是:客户发出请求后,由Http Server将Servlet调用请求交给Application Server,由Application Server和Java Servlet Engine执行用户调用的Servlet进行数据库连接,将SQL请求发送给数据库进行处理;数据库将结果返回Application Server;Servlet生成动态页面后,将处理结果交给Http Server,Http Server将页面返回给用户。由于Websphere面向专业人员,所以要完全掌握的话有一定的难度。 |
Eclipse Java EE 集成开发环境的定义 |
JSP开发环境主要包括JavaBean和Servlet等Java类的开发环境与JSP页面的开发环境,Java类的编译需要JDK的支持。 |
JDK 的配置 |
|
Tomcat 服务器的概述、特点 |
Tomcat服务器是开放源代码的Web应用服务器,是目前比较流行的Web应用服务器之一。 特点:Tomcat运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能 |
Tomcat 的安装、安装文件夹、解压缩版安装说明 |
安装的文件夹:bin目录。主要存放Tomcat的命令文件。 conf目录。存放Tomcat的配置文件,如server.xml和tomcat-users.xml。server.xml是Tomcat的主要配置文件,其中包含Tomcat的各种配置信息,如监听端口号、日志配置等。如果要修改Tomcat默认的端口号8080,找到如下这段代码即可更改。 logs目录。存放日志文件。 temp目录。主要存放Tomcat临时文件。 webapps目录。存放应用程序实例,待部署的应用程序保存在此目录。 work目录。存放JSP编译后产生的class文件。 解压缩版:(1)打开https://tomcat.apache.org/download-90.cgi,单击Binary Distributions|Core|zip,进行下载,如图2-24所示,下载后进行校 验,防止下载文件损坏导致安装失败。
|
Tomcat 的部署和访问网页的链接 |
例如,有一个Web应用程序名为myApp的Web项目,将该Web应用程序文件夹复制到webapps下,启动Tomcat后,通过URL就可以访问http://localhost:8080/myApp/xxx.jsp,其中xxx.jsp为项目下的JSP文件。 |
Eclipse Jave EE 开发环境的配置和开发 |
(2)选择Window|Preferences命令,配置所安装的JRE。打开如图2-34所示的配置对话框,通过Add、Edit等按钮将已有的JRE路径添加至Java|Installed JREs中。 (3)配置Server。通过单击Add按钮添加Server,|Runtime Environments。这里选择ApacheTomcat v9.0。通过Browse查找Apache Tomcat v9.0的安装路径。单击Finish按钮后,配置完成。 |
Tomcat 的目录结构以及具体内容 |
(1)bin目录。主要存放Tomcat的命令文件。
|