JavaWeb01-动态网页

01.动态网页的优势
动态网页是在服务器端运行的程序!随不同用户,不同条件 返回不同的结果!
001.交互性:网页会根据用户的要求和选择而动态的改变和现实网页内容!
002.自动更新:无需改变页面的代码,便会自动更新页面内容!
003.随机性:当不同的时间,不同身份的用户访问同一页面会产生不同的的页面效果!
02.动态网页是静态网页的替代品吗?
两者各有优点,选择哪种页面取决于网站功能的需求和内容的多少。如果网站的功能简单,内容少,采用静态网页的方式更合适!
反之,一般要使用动态网页!
03.B/S架构(Browser/Server 浏览器/服务器)
001.在B/S架构下,应用程序 完全 放在应用服务器上,并通过应用服务器与数据库服务器进行通信,系统界面通过浏览器展现。
002.B/S和C/S各自优势
B/S的优势:
维护和升级方式简单。C/S架构必须安装和配置客户端软件。如果系统需要更新,必须对每一个客户端都进行更新!
B/S架构中,软件应用的业务逻辑完全在服务器端实现,所有的客户端只是浏览器,不需要维护!(升级浏览器需在客户端进行)
维护人员只需要关注服务器端软件的软件更新!
C/S的优势:
B/S的界面没有C/S的友好,很难做出像office这样界面丰富的软件。
在速度和安全性上需要花费巨大的设计成本!
由于B/S架构的交互是 请求/响应 模式的,一旦数据信息发生变化,必须通过刷新页面才能看到更新的数据信息!
C/S架构一般面向固定的用户群,一般高度机密的信息系统采用C/S架构!
B/S架构适用于公开信息发布,对信息的保密性要求较低的情况!

003.B/S架构的工作流程
01.浏览器接收用户的输入
02.浏览器向服务器发送请求,等待服务器响应(此请求先到应用程序服务器,再到数据库服务器!)
03.数据处理:服务器通常使用服务器脚本语言(Java等)进行数据库访问
04.服务器向浏览器发送响应!(如动态生成的html页面,并有浏览器进行渲染后展现给用户!)

04.URL(Uniform Resource Locator) 统一资源定位符!

01.URL用于完整的描述Internet上网页和其他资源的地址的一种标识方法!(简单说URL就是网址!)
02.在Internet上所有资源都有一个独一无二的URL!
03.URL的组成! http://localhost/news/index.jsp
协议:http ==> HyperText Transfer Protocol 超文本传输协议!
https ==> 安全的! safe
该协议支持简单的 请求/响应对话!对于Web服务器是最常用的协议!

服务器域名 IP:localhost

端口号:
端口是用于服务器内外部通信的通道!当外部访问服务器时就需要通过指定的通道来访问!
为了避免复杂的ip地址,通常用域名来代替!例如百度ip为 202.108.22.5 域名为baidu.com

路径:
包含两层含义!
例如news/index.jsp
news是指Web应用程序 对外发布时 对应的上下文路径!即Web应用的根目录!index.jsp代表具体的资源!

05.常用的Web服务器(Web容器)
001.Tomcat
002.JBoss
003.Jetty

06.Web应用的目录结构
/ :根目录,该目录下的所有文件 对客户端都可以访问!(jsp html css js ..)
/WEB-INF:存放应用程序所使用的各种资源,该目录及其子目录对客户端 不可以访问!(其中包括web.xml 部署描述符)
/WEB-INF/classes :存放应用程序 所有的class文件!
/WEB-INF/lib : 存放Web应用使用的 jar文件!

注意:01.Tomcat运行过程中,Tomcat类加载器会先加载 classes目录下的class文件!然后再加载 lib目录下的 jar文件!
如果在这两个目录下存在同名的类,那么classes目录下的类具有优先权!
02.每个JavaWeb应用都有一个核心文件 即web.xml !(保存在WEB-INF目录下!)
web.xml 控制整个应用程序的行为方式和方法!
03.修改web.xml后,需要重启Web服务器!
04.web.xml 文件中的<welcome-file-list>标签用于设定web应用的起始访问页面列表!
<welcome-file>用于指定某一具体页面!
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
...
</welcome-file-list>

07.JSP页面 Java Server Page(Java服务器端的页面)

