下面列出了最常见的J2EE面试问题和答案。
1)你对J2EE有什么了解?
J2EE代表Java 2 Enterprise Edition。 J2EE的功能正在开发和部署基于Web的多层企业应用程序。 J2EE平台是一组服务, 应用程序编程接口(API)和协议的组合。 J2EE平台增加了在企业级别提供完整, 稳定, 安全和快速的Java平台所需的功能。
2)J2EE模块是什么意思?
J2EE模块是一个软件单元, 由一个或多个用于同一容器类型的J2EE组件以及一个该类型的部署描述符组成。可以轻松地将模块部署或组装到J2EE应用程序中。
3)J2EE模块有四种类型?
J2EE定义了四种类型的模块:
- 应用程序客户端模块
- WEB模块
- 企业JavaBeans模块
- 资源适配器模块
4)应用程序客户端模块包含什么?
应用程序客户端模块包含以下内容:
- 类文件
- 客户端部署描述符
它打包为具有.jar扩展名的JAR文件。
5)Web模块包含什么?
Web模块包含以下内容:
- JSP(Java服务器页面)文件
- Servlet的类文件
- Web部署描述符
- GIF(图形交换格式)和HTML(超文本标记语言)文件
这些模块打包为具有.war(Web存档)扩展名的JAR文件。
6)Enterprise JavaBeans模块包含什么?
Enterprise JavaBeans(EJB)模块包含以下内容:
- 企业bean的类文件
- EJB部署描述符
这些模块打包为扩展名为.jar的JAR文件。
7)资源适配模块包含什么?
资源适配器模块包含以下内容:
- Java接口
- 类
- 本机库
- 其他文件
- 资源适配器部署描述符
这些模块打包为具有.rar(资源适配器档案)扩展名的JAR文件。
8)J2EE应用程序的主要组件是什么?
J2EE组件及其相关的类和文件被组装到J2EE应用程序中。它还可以与其他组件通信。 J2EE定义了以下主要组件:
- 应用程序客户端组件。
- Java Servlet和JavaServer Pages技术组件。
- 业务组件(Enterprise JavaBeans)。
- 资源适配器组件。
9)什么被视为网络组件?
Java Servlet和Java Server Pages技术组件被视为Web组件。 Servlet基于Java编程语言, 可动态接收请求并生成响应。 Java Server页面作为servlet执行, 并允许使用更自然的方法来创建静态内容。
10)J2EE客户端的类型是什么?
- 小程序
- 应用客户
- 启用Java Web Start的客户端
- 无线客户端
11)你对小程序一词的理解是什么?
小程序是通常在Web浏览器中执行的J2EE组件。它也可以在支持applet编程模型的各种其他应用程序或设备中执行。
12)什么是容器?
容器是系统级实体的运行时支持。容器为组件提供了诸如生命周期管理, 安全性, 部署和线程化等功能。
13)什么是”小程序容器”?
提供对applet编程模型的支持的容器称为” applet容器”。
14)瘦客户机你了解什么?
瘦客户端是应用程序的轻量级接口, 不支持查询数据库, 执行复杂的业务规则或连接到旧版应用程序等操作。
15)什么是JavaServer Faces(JSF)?
JavaServer Faces是用于基于Java的Web应用程序的用户界面(UI)设计框架。 JavaServer Faces提供了一组可重用的UI组件-Web应用程序的标准。 JSF基于MVC设计模式。它会自动将表单数据保存到服务器, 并在客户端显示时填充表单日期。
16)什么是EJB平台?
EJB代表企业JavaBean。当你专注于编写业务逻辑时, EJB平台管理诸如事务和状态管理, 资源池, 多线程和简单搜索之类的功能。
17)部署描述符是什么意思?
部署描述符基于支持.xml扩展名的XML(可扩展标记语言)。它用于描述组件的部署设置。 J2EE应用程序及其模块均具有其部署描述符。
18)在J2EE框架中定义Struts?
Struts是基于MVC(模型-视图-控制器)体系结构的应用程序开发框架。它是Java Servlet, JSP, 自定义标签和消息的组合。它用于设计大型企业的应用程序。可以描述为:
- 模型
该模型定义系统的内部状态。它可以是单个或基于应用程序体系结构的Java Bean集群。
- 视图
JSP技术用于设计任何企业应用程序的视图。
- 控制者
控制器用于管理用户的操作。它处理客户端请求并根据该请求做出响应。该框架的主要组件是ActionServlet类的servlet。通过定义一组ActionMappings来配置此servlet。
19)在J2EE中定义Hashtable吗?
Hashtable与HashMap相似, 只不过Hashtable是同步的。哈希表是一组同步对象, 其中不允许空值和重复值。
20)定义休眠和HQL?
Hibernate是一种对象关系映射和查询服务。在休眠模式下, 我们可以编写HQL(休眠查询语言)脚本而不是SQL, 从而节省了大量时间和精力。 Hibernate提供了更强大的关联, 继承, 多态性, 组成和集合。我们可以使用Java对象轻松地将查询处理到数据库中。 Hibernate还允许我们使用基于Java的条件来表达查询。
21)Hibernate的局限性是什么?
以下是休眠的一些限制:
- 较慢的查询执行。
- 复合键仅支持HQL。
- 没有共享引用可用于值类型。
22)休眠的主要好处是什么?
以下是休眠的一些主要优点:
- Hibernate独立于数据库和供应商, 因此它是可移植框架。
- 域对象可以映射到关系数据库。
- JPA对标准ORM的支持。
- 与JDBC相比, Hibernate中的数据库连接性更好。
23)定义ORM及其在J2EE中的工作吗?
ORM是指对象关系映射。它是Java类中的对象, 它使用描述对象和数据库之间映射的元数据映射到关系数据库的表中。它将数据从一种表示转换为另一种表示。
24)什么是授权?
授权是确定对方法或资源的访问的过程。它取决于确定与通过身份验证的请求相关联的主体是否在给定的安全角色中。安全角色可以解释为由组装应用程序的人定义的用户的逻辑分组。部署者将安全角色映射到安全身份。安全身份可以是操作环境中的原则或组。
25)定义授权约束?
确定谁被允许访问Web资源集合的授权规则称为授权约束。
26)你将如何在休眠状态下解释save()和saveorupdate()方法?
休眠中的Save()方法用于将对象存储在数据库中。如果记录不存在, 它将创建一个新条目。
休眠中的Saveorupdate()方法用于使用标识符更新对象。如果标识符不可用, 则此方法调用save()。如果标识符可用, 它将调用update方法。
27)你将如何解释load()和get()方法?
Load():如果缓存或数据库中缺少对象, 则Load()方法将引发异常。 Load()方法从不返回null。
Get():如果在缓存或数据库中缺少对象, 则Get()方法将返回null值, 而不是异常。
28)什么是J2EE中的Web容器?
J2EE中将组件和具有旨在支持组件的已定义功能的低级平台之间的接口定义为Web容器。
29)连接池的概念是什么?
连接池是一个简单的概念, 在重用现有连接时很流行。这意味着, 如果对象连接已经定义和连接良好, 则可以在需要时重用它们, 而不必生成新的连接。
30)你对Servlet了解什么?
Servlet是服务器端组件, 它提供了创建服务器端程序的全部功能。针对各种协议的特定设计有不同的servlet。 Servlet最受欢迎的协议类型是HTTP.Servlets, 它使用Java包javax.servlet, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, javax.servlet.http.HttpSession中的类。 。所有Servlet必须包括Servlet接口, 该接口定义了生命周期方法。
31)给出ORM(对象关系映射)的一些优点吗?
- 生产率
基于定义的数据模型, 将生成自动代码以减少总体数据访问时间。
- 性能
应用程序的完整要求由ORM生成的自动代码来管理, 这意味着不需要任何额外的代码, 并且使整个数据访问过程变得更快, 更优化。
- 供应商独立
生成的代码独立于供应商, 从而增加了应用程序的总体可移植性。
- 可维护性
该代码已经过ORM的严格测试和生成, 只有开发人员才能完全理解代码。
32)介绍一下休眠框架的核心接口吗?
- 会话界面
- SessionFactory接口
- 配置界面
- 交易界面
- 查询和条件界面
33)什么是B2b?
B2b表示企业对企业。
34)休眠映射文件和休眠配置文件使用的文件扩展名是什么?
对于休眠映射, 文件名应类似于filename.hbm.xml。
对于休眠配置, 文件名应类似于hibernate.cfg.xml。
35)定义一种在休眠配置文件中添加休眠映射文件的方法吗?
可以通过以下方式轻松执行:
<mapping resource="filename.hbm.xml"/>
36)多层体系结构的主要组成部分是什么?
多层体系结构的主要组件是:
- 展示层
此层中存在的前端组件用于显示演示文稿。
- 资源层
该层中存在的后端组件用于与数据库进行通信。
- 业务层
此层中存在的组件用于为系统提供业务逻辑。
37)解释JTA, JNDI和JMS。
JTA表示JAVA事务API, 用于在整个企业信息系统中协调和管理事务。
JNDI表示Java命名目录接口, 用于从目录服务访问数据。
JMS表示Java消息服务, 该服务用于通过消息传递系统接收和发送消息。
38)解释J2EE层。
J2EE具有以下层:
- 客户层
它向浏览器指示处理请求的服务器。此层中可用的接口是HTML浏览器, Java应用程序, 小程序或非Java应用程序。
- 中间层
它由表示层和集成层组成。使用JavaServer Pages在表示层中创建UI(用户界面)。在Enterprise Java Bean的帮助下, 将业务逻辑写入业务层内部。数据库的对象是在集成层中创建的。
- 后端
它构成了用于存储数据的企业信息系统(EIS)。
39)描述EAR, WAR和JAR。
EAR代表企业归档文件。它由Web, EJB和客户端的组件组成。 EAR的所有组件都打包在扩展名为.ear的压缩文件中。
WAR代表Web存档文件。它包含与Web应用程序相关的所有组件。所有组件都打包在扩展名为.war的压缩文件中。
JAR代表Java存档文件。它由构成API(应用程序编程接口)的所有类文件和库文件组成。所有组件都打包在扩展名为.jar的压缩文件中。
每种类型的文件(.ear, .war和.jar)都由应用程序服务器, Servlet容器, EJB容器等进行唯一处理。
40)你对Spring有什么了解?
Spring是用于开发企业应用程序的轻量级开源框架。它解决了企业应用程序开发的复杂性, 并为J2EE提供了轻松的开发方法。它最初由Rod Johnson撰写。它是在2003年6月根据Apache 2.0许可证发行的。
41)Spring中使用了哪些不同的模块?
春季主要有七个核心模块:
- 核心容器模块
- 对象/关系映射模块
- DAO module
- 应用程序上下文模块
- 面向方面的编程
- 网络模块
- MVC模块
42)什么是动作映射?
在动作映射中, 用户为特定的URL, 即路径和不同的目标视图, 指定动作类别, 这意味着将请求响应转发到其上。 ActionMapping定义ActionServlet知道的有关将特定请求映射到特定Action类的实例的信息。映射被传输到Action类的execute()方法, 从而可以直接访问此信息。
43)你对ActionForm有什么了解?
ActionForm是一种Java Bean, 可以关联一个或多个ActionMapping。当用户扩展org.apache.struts.action.ActionForm类时, Java Bean会变为FormBean。通常在服务器端自动填充ActionForm对象, 并且客户端从UI输入数据。 ActionForm管理Web应用程序的会话状态。
44)什么是后备豆?
备用bean是与包含JavaServer Faces组件的JavaServer Pages对应的JavaBeans组件。辅助bean描述页面上组件的属性以及执行该组件处理的方法。
该处理可以包括事件处理, 验证以及与导航相关联的处理。
45)什么是构建文件?
构建文件是一个XML文件, 由一个或多个asant目标组成。目标是用户想要执行的一组任务。启动时, 用户可以选择要执行的目标。如果没有目标, 则将执行项目的默认目标。
46)你对业务逻辑了解什么?
业务逻辑是包含应用程序功能的代码。在EJB(Enterprise JavaBeans)体系结构中, 此逻辑是通过企业bean的方法实现的。
47)你将如何解释CDATA?
CDATA是字符数据的预定义XML标记, 这意味着”不要解释这些字符”, 它类似于XML语法的标准规则适用的已分析字符数据(PCDATA)。 CDATA部分用于显示XML语法的示例。
48)组件合同是什么意思?
J2EE组件与其容器之间的合同称为组件合同。这类合同包括:
- 组件的生命周期管理
- 实例用来从其容器中获取各种信息和服务的接口
- 每个容器必须为其组件提供的服务列表。
49)你对连接器了解什么?解释连接器体系结构。
连接器是容器的标准扩展机制, 可提供与企业信息系统的连接。它特定于企业信息系统, 并包含资源适配器和用于企业信息系统连接的应用程序开发工具。资源适配器通过对连接器体系结构中定义的系统级合同的支持而插入到容器中。
用于将J2EE产品与企业信息系统集成的架构称为连接器架构。连接器体系结构包括:
- 企业信息系统供应商提供的资源适配器
- 允许插入此资源适配器的J2EE产品。
连接器体系结构还定义了一组协议, 资源适配器必须支持这些协议才能插入J2EE产品(例如, 事务, 安全性和资源管理)。
工作/人力资源面试问题 |
jQuery面试问题 |
Java OOP面试问题 |
JSP面试问题 |
休眠面试问题 |
SQL面试题 |
Android面试题 |
MySQL面试问题 |
面试技巧
JavaScript面试问题
Java基础面试问题
Servlet面试问题
春季面试问题
PL / SQL面试问题
Oracle面试问题
SQL Server面试问题
评论前必须登录!
注册