JavaWeb应用开发概述

1、程序开发体系结构

网络程序开发体系结构有多种,其中运用最多的网络应用程序开发体系结构有两种,一种是基于浏览器/服务器的B/S结构,另一种是基于客户端/服务器的C/S结构。通过以下的内容,大家可以掌握Web开发的在服务器端和浏览器端分别需要的技术、Web开发的流程。

1)、C/S体系结构

C/S是Client/Server的缩写,即客户端/服务器结构。服务器通常采用高性能的PC机或工作站,并采用大型数据库系统(如Oracle或SQL Server),客户端则需要安装专用的客户端软件。这种结构可以充分利用两端硬件环境的优势,将任务合理分配到客户端和服务器,从而降低了系统的通信开销。

2)、B/S体系结构介绍

B/S是Browser/Server的缩写,即浏览器/服务器结构。在这种结构中,客户端不需要开发任何用户界面,而同一采用如IE何Firefox等浏览器,通过Web浏览器向Web服务器发送请求,由Web服务器进行处理,并将处理结果逐级传回客户端。这种结构利用不断成熟和普及的浏览器技术实现原来需要复杂专用软件才能实现的强大功能,从而节约了开发成本,是一种全新的软件体系结构。

3)、两种体系结构的比较

(1)、开发和维护成本方面

C/S结构的开发和维护成本比B/S高。采用C/S结构时,系统维护员必须讲客户端原有的软件卸载,再安装新版本并进行配置。而B/S结构的软件,系统维护员只需要将服务器的软件升级到最新版本,对于其他客户端,只要重新登录系统即可使用最新版本的软件。

(2)、客户端负载

C/S结构的客户端不仅负责与用户的交互,同时需要通过网络向服务器请求对数据库、电子表格或文档等信息的处理工作。而B/S结构的客户端把事务处理逻辑部分交给了服务器,由服务器进行处理,这样虽然减轻了客户端的负载,但同时又家中了服务器的负载。

(3)、安全性

C/S结构适用于专人使用的系统,可以通过严格的管理派发软件,达到保证系统安全的目的,这样的软件相对来说安全性比较高。而B/S结构的软件,由于使用的人数较多,且不固定,相对来说安全性就会低一些。

2、Web应用程序的工作原理

Web应用程序可分为静态网站和动态网站。静态网站使用HTML语言来编写,用户使用浏览器通过HTTP协议请求服务器上的Web页面,服务器上的Web服务器将接收到的用户请求处理后,再发送给客户端的浏览器,显示给用户。

动态网站通常使用HTML语言和动态脚本语言(如JSP、ASP或是PHP等)编写,并将编写后的程序部署到Web服务器上,由Web服务器对动态脚本代码进行处理,并转换为浏览器可以解析的HTML代码,返回给客户端浏览器,显示给用户。

3、Web应用技术

在开发Web应用程序时,通常需要应用客户端和服务器两方面的技术。客户端用于展现信息内容,服务器用于进行业务逻辑的处理和与数据库的交互等。

1)、客户端应用的技术

比较常用的客户端技术包括HTML语言、CSS、Flash和客户端脚本技术。

lHTML语言:客户端技术的基础,用于显示网页信息,由浏览器解释执行,不需要编译,不区分大小写。

lCSS:样式表(Style Sheet)技术,或层叠样式表(Cascading Style Sheet)。用于对页面的布局、字体、颜色、北京和其他效果实现更加精确的控制。CSS大大提高了开发者对信息展现格式的控制能力,特别是在目前比较流行的CSS+DIV布局的网站中。

lFlash:Flash是一种交互式动画制作技术,它可以包含动画、音频、视频以及应用程序,而且Flash文件比较小,非常适合在Web上应用。

l客户端脚本技术:指嵌入到Web页面中的程序代码,这些代码是一种解释性的语言,浏览器可以对客户端脚本进行解释。通过脚本语言可以实现以编程的方式对页面元素进行控制,从而增加页面的灵活性。常用的客户端脚本语言有JavaScript和VBScript。JavaScript是Ajax的重要组成部分。

2)、服务器端应用的技术

比较常用的服务器端技术主要有CGI、ASP、PHP、ASP.NET和JSP。

lCGI:通用网关接口(Common GatewayInterface),最早用来创建动态网页的技术,可以使浏览器与服务器之间产生互动关系。它允许使用不同的语言来编写适合的CGI程序,该程序被放在Web服务器上运行。由于服务器是以进程为单位来执行指定的CGI程序,所以这种技术编制方式比较困难而且效率低下。支持的语言有C/C++、Java和Perl。

lASP:Active Server Page是一种使用很广泛的开发动态网站的技术。通过在页面代码中嵌入VBScript或JavaScript脚本语言来生成动态的内容。ASP可以调用存在于后台的COM组件来完成,所欲COM组件无限地扩充了ASP的能力。正因如此以来本地的COM组件,使得它主要用于Windows NT平台中,所以Windows本身存在的问题都会映射到它的身上。

lPHP:Personal Home Page,语法类似于C,是一种开源的Web服务器脚本语言,对于复杂的操作可以封装到函数或类中。在PHP中提供了许多已经定义好的函数,例如标准的数据库接口,使得数据库连接方便,扩展性强。PHP被广泛应用于UNIX/Linux平台,是到目前为止安全性能最高的动态网页技术。

