JavaWeb
第一章
JSP简介
解决Web动态网站的开发技术
jsp工作原理
处理过程
- 客户端通过Web浏览器向JSP服务器发送请求
- JSP服务器检查是否已经存在JSP页面对应的Servlet源代码,若存在则进行第3⃣️步,否则转至4⃣️
- JSP服务器检查JSP页面是否有更新修改,若存在更新修改则进行第4⃣️步,否则转5⃣️
- JSP服务器将JSP代码转译成Servlet源代码
- JSP服务器将Servlet源代码编译后执行
- 将产生的结果返回到客户端
-
如果该页面是第一次执行,则需要把JSP页面中的代码转换为Servlet代码形式
-
如果该页面不是第一次执行,就会直接调用该页面的class文件执行
-
如果被请求的页面经过修改服务器将会重新编译这个文件,然后执行
-
Servlet也有不足之处:即所有的响应代码都是通过Servlet程序生成的
JSP程序体系结构
比较C/S与B/S
-
C/S
- C/S结构即Client/Server(客户/服务器)结构,通过将Client端和Server端,降低了系统的通信开销,解决了费用和性能的矛盾。
- 最简单的体系结构的数据库应用由两部分组成,即客户应用和数据库服务器程序
- 运行数据库服务器程序的机器成为应用服务器,一旦服务器程序被启动,九岁时等待响应客户发来的请求
- 客户程序运行在用户自己的计算机上,对应服务器计算机,可称为客户计算机
- 优点
- 能充分发挥客户端pc的处理能力
- 客户端响应快
- 缺点
- 只适用于局域网
- 客户端需要安装专用的客户端软件
- 对客户端的操作系统一般也会有限制
-
B/S
- 即Browser/Server(浏览器/服务器)结构
- 节约了开发成本,是一种全新的软件系统构造技术
- 系统安装、修改和维护都在服务器端解决
- Web应用程序的访问不需要安装客户端程序
- Web升级时,并不需要在客户端上做任何修改
- 缺点
- 在跨浏览器上不能尽如人意
- 大量工作由服务器完成,设计算法使得高效访问是一个大问题
三层架构
- 分层模式是很多架构模式的基础,通过分层模式将解决方案的组件分割到不同的层中,实现同一个层中组件之间保持内聚性,并保持层与层之间的松耦合
- 表示层
- 主要作用为数据显示或者和后台进行交互,因此表示层通常对应于HTML页面或JSP页面
- 业务逻辑层
- 主要针对具体问题的操作,也可以理解成对数据层的操作,对数据进行业务逻辑处理
- 数据层
- 主要针对原始数据(数据库或者文本文件等存放数据的形式)的操作层,而不是指原始数据
- 表示层访问业务层,业务层为表示层的访问提供数据或相应的方法
- 业务逻辑层访问数据层,数据层为业务层的访问提供数据或方法
- 程序应当遵循高内聚低耦合的设计目标,提高程序的可复用性
两层架构
- 表示层
- 业务和数据层
Tomcat介绍
- 目录结构
- bin:存放Windows平台以及Linux平台上启动和关闭Tomcat的脚本文件
- conf:存放服务器的各种配置文件,其中最重要的文件是Server.xml
- server包含三个字目录:classes、lib和webapps
- server/lib存放tomcat服务器所需要的jar文件
- server/webapps存放Tomcat自带的两个Web应用:admin应用和manager应用
- common/lib存放Tomcat服务器以及所有Web应用都可以访问的jar应用
- share/lib存放所有Web应用都可以访问的Jar文件
- logs存放Tomcat的日志文件
- webapps在发布Web应用时,默认情况下把Web应用文件存放在此目录下
- work Tomcat把由jsp生成的Server放于此目录下
第一章习题
-
选择
-
关于部署到Tomcat服务器的JavaWeb应用程序,正确的选项有(C)
A.JavaWeb应用程序总是打包成War形式部署到Tomcat服务器中
B.JavaWeb应用程序应当部署到Tomcat服务器的server字目录中
C.每个JavaWeb应用程序都有一个web.xml文件
D.JavaWeb应用程序的根目录下不能存放任何文件,所有html、gif等文件必须存放到某一字目录中去
-
-
问答
- 请简述JSP程序的运行过程
- 客户端通过Web浏览器向JSP服务器发送请求
- JSP服务器检查是否已经存在JSP页面对应的servlet源代码,若存在执行第3⃣️步,否则执行第4⃣️步
- JSP服务器检查JSP页面是否有更新修改,若存在执行第4⃣️步,否则5⃣️
- JSP服务器将JSP代码转译成Servlet源代码
- JSP服务器将Servlet源代码编译后执行
- 将产生的效果返回客户端
- 简述B/S模式和C/S模式
- B/S模式:用户完全通过www浏览器实现,一部分事务逻辑在前端实现,但主要事务逻辑在服务器端实现
- C/S模式:将任务合理分配到Client端和Server端,降低系统通信开销
- 简述三层架构及其特点
- 所谓三层架构就是将系统的整个业务应用划分为表示层——业务逻辑层——数据访问层
- 实现同一层中组件之间保持内聚性,并保持层与层之间低耦合
- 简述Tomcat的目录结构
- 见上文
- 请简述JSP程序的运行过程