理解J2EE核心概念:JNDI、JMS、JTA、JAF与RMI

需积分: 9 0 下载量 137 浏览量 更新于2024-09-16 5 收藏 70KB DOC 举报
本文主要涵盖了Java面试中涉及到的J2EE相关名词解释,以及一些常见的面试问题,包括设计模式的理解和应用。以下是对这些知识点的详细阐述: 1. JNDI (Java Naming and Directory Interface): JNDI是Java平台提供的一种服务,它允许应用程序通过统一的接口来查找和管理分布式环境中的资源。JNDI提供了一个目录系统,使得应用程序能够存储和检索数据,例如数据库连接池、邮件服务器配置等,提高了应用的可移植性和可管理性。 2. JMS (Java Message Service): JMS是Java平台的标准接口,用于在分布式环境中实现应用程序之间的异步通信。它可以支持两种模式:点对点(Point-to-Point)和发布/订阅(Publish/Subscribe)。点对点模式中,消息从一个生产者传递到一个消费者;而在发布/订阅模式下,消息可以被多个订阅者接收。 3. JTA (Java Transaction API): JTA是Java平台的一部分,提供了分布式事务处理能力。通过JTA,应用程序可以透明地管理跨越多个数据源(如数据库、消息队列等)的事务,确保ACID属性(原子性、一致性、隔离性和持久性)得以实现。 4. JAF (Java Authentication Framework): JAF是Java安全框架的一部分,它提供了一种标准的方式来实现和集成安全认证机制。开发者可以通过定制和部署策略来创建符合特定需求的安全控制策略,比如用户身份验证、权限管理等。 5. RMI (Remote Method Invocation): RMI是Java中的一种机制,允许一个Java对象调用远程计算机上的另一个Java对象的方法,实现了分布式计算。RMI简化了跨网络的对象交互,使得分布式系统开发更为简便。 面试问题解答: 88. CORBA (Common Object Request Broker Architecture): CORBA是一种标准,用于实现不同系统间的对象间通信。它包含接口定义语言(IDL)、语言绑定和通信协议,使得不同编程语言、不同操作系统之间的对象能够相互操作。CORBA的主要目的是促进分布式计算环境中的互操作性。 89. J2EE中的常用设计模式: - Session Façade Pattern:将复杂的业务逻辑封装在SessionBean中,对外提供简洁的接口。 - Message Façade Pattern:通过消息Bean实现异步调用,提高系统响应速度。 - EJB Command Pattern:使用命令模式的JavaBeans代替SessionBean,减轻EJB的重量级特性。 - Data Transfer Object Factory:使用DTOFactory简化EntityBean的数据转换。 - Generic Attribute Access:通过统一的接口访问EntityBean的数据,减少重复代码。 - Business Interface:业务接口使得远程和本地调用具有相同的行为,保证业务逻辑一致性。 90. WebLogic中开发MDB (Message-Driven Bean) 的persistent与non-persistent区别: - persistent MDB:保证消息的可靠传递,即使EJB容器故障,JMS服务器仍会保留消息直到MDB恢复。 - non-persistent MDB:非持久性消息,一旦EJB容器出现问题,消息可能丢失。 91. Servlet执行时实现的关键方法: - init(ServletConfig config):初始化Servlet,加载配置信息。 - getServletConfig():获取Servlet的配置信息。 - getServletInfo():返回Servlet的描述信息。 - service(ServletRequest request, ServletResponse response):处理客户端请求。 - destroy():Servlet生命周期结束时调用,用于清理资源。 92. J2EE常用的设计模式:除了上述提到的,还有如Singleton(单例模式)、Factory(工厂模式)、Decorator(装饰器模式)、Adapter(适配器模式)等,这些模式在构建J2EE应用时能提高代码复用性、可扩展性和可维护性。良好的设计模式运用对于大型、复杂的J2EE项目至关重要,因为它直接影响系统的性能、扩展性、可维护性以及开发效率。