发布时间 : 星期四 文章基于java的web服务器毕业论文更新完毕开始阅读826f39394a35eefdc8d376eeaeaad1f34693118a
为是Java平台和编程语言近10年来最重大的升级。
现今Java联盟成员公司超过了400个,其中包括 Oracle、SAP、Sony、Motorola、Nokia、HP和Philips等。Java联盟的Java开发者超过300万。JAVA下载量超过100万,许可证接收方达35个。J2ME手机超过1 500万部,应用达5 000多个。 1.3.2 Java的特点
Java语言是一种优秀的编程语言。它最大的优点就是与平台无关,在Windo
ws 2000、Windows XP、Solaris、Linux、Mac OS及其他平台上,都可以使用相同的代码。“一次编写,到处运行”的特点,使得系统的移植、平台的迁移变得十分容易。
Java语言的设计者借鉴了C++的设计,Java语言是完全面向对象的语言,而C++至多只能算准“面向对象”的语言。Java语言的语法结构与C++语言的语法结构十分相似,这使得C++程序员学习Java语言相当容易。当然,如果仅仅是对C++改头换面,那么就不会有今天Java热闹的场面了,但这种借鉴是取其精华、去其糟粕的“拿来主义”的借鉴。Java语言提供的许多有用的新特性,使得Java语言比C++语言更易使用且不容易出错。简单地说,Java具有以下的特性:简洁性、面向对象、分布式运算、健壮性、安全性,跨平台、可移植。 1.3.3 JAVA技术
为了适应多层分布式体系结构的发展,人们相继开发了很多应用服务器产品。但不幸的是,大多数应用服务器还没有一个明确统一的标准,各个应用服务器都是按照自己的模式来提供服务。这就导致了开发人员不能够将为一种应用服务器开发的应用程序组件安全可靠地移植到另外一种应用服务器中。
基于上述原因,业界迫切需要一个服务器端组件体系机构的统一标准。这个统一标准需要明确定义出应用程序组件所必须遵循的统一的接口,让组件不再只能面向一种特定的应用服务器,而是能够在遵循相同标准的不同的应用服务器间安全可靠地移植。组件供应商因此不用再顾虑他们提供的组件与服务器的兼容性
问题以及诸如运行时所需要的安全、事务等服务和支持,从而可以专注于开发具体业务逻辑问题的解决方案。
正是基于这样的需求,JAVA应运而生。JAVA是一种利用Java2平台来简化诸多与多级企业解决方案的开发、部署和管理相关的复杂问题的体系结构。JAVA提供了多层分布式的应用系统模型、重用组件的能力、统一的安全模型和灵活的事务控制。基于组件的JAVA企业应用系统具有平台独立性,所以不受任何软件产品和任何软件厂商应用程序接口(Application Program Interface,API)的约束。JAVA具有如下一系列明显的优点:
1.JAVA是一个分布式应用系统的平台,几乎包括了企业级应用系统开发所需要的各种技术;
2. Java使得企业级应用真正实现“一次开发,到处运行”;
3.由于JAVA是一个规范,任何遵循该规范开发的应用程序组件都能够在实现了该规范的应用服务器上方便的移植并得到重用;
4.JAVA具有开放性和统一性,用户不必再受具体软硬件体系结构的约束; 5.JAVA提供了基于组件的开发技术,使得企业级应用程序的开发更加容易。 基于Java和Web的企业级分布式应用开发的标准,目前大多数主流应用服务器都已经支持JAVA。JAVA包含多项核心技术。
1.企业JavaBeans(Enterprise Java Beans,EJB)
EJB是JAVA中最重要、最核心的部分,它是一种服务器端的组件模型。一个EJB是一个运行在应用服务器端的非可视化的软件组件。EJB提供了一个框架来开发和实施分布式业务逻辑,简化了中间层的开发,它通过提供对中间层服务的支持,如数据库连接、事务、安全等,显著地简化了具有可伸缩性和高度复杂性的企业级应用的开发。
EJB规范定义了四种基本的Bean类型。
(1)无状态会话Bean(Stateless session bean):它提供某种单一的服务,不保存与特定客户的对话状态,在服务器发生故障时无法继续存在,其生命周期相对较短。
(2)有状态会话Bean(Stateful session bean):它提供了一种保持会话状态的服务,每个实例都与特定的客户机相关联,且只用于一个单一的线程,在与客户
机的方法调用之间维持对话状态。有状态会话Bean在服务器发生故障时无法继续生存,生命周期相对较短。
(3)实体Bean(Entity bean):它代表业务上的实体,包含与数据相关的逻辑。实体Bean一般与数据库形成一种对象/关系映射,一个实体Bean可以代表一个数据库中存储的对象。他们能够通过一个主关键字来识别并可以被不同的客户端所共享。EJB容器负责管理这些对象的持久性。实体Bean在服务器发生故障后能继续存在。
(4)消息驱动Bean(Message-Driver bean):它是EJB2.0新引入的一种Bean类型,用来监听消息的对象。消息驱动Bean在接收到Java消息服务(Java Message Service,JMS)的消息后执行,它们是事务可知的和无状态的,一般用来执行一些异步的方法调用。
2.Servlet
Servlet是一种独立于平台和协议的服务器端Java应用程序,用来拓展基于请求响应模式的服务器端的能力。Servlet位于Web服务器端,由Web服务器动态加载和卸载。Servlet具有多线程、持久性、灵活性及易于访问其它网络资源等特点,为创建基于Web的应用程序提供了基于组件的、平台独立性的方法。
3.Java服务器端页面(Java Server Pages,JSP)
JSP是Sun公司提出的一种基于Java的服务器端动态页面技术,是Servlet技术的扩展。与ASP相比,JSP更具有平台独立性。JSP页面由HTML代码和嵌入其中的Java代码以及JSP标记所组成。服务器在页面被客户端请求以后对这些Java代码和标记进行处理,然后将生成的HTML页面返回给客户端的浏览器。
4.Java数据库连接(Java Database Connectivity,JDBC)
JDBC API是一个标准的数据库访问接口,以一种统一的方式来对各种各样的关系数据库进行存取。与ODBC一样,JDBC为开发人员隐藏了不同数据库的不同特性。
另外,由于JDBC建立在Java的基础上,因此还提供了数据库存取的平台独立性。
5.Java事务API(Java Transaction API,JTA)和Java事务服务(JavaTrans
action Service,JTS)
事务处理是企业计算中最主要的内容之一。JTA和JTS为JAVA平台提供了分布式事务服务。一个分布式的事务涉及一个事务管理器和一个或者多个资源管理器。一个资源管理器是任何类型的持久性的数据存储。事务管理器负责协调所有事务参与者之间的通信。JTA事务比JDBC事务功能更强,JDBC事务局限于一个数据库连接,而JTA事务可以有多个参与者。
6.Java名字和目录接口(Java Naming and Directory Interface,JNDI) JNDI API被用于执行名字和目录服务。由于JAVA应用程序组件一般分布在不同的机器上,所以需要一种机制以便于组件客户使用者查找和引用组件及资源。在JAVA体系中,使用JNDI定位各种对象,这些对象包括EJB、JDBC数据源及消息连接等。JNDI为企业应用中的多种命名和目录服务提供统一接口,使应用程序组件可以统一访问这些命名和目录服务。
7.JMS
JMS被用来支持开发面向消息的分布式计算系统,它提供创建、发送、接收、 读取消息的服务。JMS的目的是提供给消息系统中的客户一个固定的接口,而且与底层的消息提供者无关。它提供了通用的消息模型以支持不同的异步和同步通讯机制,按处理机制的不同,可分为发布/订阅(PUB/SUB)模型和点到点(P2P)排队模型。