1南京理工大学计算机学院第1章Web应用开发简介第1章Web应用开发简介前一页休息南京理工大学计算机学院2本章主要内容何为Web应用使用Java开发Web应用多种集成开发第1章Web应用开发简介前一页休息南京理工大学计算机学院31.1何为Web应用第1章Web应用开发简介前一页休息南京理工大学计算机学院41.1.1Web的概念及发展Web介绍概念WorldWideWeb简称为Web,中文译为万维网,是Internet上的一种服务。历史1980年:TimBerners-Lee负责的Enquire项目具有了Web类似思想。1990年:直到1990年,第一台Web服务器开始运行。1991年:CERN正式发布了Web技术标准。组成服务器:物理设备指远程计算机,软件指根据用户的请求将信息资源传递给用户的应用程序。客户端:物理设备指本地计算机,软件指接受并显示服务器上传递过来的信息资源的应用程序发展Web1.0:称为互联网第一代,指的是2003年以前的互联网模式。Web2.0:以用户为灵魂,它允许多人参与,以可读可写的模式成为了互联网新的发展趋势。第1章Web应用开发简介前一页休息南京理工大学计算机学院51.1.2Web应用程序Web应用程序介绍概念Web应用程序是一种使用HTTP作为核心通信协议、通过互联网让Web浏览器和服务器通讯的计算机程序。技术组成客户端开发技术:HTML、CSS、DOM、ActiveX、JavaScript、VBScript、Applet等。服务器端开发技术:JSP/Servlet、PHP、ASP、CGI、Perl、ISAPI等。层次结构表示层:采用Web浏览器实现。业务逻辑层:由位于Web服务器上的各种服务器端程序实现。数据服务层:由数据库服务器提供,数据库服务器例如MySQL、SQLServer等。第1章Web应用开发简介前一页休息南京理工大学计算机学院61.2使用Java开发Web应用第1章Web应用开发简介前一页休息南京理工大学计算机学院71.2.1面向对象的编程语言面向过程与面向对象面向过程面向过程是一种以事件为中心的编程思想,它将重点围绕在数据的使用上,在程序设计过程中通过流程图的方式辅助程序设计,然后用结构化的编程语句来编写程序。例如C、Cobol、Pascal等语言。面向对象面向对象将将要解决的问题分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙解决问题中的各个步骤中的行为。面向对象编程方式是建立在面向过程编程方式基础上,其最重要的改变在于面向对象编程中,程序将围绕被操作的对象来设计,而不是操作本身。面向对象编程方式以类作为构造程序的基本单位,具有封装、抽象、继承、多态性等特点。如Java、C++、Self等。第1章Web应用开发简介前一页休息南京理工大学计算机学院81.2.2丰富的框架技术框架技术框架介绍面向对象的一个突出优点就是复用,面向对象系统获得的最大的复用方式就是使用框架。框架其实就是可重用的设计架构,应用框架强调的是软件的设计重用性和系统的可扩充性,以缩短大型应用软件系统的开发周期,提高开发质量。Java中常用的框架Struts:一个基于SunJ2EE平台的MVC框架,它将Servlet和JSP标签作为实现自身功能的一部分。WebWork:一个基于Web的MVC框架。它在运行时通过Interceptor(拦截器)自动应用,因此脱离了Action类。Struts2:它建立在Struts框架与WebWork框架基础之上,继承了二者的优点,是目前非常流行的一个Web框架。Spring:一个以IoC和AOP为核心的轻量级容器框架。它提供了一系列的JavaEE开发解决方案,包括表示层的SpringMVC、持久层的SpringJDBC以及业务层事务管理等众多的企业级应用技术。Hibernate:一个ORM(对象关系映射)框架,它对JDBC进行了轻量级的封装。通过使用Hibernate框架,开发人员能够以面向对象的思维方式来操作数据库。Ibatis:相对于Hibernate而言,Ibatis是一个“半自动化”的ORM实现框架,它主要致力于POJO与SQL之间的映射关系,是对“全自动化”ORM框架的一种有益补充。EasyJWeb:EasyJWeb是一个核心基于模板技术实现的MVC框架,主要致力于JavaWeb应用程序的快速开发。第1章Web应用开发简介前一页休息南京理工大学计算机学院91.2.3XML、CSS的应用XML简介XML中文称为可扩展标记语言,它是由W3C(万维网协会)推出的新一代数据交互的标准,主要用于定义Web网页上的文档元素和商业文档。语言特点XML是一种数据存储语言,它使用一系列简单的标记(或者称为元素)来描述数据,包含XML语言的文件称为XML文件,它通常以“.xml”结尾,例如:?xmlversion=1.0encoding=GB2312?student!--姓名--name张三/name!--班级--class09213班/class/student用途实现不同应用程序之间的数据交互对一种数据实现多种样式实现数据的分布式处理应用程序1应用程序2XML文件交换数据交换数据XML文件样式1样式2样式3样式4显示效果1显示效果2显示效果3显示效果4Web服务器XML文件DOM操作1操作2操作3操作4显示Web服务器第1章Web应用开发简介前一页休息南京理工大学计算机学院101.2.3XML、CSS的应用CSS简介CSS中文称为层叠样式表单,由W3C的CSS工作组设置和维护,它是一种用来表现HTML或XML等文件式样的计算机语言,属于浏览器解释型语言,不需要编译,就可以直接由浏览器执行。语言特点CSS语法非常简单,组成CSS语法的元素只有CSS选择符与CSS属性。每个CSS选择符可以包含一个或多个CSS属性。将下面的XML文件使用CSS设置样式:?xmlversion=1.0encoding=GB2312?student!--姓名--nameid=className张三/name!--班级--classclass=studentClass09213班/class/studentCSS的代码:#studentName{color:blue}.studentClass{color:red}第1章Web应用开发简介前一页休息南京理工大学计算机学院111.2.3XML、CSS的应用CSSCSS样式文件以.css结尾。在XML文件中引用格式?xml--stylesheettype=text/csshref=CSS文件的URL?示例代码?xmlversion=1.0encoding=GB2312??xml-stylesheettype=text/csshref=school.css?student!--省略代码--/student第1章Web应用开发简介前一页休息南京理工大学计算机学院121.2.3XML、CSS的应用CSSCSS可嵌入XML?xmlversion=1.0encoding=GB2312??xml-stylesheettype=text/css?studentxmlns:HTML=:stylename{color:blue}class{color:red}/HTML:style!--姓名--name张三/name!--班级--class09213班/class/student第1章Web应用开发简介前一页休息南京理工大学计算机学院131.2.4JavaScript与AjaxJavaScript简介JavaScript是由Netscape公司开发的一种客户端脚本语言,它允许在HTML基础上进行交互式Web网页的开发。JavaScript的出现使网页与用户之间实现了一种实时性的、动态的、交互性的关系,使网页包含更多的活跃元素。JavaScript很多情况下用在客户端数据校验方面,一定程度上减轻了服务器的负载量,为客户提供更流畅的浏览效果。语言特点在页面中直接使用:bodyscripttype=text/javascript!--document.write(你好,JavaScript);//JavaScript结束--/script/body引用外部文件:headtitle问候页面/titlescripttype=text/javascriptsrc=hello.js/script/head第1章Web应用开发简介前一页休息南京理工大学计算机学院141.2.4JavaScript与AjaxAjax简介Ajax可以解决传统的Web应用中页面刷新的问题。Ajax全称为“AsynchronousJavaScriptandXML”(异步JavaScript和XML),是指一种结合了XML以及JavaScript等编程技术,用于创建交互式网页应用的Web开发技术。语言特点包含的技术:XMLHttpRequest:是由微软开发的可以在不刷新页面的情况下直接进行脚本与服务器通信的技术。在Ajax中,XMLHttpRequest用于完成异步向服务器进行数据传输的功能。JavaScript:一种客户端脚本语言。在Ajax中,JavaScript起到了一个纽带的作用,将其它技术进行有机结合,同时其自身又发挥着客户端校验的作用。CSS:层叠样式表单。在Ajax中,CSS提供了从内容中分离应用样式和设计的机制。DOM:文档对象模型,它是一种与浏览器、平台、语言无关的接口,可以访问页面其他的标准组件。在Ajax中,DOM用于在不刷新页面的情况下对已载入页面进行动态更新,实现数据的动态显示和交互。第1章Web应用开发简介前一页休息南京理工大学计算机学院151.2.4JavaScript与AjaxAjax语言特点包含的技术:XML:可扩展标记语言,是当前处理结构化文档信息的有力工具。在Ajax中,XML用于处理数据交互格式。XHTML:XHTML称为可扩展超文本标识语言,它结合了部分XML的强大功能及大多数HTML的简单特性。在Ajax中,XHTML用于结合CSS实现页面的外观表示。XSLT:用于将XML文档转换为XHTML文档或其他XML文档的语言。在Ajax中,XSLT用于结合XML进行数据交换及相关操作。第1章Web应用开发简介前一页休息南京理工大学计算机学院161.3多种集成开发环境第1章Web应用开发简介前一页休息南京理工大学计算机学院171.3.1集成开发环境简介集成开发环境用途集成开发环境,英文名称为IntegratedDevelopmentEnvironment,简称为IDE,它是一种用于辅助开发人员开发应用程序的应用软件。开发Java应用常用的IDEIntelliJIDEA:IntelliJIDEA是JetBrains公司的产品,它是Java语言开发的集成环境,官方下载网址为。IntelliJIDEA具有的突出功能包括智能代码助手、代码自动提示、重构、J2EE支持、Ant、JUnit、CVS整合、代码审查等。JBuilder:JBuilder最初是由Borland公司开发的产品,目前已归Embarcadero公司所有,它是针对Java的开发工具,官方下载网址为。JBuilder具有专业化的图形调试介面,支持远程调试和多线程调试,它能够简化团队合作,适合企业的J2EE开