01.JSP技术是在 html页面中嵌入 Java脚本语言,然后由应用程序服务器中的 JSP容器来编译和执行 之后将产生的结果返回给客户端!
02.JSP的组成:

静态内容
JSP指令
JSP表达式
JSP小脚本
JSP声明
注释等元素构成!

001.静态内容:如 html文本 与Java和JSP的语法无关!
002.JSP指令元素: <%@ %>
例如 01.page指令,在一个JSP页面中可以多个page指令!page指令只对 当前页面有效!
page指令的属性:
import="java.util.*"
language="java"
contentType="text/html;charset=utf-8"
contentType属性告诉web容器在客户端浏览器上以哪种格式/编码 显示“响应”的内容!
02.include指令 等

003.JSP脚本元素:
小脚本 <% java代码 %>
表达式 <% java变量/java表达式 %> 不能在表达式结尾加分号 “;” !
声明 <%! %>用来定义方法/变量 (都是全局的!)

004.JSP注释:<%-- 注释 --%> 在客户端浏览器通过查看源码 是看不到的! (安全的!)
html注释:<!-- 注释 --> 查看源码可以看到!(不安全的!)
在JSP脚本中使用注释: <% //单行注释 %> 多行<% /*多行注释*/ %> 查看源码看不到!(安全的!)

08.JSP 执行过程! *****

当请求发送至服务器,web容器通过三个阶段实现处理!

01. 翻译阶段!
用户通过浏览器访问jsp时,web容器(tomcat)中的 jsp引擎 负责把jsp 转化为 java文件
001.jsp声明 ==> java文件中的成员方法!
002.jsp脚本 ==> java文件中 _jspService()方法中的一段代码!
003.jsp表达式 ==> java文件中 _jspService()方法中的一段代码! out.print(表达式);
004.普通html代码 ==> _jspService()中一段out代码! out.print("html标签");

02. 编译阶段!
服务器将java文件编译成 class文件

03. 执行阶段!
服务器执行 class文件!
001. 首先对生成的java类进行实例化!
002.调用实例化后的 对象._jspService() 输出 html 给浏览器!

注意:无论请求的URL 是 html 还是jsp 服务器响应回来的都是 html (jsp ==> html的过程发生在服务器内部!)

04. 浏览器 渲染html数据 显示给用户!

注意:一旦web容器把jsp文件翻译和编译完成。web容器就会将 编译好的 class字节码文件保存在 内存中!
当用户再次请求相同的jsp时, 就可以 重用 这个编译好的class字节码文件!而不会把jsp重新翻译编译!
这样做大大提升了 web应用程序的性能!(请求后服务器直接运行class文件!)
但如果对jsp进行了修改,web容器就会重新 翻译编译!
综上所述,jsp在第一次请求时会比较慢!

时间: 2024-10-20 00:26:28

JavaWeb01-动态网页的相关文章

动态网页脚本语言

在ASP .PHP.JSP环境下,HTML代码主要负责描述信息的显示样式,而程序代码则用来描述处理逻辑.普通的 HTML页面只依赖于Web服务器,而ASP .PHP.JSP页面需要附加的语言引擎分析和执行程序代码.程序代码的执行结果被重新嵌入到HTML代码中,然后一起发送给浏览器.ASP .PHP.JSP三者都是面向Web服务器的技术,客户端浏览器不需要任何附加的软件支持. 二.技术特点: (一)ASP的技术特点: 1. 使用VBScript .JScript等简单易懂的脚本语言,结合HTML代

动态网页和静态网页的特点

静态网页的基本概述静态网页的网址形式通常是以.htm..html..shtml..xml等为后后缀的.静态网页,一般来说是最简单的HTML网页,服务器端和客户端是一样的,而且没有脚本和小程序,所以它不能动.在HTML格式的网页上,也可以出现各种动态的效果,如.GIF格式的动画.FLASH.滚动字母等,这些"动态效果"只是视觉上的,与下面将要介绍的动态网页是不同的概念. 静态网页的特点(1)静态网页每个网页都有一个固定的URL,且网页URL以.htm..html..shtml等常见形式为

ASP.NET总结——静态网页与动态网页

