来看Java EE 5 - 壮大的功能、高临盆率和低庞大性
而学习JAVA我觉得最应该避免的就是:只学习,不思考,只记忆,不实践!简介
JavaEE手艺是Java言语平台的扩大,撑持开辟职员创立可伸缩的壮大的可移植企业使用程序。它为使用程序组件界说了四种容器:Web、EnterpriseJavaBean(EJB)、使用程序客户机和applet。一个使用服务器标准具体形貌了这些容器和它们必需撑持的JavaAPI,这促使JavaEE产物互相合作,同时包管切合这个标准的使用程序能够在服务器之间移植。
这个平台的最新版本JavaEE5已于2006年5月公布。JavaEE5次要存眷进步开辟职员的临盆率,它供应了更复杂的编程模子,而没有就义平台的任何功效。更复杂的开辟模子次要由两个机制供应——Java注解和更好的默许举动。次要的功效性改善包含改善了Web服务撑持和在平台中集成了JavaServerFaces(JSF)和JavaStandardTagLibrary(JSTL)。
本文先容JavaEE5中的特征,重点先容自上一个J2EE版本以来的变更。(超越本文局限的改善包含StAXAPI—一个用来剖析XML的API—和跨很多API的中小水平的改善。)我将周全会商四个特征种别:Web服务、Web使用程序、企业使用程序和办理和平安性。然后,为了不读者以为腻烦,我们会商一个利用JavaEE5特征的小使用程序,以此申明新的开辟模子怎样简化面向服务架构(SOA)Web使用程序的开辟。
本文假定读者熟习企业级软件体系,并但愿周全懂得JavaEE5的概略。懂得Java编程和J2EE关于了解特征的意义会有匡助,但不是必须的。对示例使用程序的会商触及一些手艺细节,有J2EE(最少是Java编程)背景大概对照简单了解。
Web服务手艺
在JavaEE5中引进了注解(annotation)特征,这简化了庞大Web服务端点和客户机的开辟,与之前的JavaEE版原形比,代码更少,进修历程更短了。注解(最早在JavaSE5中引进)是能够作为元数据增加到代码中的润色性代码。它们其实不间接影响程序的语义,可是编译器、开辟工具和运转时库能够经由过程处置它们天生分外的Java言语源文件、XML文档或其他工件和举动,这些对包括注解的程序起帮助感化。在本文前面,会看到怎样经由过程增加复杂的注解,将惯例的Java类转换为Web服务。
Web服务撑持方面的奔腾
JavaEE5中Web服务撑持的基本是JAX-WS2.0,它是一种替换JAX-RPC1.1的手艺。这两种手艺都撑持创立REST作风和基于SOAP的Web服务,而不用间接处置Web服务固有的XML处置和数据绑定细节。开辟职员能够持续利用JAX-RPC(这仍旧必要JavaEE5容器),可是激烈倡议迁徙到JAX-WS。刚入手下手进修JavaWeb服务的开辟职员能够跳过JAX-RPC,间接利用JAX-WS。它们都撑持SOAP1.1overHTTP1.1,以是完整兼容:JAX-WSWeb服务客户机能够会见JAX-RPCWeb服务端点,反之亦然。
与JAX-RPC比拟,JAX-WS有很多长处。JAX-WS:
撑持SOAP1.2尺度(和SOAP1.1)。
撑持XMLoverHTTP。假如乐意,能够不利用SOAP。
利用JavaArchitectureforXMLBinding(JAXB)作为数据映照模子。JAXB完整撑持XML形式,并且功能更好(更多信息见下文)。
为客户机和服务器引进了一个静态编程模子。客户机模子撑持面向动静体例和异步体例。
撑持MessageTransmissionOptimizationMechanism(MTOM),这是一个用于优化SOAP动静传输和格局的W3C倡议标准。
晋级了Webservicesinteroperability(WS-I)撑持。(它撑持BasicProfile1.1;JAX-WS只撑持BasicProfile1.0。)
晋级了SOAP附件撑持。(它撑持AttachmentsAPIforJava1.3:JAX-WS只撑持SAAJ1.2。)
JAX-WS中的wsimport工具主动地处置Web服务开辟的很多细节,并以跨平台体例集成到构建过程当中,这闪开发职员能够将注重力会合于完成或利用服务的使用程序逻辑。它天生各类工件,包含服务、服务端点接口(SEI)、异步呼应代码、基于WSDL毛病的非常和经由过程JAXB绑定到形式范例的Java类。
JAX-WS还可以进步Web服务的功能。在文章“ImplementingHighPerformanceWebServicesUsingJAX-WS2.0”中,对基于JAX-WS的Web服务虚现(利用了JavaEE5中的别的两个Web服务特征—JAXB和StAX)和基于J2EE1.4中的JAX-RPC的服务虚现做了功能对照。这项研讨发明在分歧负载下JAX-WS在各个功效范畴发生了40%到1000%的功能改善。
<p>
专门做了这个例子;而java的这个例子好像就是为了教学而写的,很多教学目的的例子是不考虑优化、性能的。 还好,SUN提供了Javabean可以把你的JSP中的 Java代码封装起来,便于调用也便于重用。 吧,现在很流行的Structs就是它的一种实现方式,不过Structs用起来实在是很繁,我们只要学习其精髓即可,我们完全可以设计自己的MVC结构。然后你再研究一下软件Refactoring (重构)和极限XP编程,相信你又会上一个台阶。 做完这些,你不如整理一下你的Java代码,把那些经典的程序和常见的应用整理出来,再精心打造一番,提高其重用性和可扩展性。你再找几个志同道合的朋友成立一个工作室吧 设计模式是高级程序员真正掌握面向对象核心思想的必修课。设计模式并不是一种具体"技术",它讲述的是思想,它不仅仅展示了接口或抽象类在实际案例中的灵活应用和智慧 多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java 1.5 版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。 Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading) 如果要向java web方向发展也要吧看看《Java web从入门到精通》学完再到《Struts2.0入门到精通》这样你差不多就把代码给学完了。有兴趣可以看一些设计模块和框架的包等等。 是一种使用者不需花费很多时间学习的语言 任职于太阳微系统的詹姆斯·高斯林等人于1990年代初开发Java语言的雏形,最初被命名为Oak,目标设置在家用电器等小型系统的程序语言 是一种使网页(Web Page)产生生动活泼画面的语言 吧,现在很流行的Structs就是它的一种实现方式,不过Structs用起来实在是很繁,我们只要学习其精髓即可,我们完全可以设计自己的MVC结构。然后你再研究一下软件Refactoring (重构)和极限XP编程,相信你又会上一个台阶。 做完这些,你不如整理一下你的Java代码,把那些经典的程序和常见的应用整理出来,再精心打造一番,提高其重用性和可扩展性。你再找几个志同道合的朋友成立一个工作室吧 吧,现在很流行的Structs就是它的一种实现方式,不过Structs用起来实在是很繁,我们只要学习其精髓即可,我们完全可以设计自己的MVC结构。然后你再研究一下软件Refactoring (重构)和极限XP编程,相信你又会上一个台阶。 做完这些,你不如整理一下你的Java代码,把那些经典的程序和常见的应用整理出来,再精心打造一番,提高其重用性和可扩展性。你再找几个志同道合的朋友成立一个工作室吧 http://www.jdon.com/去下载,或到同济技术论坛的服务器ftp://nro.shtdu.edu.cn去下,安装上有什么问题,可以到论坛上去提问。 多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java 1.5 版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。
页:
[1]