lASP.NET:建立动态Web应用程序的技术。是.NET框架的一部分,可以使用任何.NET兼容的语言来编写ASP.NET应用程序,从而得到比脚本语言更出色的性能表现。Web Forms允许在网页基础上建立强大的窗体。当建立页面时,可以使用ASP.NET服务端控件来建立常用的UI元素,并对他们编程来完成一般的任务。这些控件允许开发者使用内建可重用的组件和自定义组件来快速建立Web Forms,是代码简化。

lJSP:Java Server Page,沿用Java强大的API功能,JSP页面中的HTML代码用来显示静态内容部分,嵌入到页面中的Java带代码与JSP标记用来生成动态的内容部分。JSP允许程序猿编写自己的标签库来完成应用程序的特定要求。JSP可以被预编译,提高了程序的运行速度。另外JSP开发的应用程序还有“一次编译,随时可用”的特点。

java开发web应用开发,Java Web应用开发概述相关推荐

  1. java web开发初学_2018年学习Web开发的绝对初学者指南

    java web开发初学 This post was originally published on Coder-Coder.com. 该帖子最初发布在Coder-Coder.com上 . If yo ...

  2. java webservice接口开发_给Java新手的一些建议----Java知识点归纳(J2EE and Web 部分)

    J2EE(Java2 Enterprise Edition) 刚出现时一般会用于开发企业内部的应用系统,特别是web应用,所以渐渐,有些人就会把J2EE和web模式画上了等号.但是其实 J2EE 里面 ...

  3. java、php、.net关于web开发的区别

    一提到web开发,目前在世界上流行性的三个帮派就是php,java和asp.net,这个世界上的百分之99的网站或者类似的应用都是由这三种语言的开发,这里请原谅我忽视某些小众语言如python之类.三 ...

  4. web自动化如何在不同浏览器运行_如何给树莓派搭建WEB开发运行环境之JAVA篇

    在上一篇,我们已经脱掉了她华丽的外衣,你不用再添加任何华而不实的装饰,一切都交给CLI来搞定.树莓派WEB开发运行环境之JAVA篇,只需5个步骤: 安装JAVA开发包 安装和运行maven 创建JAV ...

  5. java判断读到末尾_Java Web入门之java--第一节 java 简介及开发环境安装

    本篇博客是Java web入门的第一篇博客,这篇博客主要讲述java语言的一些简介. 一)先从Java语言的诞生说起. 1991年,Sun公司在一个叫做James Gosling的人的带领下,成立了一 ...

  6. Java Web 后台中餐饮业报表系统开发实例

    本期葡萄城公开课,我们诚邀石家庄品智技术有限公司,高级软件工程师--刘永政先生,为大家在线分享餐饮业报表系统设计模式,以及在 HTML5 报表浏览器.Java 架构中跨平台使用ActiveReport ...

  7. JSP高校信息管理系统myeclipse开发sql数据库web结构计算机java编程

    一.源码特点   JSP 高校信息管理系统是一套完善的web设计系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,,系统主要采用B/S模式开发. JSP高校信息管理系统my ...

  8. 视频教程-Vue、Spring Boot开发小而完整的Web前后端分离项目实战-Java

    Vue.Spring Boot开发小而完整的Web前后端分离项目实战 3年多.net开发经验:5年的java后端开发经验,熟悉行.net,java流行技术,拥有多个.net,java web企业级应; ...

  9. JSP众筹管理系统myeclipse开发sql数据库web结构计算机java编程

    一.源码特点   JSP 众筹管理系统 是一套完善的web设计系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发. JSP众筹管理系统myecli ...

  10. 动态网站开发讲课笔记02:Java Web概述

    文章目录 零.本节学习目标 一. XML基础 (一)XML概述 1.XML 2.XML与HTML的比较 (二)XML语法 1.XML文档的声明 2.XML元素的定义 3.XML属性的定义 4.XML注 ...

最新文章

  1. java金额小写转大写(8.2)
  2. C# Delegate(委托)与多线程
  3. [BZOJ 5072][Lydsy1710月赛]小A的树
  4. 偏差与方差,欠拟合与过拟合
  5. vue中使用的v-model在使用正则时不能正确读取值的问题(正则通过 oninput的方式写的)
  6. python numpy中对ndarry按照index(位置下标)增删改查
  7. Spring Boot实践
  8. SQLi Labs Less-1 联合注入+报错注入
  9. Web Session和Cookie
  10. 编译运行一个java程序_如何从另一个Java程序编译和运行Java程序
  11. 物体检测中常用的几个概念迁移学习、IOU、NMS理解
  12. php 5.5 缓存,PHP 5.5 FastCGI缓存
  13. idea创建VUE项目
  14. Python绘制漫天的雪花,漫步天涯
  15. java接入短信容联云通讯
  16. 苹果安卓鸿蒙对比,鸿蒙OS对比iOS,华为再次“超越”,流畅度大幅领先苹果!...
  17. LIS的O(nLogN)算法
  18. 前端获取QQ音乐(mp3+m4a)
  19. python二级准备一个月能行吗_计算机二级选哪个?一个多月的准备时间够吗?
  20. spring boot的启动与配置

热门文章

  1. 原型与继承学习笔记3
  2. 机器学习 - pycharm, pyspark, spark集成篇
  3. 应用服务器文件路径设置
  4. Ubuntu 8.04和Windows Server 2008 双体系的安置与卸载记
  5. 最小二乘法2阶拟合数据
  6. Linux安装Nginx1.7.4、php5.5.15和配置
  7. 待解决的问题 POJ 3225 Help with Intervals 线段树 码力
  8. frist Django app — 一、 创建工程
  9. 精益企业中架构师的角色
  10. SQL Server常用的字符串/日期/系统函数