C/S体系结构介绍
C/S是Client/Server的缩写,即客户端/服务器结构。在这种结构中服务器通常朵用高性能的PC机或工作站,并采用大型数据库系统 (如Oracle或SQL Server) ,客户端则需要安装专用的客户端软件,如下图所示。这种结构可以充分利用两端硬件环境的优势,将任务合理分配到客户端和服务.从而降低了系统的通讯开销。在2000年以前,C/S结构占据网络程序开发领域的主流。
B/S体系结构介绍
B/S是Brower/Server的缩写,即浏览器/服务器结构。在这种结构中,客户端不需要开发任何用户界面,而统一用如IE和火狐等浏览器,通过Web浏览器向Web服务器发送请求,由Web服务器进行处理并将处理结果逐级传回客户端,如下图所示。这种结构利用不断成熟和普及的浏览器技术实现原来需要复杂专用软件才能实现的强大功能从而节约了开发成本,是一种全新的软件体采结构。这种体采结构已经成为当今应用软件的首选体采结构。
两种体系结构的比较
WEB在计算机网页开发设计中就是网页的意思。网页是网站中的一个页面,通常是HTML格式的。网页可以展示文字、图片、媒体等,需要通过浏览器阅读。
静态网站
早期的Web应用主要是静态页面的浏览,即静态网站
动态网站
随着网络的发展,很多线下业务开始向网上发展,基于Internet的Web应用也变得越来越复杂,用户所访问的资源已不能只是局限于服务器上保存的静态网页,更多的内容需要根据用户的请求动态生成页面信息,即动态网站。
Servlet是使用Java Servlet API编写的、适合于B/S模式的、运行在Web服务器端的Java类,具有独立于平台和协议的特性,可以生成动态的Web页面。Servlet和客户端的通信采用“请求/响应”模式,其工作原理如图所示。
平台无关性:Servlet (JSP会转换为Servlet) 采用Java语言来编写,与Java语言一样具有平台无关性。
效率高:当Servlet程序在加载执行之后,它的实例在一段时间内会一直驻留在服务器的内存中,若有请求,服务器会直接调用Servlet实例来服务。并且当多个客户请求一个Servlet时,服务器会为每个请求者启动一个线程来处理,所以效率高。
功能强大:Servlet属于Java技术体系的有机组成部分,能够访问所有的Java API,可方便地访问数据库、网络、收发邮件、远程方法调用等。
安全可靠:Servlet有强类型检查功能,并且利用Java的垃圾回收机制避免内存管理上的问题。另外,Servlet能够安全地处理各种错误不会因为发生程序上的逻辑错误而导致整体服务器系统的崩溃。
JSP(全称Java Server Pages)是由SunMicrosystems公司主导创建的一种动态网页技术标准。JSP部署于网络服务器上,可以响应客户端发送的请求,并根据请求内容动态地生成HTML、XML或其他格式文档的Web网页,然后返回给请求者。JSP技术以Java语言作为脚本语言,为用户的HTTP请求提供服务,并能与服务器上的其它Java程序共同处理复杂的业务需求。JSP将Java代码和特定变动内容嵌入到静态的页面中,实现以静态页面为模板,动态生成其中的部分内容。JSP文件在运行时会被其编译器转换成更原始的Servlet代码。JSP编译器可以把JSP文件编译成用Java代码写的Servlet,然后再由Java编译器来编译成能快速执行的二进制机器码,也可以直接编编译成二进制码
当Web浏览器发送来一个页面请求时,Web服务器会首先判断其是否为JSP页面请求。如果该页面只是一般的HTML页面请求,则直接将所请求的页面代码传回给Web浏览器。如果请求的是JSP页面,则由JSP引擎检查所请求的JSP页面是否为第一次被请求,或者是否被修改过。如果是,则JSP引警就将此JSP页面代码转换为Servlet代码(java),然后对其进行编译生成字节码(class) 文件并执行并将执行结果传给Web浏览器进行显示。如果该JSP页面不是第一次被请求,而且没有被修改过,则直接(而不会由JSP引擎调用JVM执行已经编译生成过的字节码文件重复编译),并将执行结果传给Web浏览器进行显示可见:并不是每次请求都需要重复进行转换、编译处理。当某个JSP页面第一次被请求时,会有一些延迟,而再次被访问时就会快很多
JSP的实现是基于Servlet的,JSP页面在运行之前要被解释成Java Servlet。当JSP容器接到对一个JSP页面的请求后,首先判断与JSP文件对应的Servlet类的名字,如果该类不存在或比JSP文件旧,容器就会重新创建一个等价的Servlet类并编译它。
HTML是一种超文本语言,在因特网上常见的网页制作标注性语言,HTML是通过浏览器的翻译,将网页中内容呈现给用户
HTML页面
应用记事本编写HTML代码
换行标记
段落标记
设置标题标记
java开发的3个方向
Java SE
主要用于桌面程序的开发。它是学习JavaEE和JavaME的基础,也是本书的重点内容。
Java EE
主要用于网页程序的开发。随着互联网的发展,越来越多的企业使用Java语言来开发自己的官方网站,其中不乏世界500强企业。
Java ME
center>
主要用于嵌入式系统程序的开发。
表格标记
表格行标记 | ||||||||
---|---|---|---|---|---|---|---|---|
效果 表单标记表单标记下拉菜单标记
|