J2EE面试重点:Hashtable、HashMap与Hashtable对比、Web容器解析
需积分: 9 103 浏览量
更新于2024-07-27
收藏 134KB DOC 举报
在Java开发领域,尤其是针对J2EE平台的面试中,了解核心概念和技术是至关重要的。以下是一些关键知识点的详细说明:
1. **Hashtable原理与HashMap与Hashtable的区别**
- `Hashtable` 是Java中的一个同步(synchronized)的键值对存储结构,它基于散列表(Hash Table)实现。它通过散列函数H(k)来确定对象的存储位置,保证快速查找。`Hashtable` 不允许null作为键或值。
- `HashMap` 也是基于散列表实现,但它是非同步的,并且允许null键和null值。它的性能通常优于`Hashtable`,因为没有同步开销,但在多线程环境下需要手动同步。
- 主要区别在于:同步性、是否允许null以及`Hashtable`不支持泛型,而`HashMap`支持。
2. **抽象类与接口的区别**
- 抽象类是一个不能实例化的类,它可以包含抽象方法(无实现的方法)和具体方法。一个类可以继承一个抽象类,但Java只支持单继承。
- 接口是一种完全抽象的类型,只能包含常量和抽象方法。一个类可以实现多个接口,实现多继承的效果。
- 接口字段默认为`public static final`,而抽象类字段默认为包级私有(friendly)。
3. **forward与redirect**
- `forward()` 是内部转发,发生在服务器端,请求不会到达浏览器,因此第一次请求的所有属性和参数都能在第二次请求中访问。
- `redirect()` 是重定向,实际上是两次HTTP请求,浏览器会发送新的请求,导致所有属性和参数丢失。
4. **Web容器**
Web容器(例如Tomcat、Jetty)是运行Java Web应用的环境,它遵循J2EE规范,负责管理Web组件的生命周期,提供并发性、安全性等服务,支持Servlet和JSP等技术。
5. **J2EE相关名词解释**
- **JNDI**:Java Naming and Directory Interface,用于分布式环境中的对象查找和绑定,比如数据库连接池的配置信息。
- **JMS**:Java Message Service,用于异步通信,支持点对点和发布/订阅两种模式。
- **JTA**:Java Transaction API,提供了分布式事务处理能力,确保跨多个资源的事务一致性。
- **JAF**:Java Authentication and Authorization Framework,Java的安全框架,用于实现身份验证和授权策略。
- **RMI**:Remote Method Invocation,允许在不同的Java虚拟机之间调用方法,实现分布式计算。
6. **EJB(Enterprise JavaBeans)**
EJB是J2EE中的核心组件,用于构建可部署的分布式企业级应用。
- **SessionBean** 代表业务逻辑,分为Stateful(有状态)和Stateless(无状态)。Stateful Session Bean能记住与客户端的交互状态,而Stateless不保留状态,每次调用独立。
- **EntityBean** 通常映射到数据库中的持久化实体,分为Bean-managed Persistence (BMP) 和 Container-managed Persistence (CMP)。
- EJB还包括Message-driven Bean,用于处理JMS消息。
这些知识点涵盖了J2EE面试中常见的主题,理解并掌握它们对于Java开发者来说至关重要,特别是对准备从事J2EE应用开发的人来说。
点击了解资源详情
点击了解资源详情
点击了解资源详情
2019-03-19 上传
2018-11-29 上传
143 浏览量
2013-11-19 上传
2012-03-26 上传
lifesreason
- 粉丝: 0
- 资源: 24
最新资源
- MyEclipse_Hibernate_Quickstart
- 温度智能调节控制仪器源程序.doc
- Groovy经典入门.pdf
- Manning.ASP.NET.AJAX.in.Action
- SQL语句教程的PDF格式文档
- MyEclipse_EJB_Project_Quickstart
- MyEclipse_Database_Explorer_Quickstart
- PERL编程24学时教程\013.PDF
- PERL编程24学时教程\012.PDF
- MyEclipse_Bugzilla_Quickstart
- PERL编程24学时教程\011.PDF
- PERL编程24学时教程\010.PDF
- PERL编程24学时教程\009.PDF
- PERL编程24学时教程\008.PDF
- PERL编程24学时教程\007.PDF
- MyEclipse_Application_Server_Quickstart