毕业时富士通的面试失败,让我认识到自己从学习方向上的一些不足,以及把一些学习过程中需要理解的东西搁置一旁。作为应届毕业,找工作压力真的很大。学校 java课程学习 ,j2ee的学习等、似乎一些要理解的东西都没有很好的去认真面对,尽管每次笔试都能过,但是自己的学习似乎还存在一些漏洞。学习 java前对“面向对象”的认识等,都应该有个很清晰的概念和大体认识。就好比自己要盖一座房子,最起码我们在盖之前应该对房子的建筑应该有个设计图纸,对房子的建设过程应该有个整体的了解吧。JSP/servlet、Jdbc、JavaBean、Struts等J2ee知识学习了不少,但是当被问及"对 J2EE规范的认识以及有那些具体组件"时,自己似乎找不到应该怎么去回答。
每个程序员在成长的过程中,心中都要有个方向,心怀一棵大树,然后从根基一点一点成长起来,最后枝繁叶茂。而不能只看着眼前的一些些成果,每天都头顶着天,那样会成长很慢,而且很有可能成“畸形”。
回来后找了些资料,补充学习了下J2EE有必要理解的东西,似乎以往的思路更清晰些了。
一、J2EE提出的背景
1、 企业级应用框架的需求
在许多企业级应用中,例如数据库连接、邮件服务、事务处理等都是一些通用企业需求模块,这些模块如果每次再开发中都由开发人员来完成的话,将会造成开发周期长和代码可靠性差等问题。于是许多大公司开发了自己的通用模块服务。这些服务性的软件系列同陈为中间件。
2、 为了通用必须要提出规范,不然无法达到通用
在上面的需求基础之上,许多公司都开发了自己的中间件,但其与用户的沟通都各有不同,从而导致用户无法将各个公司不同的中间件组装在一块为自己服务。从而产生瓶颈。于是提出标准的概念。其实J2EE就是基于JAVA技术的一系列标准。
注:中间件的解释 中间件处在操作系统和更高一级应用程序之间。他充当的功能是:将应用程序运行环境与操作系统隔离,从而实现应用程序开发者不必为更多系统问题忧虑,而直接关注该应用程序在解决问题上的能力 。我们后面说到的容器的概念就是中间件的一种。
二、J2EE的优越性
1、 基于JAVA 技术,平台无关性表现突出
2、 开放的标准,许多大型公司已经实现了对该规范支持的应用服务器。如BEA ,IBM,ORACLE等。
3、 提供相当专业的通用软件服务。
4、 提供了一个优秀的企业级应用程序框架,对快速高质量开发打下基础
三 、 J2EE规范 (Java 2 Platform,Enterprise Edition)是SUN公司定义的一个开发分布式企业级应用的规范。它提供了一个多层次的分布式应用模型和一系列开发技术规范。多层次分布式应用模型是指根据功能把应用逻辑分成多个层次,每个层次支持相应的服务器和组件,组件在分布式服务器的组件容器中运行(如Servlet组件在Servlet容器上运行,EJB组件在EJB容器上运行),容器间通过相关的协议进行通讯,实现组件间的相互调用。遵从这个规范的开发者将得到行业的广泛支持,使企业级应用的开发变得简单、快速。
四、J2EE组件层次
J2EE组件和层次如图1-1所示。
图1-1 J2EE组件层次(略)
J2EE规范定义了如下组件:
★客户端组件
★Web组件
★EJB组件
J2EE规范定义了以下四个层次。
1.客户端层(Client Tier)
客户端层用来实现企业级应用系统的操作界面和显示层。另外,某些客户端程序也可实现业务逻辑。可分为基于Web的和非基于Web的客户端两种情况。基于 Web的情况下主要作为企业Web服务器的浏览器。非基于Web的客户层则是独立的应用程序,可以完成瘦客户机无法完成的任务。
2.Web层
为企业提供Web服务。包括企业信息发布等。Web层由Web组件组成。J2EE Web组件包括JSP页面和Servlets。Web层也可以包括一些JavaBeans。Web层主要用来处理客户请求,调用相应的逻辑块,并把结果以动态网页的形式返回到客户端。
3.业务层(Business Tier)
业务层也叫EJB层或应用层,它由EJB服务器和EJB组件组成。一般情况下许多开发商把Web服务器和EJB服务器产品结合在一起发布,称为应用服务器。 EJB层用来实现企业级信息系统的业务逻辑。这是企业级应用的核心,由运行在业务层中的EJB来处理。一个Bean从客户端接收数据、处理,然后把数据送到企业信息系统层存储起来。同样,一个Bean也可以从企业信息系统取出数据,发送到客户端程序。业务层中的EJB要运行在容器中,容器解决了底层的问题,如事务处理、生命周期、状态管理、多线程安全管理、资源池等。
4.企业信息系统层(Enterprise Information System tier)
处理企业系统软件,包括企业基础系统、数据库系统及其他遗留的系统。J2EE将来的版本支持连接架构(Connector Architecture)。它是连接J2EE平台和企业信息系统层的标准API。
业务层和Web层共同组成了三层J2EE应用的中间层,其他两层是客户端层和存储层或企业信息系统层。
5.J2EE的分布应用技术
为实现企业级分布式应用,J2EE定义了丰富的技术标准,符合这些标准的开发工具和API为开发企业级应用提供支持。这些技术涵盖数据库访问、分布式通信、安全等。为分布式应用提供支持的多方面。
(1)组件技术
J2EE的核心思想是基于组件/容器的应用。每个组件提供了方法、属性、事件的接口。组件可以由多种语言开发。组件是可以重用的、共享的、分布的。
(2)Servlets和JSP
Servlets用来生成动态页面或接收用户请求产生相应操作(调用EJB)。JSP基于文本。通过容器产生相应的Servlets,使内容和显示分开。J2EE中提供了Servlet API,用于创建Servlets。
(3)EJB技术
EJB规范提供了一种开发和部署服务器端组件的方法。每个EJB是按功能逻辑划分的,开发时不必关注系统底层细节问题,只关注具体的事务分析。EJB开发完毕后,按规范部署在EJB容器,完成相应的事务功能。EJB支持分布式计算。真正体现了企业级的应用。
(4)数据库访问
无论是传统的企业信息系统还是将来的企业信息系统,数据库都占有重要的地位。开发分布式系统要求数据库访问具有良好的灵活性和扩展性。 JDBC(JavaDatabase Connectivity)是一个独立于特定的数据库管理系统的开发接口。它提供一个通用的访问SQL数据库和存储结构的机制,支持基本SQL功能的一个通用底层的应用程序编程接口。它在不同的数据库界面上提供了一个统一的用户界面。提供了多种多样的数据库连接方式。J2EE中提供了JDBC API使多种数据库操作简单、可行。
(5)分布式通信技术
分布式通信技术是分布式企业系统的核心技术。J2EE框架为Web应用和EJB应用提供多种通信模式。
为了使运行于某一机器上的对象调用另一台机器的对象,J2EE实现了如下通信方式:
Java RMI(Remote Method Invoke):远程方法调用。Java RMI实现Java对象间的远程通信。服务器用注册器把一个名字和远程对象绑在一起,客户机通过名字从服务器注册器上查找远程对象,找到后下载远程对象的本地代理,调用远程对象的方法。
Java IDL(Java Interface Defilation Language):接口定义语言。可以实现Java对象的符合CORBA规范的远程对象通信。
JNDI(Java Naming and Directory Interface):Java命名和目录接口。JNDI为分布式系统访问远程对象提供了一个标准的命名接口。EJB主接口对象、数据源、消息服务器等都可以用JDNI树的形式注册到名称服务器中,调用它们的对象通过符合JDNI的程序接口在JNDI名称服务器中查找指定名称的远程对象。
JMS(Java Message Service):Java消息服务。为开发消息中间件应用程序定义了一套规范。Java客户端和Java中间层访问消息系统只要实现JMS定义的简单的接口,就可以实现复杂的应用,而不必去关注低级的技术细节。
分享到:
- 2008-08-07 11:18
- 浏览 1012
- 评论(0)
- 论坛回复 / 浏览 (0 / 2003)
- 查看更多
相关推荐
### 学习J2EE:深入理解J2EE1.4平台的新特性和技术升级 在IT行业,尤其是企业级应用开发领域,J2EE(Java 2 Platform, Enterprise Edition)是一个不可忽视的重要平台。随着互联网的发展和技术的进步,J2EE也在不断...
### J2EE学习规划与Java技能提升路径 在IT领域,Java作为一种广泛应用的编程语言,其生态系统的丰富性尤其体现在企业级应用上,而J2EE(Java Platform, Enterprise Edition)便是这一领域的核心标准。对于希望深入...
总之,学习J2EE需要逐步积累,从基础知识到高级框架,从理论到实践,通过阅读书籍、编写代码和参与项目,不断提升自己的能力。记住,学习的深度和广度都非常重要,不断关注行业动态,适应技术的更新换代。
对于初学者来说,掌握J2EE的学习路径至关重要,这将帮助他们系统地构建知识体系,逐步成长为专业的Java EE开发者。以下是一个详细且全面的J2EE学习路径路线图: 1. **基础篇** - **Java语言基础**:首先,你需要...
- **准备阶段**:介绍了开始学习J2EE之前需要了解的基本概念和技术栈,如开发环境搭建等。 - **第一章:总括**: - **分布式多层应用程序**:解释了J2EE如何支持分布式系统中的多层架构设计。 - **J2EE容器**:...
学习J2EE还需要掌握MVC(Model-View-Controller)设计模式,这是一种常见的Web应用架构模式,用于分离业务逻辑、视图展示和用户交互。了解如何使用Struts、Spring MVC或JSF等框架实现MVC模式也很关键。 此外,容器...
在学习J2EE时,实践同样重要。通过实际编写Servlet、JSP和EJB,模拟企业级项目,可以更好地理解和掌握这些概念。同时,阅读相关书籍、参加在线课程、参与开源项目,都是提升J2EE技能的有效途径。J2EE学习资料提供的...
学习J2EE前,建议先掌握J2SE的基础知识,包括Java语言基础、面向对象编程、异常处理等。J2SE是J2EE的基础,熟悉其核心概念和技术,有助于更好地理解J2EE的高级特性。 #### 工具选择与环境搭建 IDE(Integrated ...
2014年的J2EE学习路线图对于当时的开发者来说是一份极具指导意义的资源,它清晰地规划了学习J2EE技术栈的路径,帮助初学者系统地掌握各项关键技术。以下是对这个学习路线图的详细解析: ### 1. 基础篇 首先,你需要...
最后,开发J2EE应用时,往往需要使用IDE(集成开发环境),如Eclipse或NetBeans,它们提供了便捷的工具来创建、调试和部署J2EE项目。你将学习如何使用这些工具进行开发,以及如何使用Maven或Gradle等构建工具来管理...
在实际项目中,J2EE开发人员需要熟悉IDE(集成开发环境),如Eclipse或IntelliJ IDEA,以及版本控制工具,如Git。同时,理解数据库管理系统,如MySQL、Oracle或SQL Server,以及如何编写SQL语句也是必要的。测试和...
【标题】"myeclipse学习j2ee struts hibernate" 涉及到的是一个经典的Java企业级应用开发框架组合,主要包括MyEclipse作为开发工具,以及J2EE(Java 2 Platform, Enterprise Edition)作为后端开发平台,Struts作为...
学习J2EE是一个长期且系统的过程,需要耐心和恒心。从Java SE的基础知识出发,逐步掌握IDE的使用,深入理解服务器配置,熟练运用J2EE API,不断实践并关注技术前沿,最终才能在J2EE的道路上越走越远,成为一名合格的...
学习J2EE前,需要具备一定的Java基础知识,包括Java语法、面向对象编程思想等。此外,了解一些基本的数据结构和算法也是非常有益的。 #### 3. 技术栈梳理 J2EE技术栈非常庞大,涵盖了服务器端、客户端以及中间件等...
JDBC(Java Database Connectivity)作为Java访问数据库的标准API,是所有学习J2EE的人都需要掌握的一项重要技能。下面介绍几个与JDBC相关的开源数据库项目: 1. **Hypersonic SQL** - **简介**:一款流行的纯...
在讨论架构学习前,我们首先需要了解J2EE平台的基本概念,如Java 2 Platform、Enterprise Edition、信信息息、孤岛问问题题等。这些概念都是J2EE平台多层体系架构的基础。 在多层体系架构中,每个层次都有其特定的...
《学习J2EE的一本很好的参考书》是Sun公司开发人员倾力编著的经典之作,其英文原版深受全球Java开发者喜爱,现已被翻译为中文,使得更多的中国开发者能够便捷地学习和理解J2EE技术。这本书对于那些渴望深入了解企业...
学习J2EE框架不仅需要理解它们各自的功能,还要掌握如何在实际项目中合理选择和整合这些技术。这包括了解如何配置和使用框架,以及如何处理它们之间的协作问题,如异常处理、事务管理等。此外,对于现代开发环境,还...
这份"J2EE试题汇总"可能涵盖了上述各个组件的概念、配置、编程模型、设计模式、最佳实践等方面的问题,通过解答这些题目,学习者能够深入了解J2EE体系,掌握其关键技术和实际应用。对于准备J2EE相关考试或者提升工作...