刚刚看完<北大青鸟ASP.NET>视频的前六集.这六集视频给我太多太多听觉和视觉上的"刺激"(太卡了).尽管如此,在视频当中,我依然接触了许多新的概念,知识.(其实也不算新,只是这次好像正式了些.)之后,它们就激起了我很大的求知欲望.可是搜索了一番,还是觉得自己理解地很浅显,但是我觉得非常有必要总结一下,这样才能为以后深入地理解打下基础.         静态网页与动态网页 当初,在看<牛腩新闻发布系统>的时候,小牛老师有的时候创建的网页的后缀是.aspx的,有

J2EE动态网页技术—JSP

学习JSP,我们需要知道的是什么是JSP?JSP有什么特点?JSP与svelte有什么关系? 第一个概念:JSP是服务器端运行的一种脚本语言,这类似的语言还有CGI.ASP.PHP等.          CGI:采用单进程模式,每次请求服务器端的一个服务,都需要启动一个新的线程.所以当有多个用户同时进行CGI请求的时候,服务器就会打开多个进程,加重了服务器的负担,使服务器的执行效率变得越来越低下. ASP:是微软所开发一种后台脚本语言,特点简单易用,其局限性在于只能在微软的服务器平台上良好运行,

动态网页发布

本文介绍在windows2008服务器上搭建动态网页,其中动态网页的目录文件须自行准备. 首先,在windows2008中打开服务器管理器,选择添加角色,然后选择web服务器(iis)安装并选择默认程序安装,其中需要注意的是,在选择了默认安装以后,再选择ASP.NET及.NET扩展性,然后进行安装,如图. 安装完web服务器之后,就可以再管理工具中打开internet信息服务(iis)管理器了,打开以后,会发现在默认的站点下面系统默认建立了一个站点,该站点默认启动,须手动关闭. 右键点击网站,添

python动态网页爬取——四六级成绩爬取

需求: 四六级成绩查询网站我所知道的有两个:学信网(http://www.chsi.com.cn/cet/)和99宿舍(http://cet.99sushe.com/),这两个网站采用的都是动态网页.我使用的是学信网,好了,网站截图如下: 网站的代码如下: 1 <form method="get" name="form1" id="form1" action="/cet/query"> 2 3 <table

使用JSP/Server技术开发新闻发布系统第一章动态网页开发基础

      一:为什么需要动态网页    由于静态网页的内容是固定的,不能提供个性化和定制化得服务,使用动态网页可真正地与用户实现互动. 二:什么是动态网页  ①:动态网页是指在服务器端运行的,使用程序语言设计的交互网页,她们会根据某种条件的变化返回不同的网页内容.  ②动态网页需要使用服务器脚本语言. 三:动态网页的优势: ①        交互性:即网页会根据用户的要求和选择而动态改变和显示内容. ②        自动更新:即无時须改变页面代码,便会自动生成新的页面内容,可以大大节省工作量

node基础12:动态网页

1.显示动态网页 又到了激动人心的时刻,马上就可以使用node创建动态网站了,其原理为: 在HTML模板中使用占位符 根据请求路径,确定需要返回的页面 根据请求参数来确定静态模板中占位符的值 使用正则匹配将占位符匹配为真实值 再res.write()到浏览器的 代码如下: // server.js var http = require("http"); var url = require('url'); var router = require('./router'); http.cr

静态网页与动态网页的理解

静态网页的工作原理 静态网页也称为普通网页,是相对网页而言的.静态网页不是指网页中的元素都是静止不动的,而是指网页文件中没有程序代码,只有HTML(超文本标记语言)标记,一般后缀为.htm..html..shtml或.xml等.在静态网页中,可以包括GIF动画,鼠标经过Flash按钮时,按钮可能会发生变化. 静态网页一经制成,内容就不会再变化,不管何人何时访问,显示的内容都是一样的. 如果要修改网页的内容,就必须修改其源代码,然后重新上传到服务器上. 对于静态网页,用户可以直接双击打开,看到的效

使用爬虫登录动态网页(一基础)

1.之前在网页中URl链接采用Urllib/Urllib2,但是现在加强版requests模块进行网页URl提取,requests库模拟登录或者登录动态网页 URL理解:网页抓取过程浏览器向服务器请求的过程:1.访问资源命名机制2.存放资源主机3.资源自身的路径 对requests模块的入门:http://blog.csdn.net/iloveyin/article/details/21444613 对于get参数request.get(url,data=XXX,**.kwargs) impor