黑龙江大学计算机科学技术学院2006-2016J2EE教程第2页J2EE教程黑龙江大学计算机科学技术学院版权所有©2006-2016目录第一章J2EE基础(3学时)第二章HTML与JavaScript(5学时)第三章JSP(10学时)第四章JDBC(8学时)第五章Servlet(6学时)第六章Struts2(12学时)第七章Hibernate(12学时)第八章综合实例(8学时)课程总结第3页J2EE教程黑龙江大学计算机科学技术学院版权所有©2006-2016教材及参考书参考书:《JSP设计》(第二版,HansBergsten著,林琪等译,中国电力出版社,2004年)《JavaServlet和JSP经典实例》(BrucePerry著,朱涛江等译,中国电力出版社,2005年)《轻量级J2EE企业应用实践》(李刚著,电子工业出版社,2007年)《JSP程序设计教程》(郭珍,王国辉,人民邮电出版社)《TheJ2EETutorial》(Sun公司,2007年)第4页J2EE教程黑龙江大学计算机科学技术学院版权所有©2006-2016第一章J2EE基础主要内容(P4-P39,3学时)Internet简介Web与B/S结构J2EE概述J2EE基本概念J2EE应用服务器J2EE开发工具第5页J2EE教程黑龙江大学计算机科学技术学院版权所有©2006-20161.1Internet简介Internet的起源与发展四十年前,美国国防部的高级研究计划局(AdvancedResearchProjectAgency)建立了一个计算机间互连的ARPAnet网络。ARPAnet将所支持的12个实验室和大学连接起来,并为国防相关的研究人员提供通信(Email)、程序共享(FTP)以及远程访问(Telnet)等服务。但是该网络明显带有军事色彩,其它教育机构并不能访问该网络。1977年开始,ARPAnet开始TCP/IP协议的开发和应用。第6页J2EE教程黑龙江大学计算机科学技术学院版权所有©2006-20161.1Internet简介Internet的起源与发展1986年,美国国家科学基金会(NationalScienceFoundation,简称NSF)投资在美国的五所大学建立超级计算中心,并通过56Kbps的通信线路和TCP/IP协议连接形成NSFnet的雏形。NSFnet在绝大部分非军事领域网络中逐渐取代了ARPAnet,形成全球范围的计算机网络。1995年,NSFnet的一小部分重新成为学术网络,其余大部分成为Internet。Internet是由多级网络组成的网际网,即把很多网络连接在一起的超级网络。第7页J2EE教程黑龙江大学计算机科学技术学院版权所有©2006-20161.1Internet简介TCP/IP协议和IP地址通信协议是计算机之间交换信息的标准和约定。Internet是由许多小的网络构成的,在各个小网络内部使用不同的协议,正如不同的国家使用不同的语言。那如何使它们之间能进行信息交流呢?这就要靠网络上的世界语----TCP/IP协议。第8页J2EE教程黑龙江大学计算机科学技术学院版权所有©2006-20161.1Internet简介TCP/IP协议和IP地址接入Internet的任何一个计算机必须有唯一的地址,以便在每次通信过程中告知对方的IP地址。在TCP/IP协议中规定这个地址为32bit数字,并将其称为“IP地址”。IP地址通常写成4个8位数字,从而形成“XXX.XXX.XXX.XXX”格式的IP地址,其中每个XXX都在0-255之间。例如,某台计算机的IP地址为192.168.0.200。第9页J2EE教程黑龙江大学计算机科学技术学院版权所有©2006-20161.1Internet简介TCP/IP协议和IP地址由于TCP/IP协议如此重要,当前的计算机操作系统都提供对该协议的支持。也就是说,即便一台计算机没有连入Internet,它也可以拥有IP地址。为了使用方便,TCP/IP协议约定IP地址127.0.0.1为当前计算机的默认IP地址。通常的局域网(学校、企业、机关内部网络)都采用TCP/IP协议进行通信,从而保证网络上的各种应用软件都可以采用与Internet相同的模式。我们把这样的网络称为“Intranet”。第10页J2EE教程黑龙江大学计算机科学技术学院版权所有©2006-20161.1Internet简介域名与域名解析由于IP地址不容易记忆,人们为Internet/Intranet上的计算机提供另外一种地址-“域名”(DomainName)。域名格式为“主机名.域1.域2.….域n”,每个域是一定范围的计算机集合名称。例如,域名“”中hlju是较小范围的一个域,edu是稍大范围的一个域,cn是更大范围的域,该域名代表中国教育机构中hlju域的主机。域名服务器(DomainNameServer,简称DNS)是Internet/Intranet上的一种特殊计算机,它利用特殊软件和相关信息完成将域名转换为IP地址的工作。第11页J2EE教程黑龙江大学计算机科学技术学院版权所有©2006-20161.1Internet简介域名与域名解析1.向Internet发出域名解析请求2.找到DNS服务器3.找到IP地址,将其返回给请求者4.利用IP地址访问目的主机5.返回请求的资源客户机DNS服务器目的主机第12页J2EE教程黑龙江大学计算机科学技术学院版权所有©2006-20161.2Web与B/S结构Web最初的Internet应用基本上都是Email、FTP、Telnet、Usenet(电子公告板)。1989年,CERN(欧洲粒子物理研究所)提出了在Internet上交流工作文档的软件和协议,并将其称为“WorldWideWeb”(简称)。在Web中,文档以超文本的形式编写。超文本是一组包含了嵌入式链接的文本,通过这些链接,可以很方便地转移到其它文档。为了能够实现这种功能,在Web中提供了HTML(HyperTextMarkuplanguage,超文本标记语言)文档、HTTP协议、浏览器和Web服务器等概念。第13页J2EE教程黑龙江大学计算机科学技术学院版权所有©2006-20161.2Web与B/S结构WebWeb服务器浏览器HTML文档普通文本链接文本HTTP协议HTTP协议Web服务器HTML文档HTTP协议链接文本普通文本第14页J2EE教程黑龙江大学计算机科学技术学院版权所有©2006-20161.2Web与B/S结构B/S结构浏览器(Browser)是指用于查看文档内容的软件。开始阶段,Web文档包含的都是文字信息,直到1993年出现了Mosaic,Web文档才能够包含图片,从而推动了Web的全速发展。目前常用的浏览器包括IE、Firefox、Chrome、Opera等等。第15页J2EE教程黑龙江大学计算机科学技术学院版权所有©2006-20161.2Web与B/S结构B/S结构第16页J2EE教程黑龙江大学计算机科学技术学院版权所有©2006-20161.2Web与B/S结构B/S结构Web服务器是一些存储着用户需要浏览的文档的计算机。在Web服务器中需要安装特殊的服务软件-Web服务器(与计算机称谓相同),该软件被动地等待浏览器的请求,并将浏览器所需的资源发送给浏览器。我们把这种客户方运行Browser,服务器方运行Web服务器的软件结构称为“B/S结构”。常见的Web服务器包括Apache和IIS。除此以外还有一些能够运行Java程序的Web服务器,我们将会在以后逐渐认识它们。第17页J2EE教程黑龙江大学计算机科学技术学院版权所有©2006-20161.2Web与B/S结构B/S结构Web服务器软件以服务进程的形式运行,并可以接受通过某个端口(Port)传入的访问请求。端口是为计算机中众多网络应用软件配置的编号,访问请求通过该编号将请求信息准确无误地发送到对应软件中。端口号范围为0-65535,其中1-1024一般留给标准软件,其余部分可以任意使用,只要不重复使用即可。客户端发出访问某个文档的请求时,会通过网络连接将请求发送到服务器端的对应端口上,从而接受web服务器返回的对应资源,最后关闭连接。第18页J2EE教程黑龙江大学计算机科学技术学院版权所有©2006-20161.2Web与B/S结构B/S结构在客户端和服务器端之间用于传送资源的协议称为“HTTP”(超文本传输)协议。通过HTTP协议可以访问服务器上的各种资源,包括HTML网页、图片、文件以及程序。服务器通过指定端口接受HTTP请求,并将该请求转换为一个文件名称。如果该文件是服务器上的一个静态文件(如HTML文件、图片等等),则直接返回文件内容;如果该文件是一种特殊程序(如asp、php、jsp、cgi等等),则先运行该程序,并把运行结果发送给客户端。第19页J2EE教程黑龙江大学计算机科学技术学院版权所有©2006-20161.2Web与B/S结构B/S结构用于访问服务器资源的HTTP请求以URL(UniformResourcesLocator)形式发送到服务器。通常的URL格式为“协议://域名/文档路径”:协议包括http、file、ftp、mailto。在Web环境最常用的协议名称自然是http。域名部分可以是一个普通域名(如),也可以是IP地址。有时为了能够访问特殊端口号的服务,可以指定对应端口号,如“127.0.0.1:8080”。类似于文件系统中的路径,文档路径通常由目录名称和文件名称组成,如“/test/welcome.html”。如果没有指定文档路径,服务器会查找一个默认的文件(如index.html),并把该文件返回给客户端。第20页J2EE教程黑龙江大学计算机科学技术学院版权所有©2006-20161.3J2EE概述J2EE的含义简单来说,J2EE(Java2EnterpriseEdition)是SUN公司提出的开发基于Web的应用软件的技术、规范、各种服务的框架。严格意义上讲,J2EE是一套用于实现分布式、企业(Enterprise)计算的API、服务和协议的集合。其目标是为开发人员提供支撑工具,以便降低开发复杂性,缩短开发周期,提高系统性能。J2EE适合开发大规模的业务系统。这种级别的系统分布和运行在多台计算机上,互相之间的交互异常频繁。J2EE平台提供了实现此能力的技术、规范和标准服务。第21页J2EE教程黑龙江大学计算机科学技术学院版权所有©2006-20161.3J2EE概述J2EE与J2SE的关系J2SE和最新的JavaSDK5、JavaSDK6是J2EE的基础和核心。J2EE是1998年确定的Java企业版标准。它为分布式的企业级应用软件开发提供了相关标准和技术框架。但是J2EE过于复杂,不利于广泛应用。2006年推出的JavaEE5简化了Java企业级应用程序的开发方式。第22页J2EE教程黑龙江大学计算机科学技术学院版权所有©2006-20161.3J2EE概述J2EE包含的主要技术JSP(JavaServerPages):JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端所请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。Servlet:Servlet是一种特殊的Java程序,当被浏览器访问时开始执行并生成HTML响应页面。JDBC(JavaDatabaseConnectivity):JDBC为访问不同的数据库提供了一种统一的途径。第23页J2EE教程黑龙江大学计算机科学技术学院版权所有©2006-20161.3J2EE概述J2EE包含的主要技术EJB(EnterpriseJavaBean):J2EE技术之所以赢得广泛关注的重要原因就是EJB。它们提供了开发和实施分布式程序的整套框架,由此显著地简化了具有可伸缩性和高度复杂性的企业级应用的开发。EJ