面试题java(j2ee)部分

1.J2EE的核心API与组件:

(1) JDBC(java database connectivity)

(2)JNDI(java name and Directory interface):被用于执行名字和目录服务,它提供了一致的模型来存取和操作企业级的资源,如DNS和LDAP,本地文件系统,活应用服务器中的对象。

(3)EJB(Enterprise javaBean):提供了一个框架来开发和实施分布式商务逻辑。EJB规范定义了EJB组建在何时如何与他们的容器进行交互作用。容器负责提供公用的服务,例如目录服务、事务管理、安全性、资源缓冲池及容错性。

(4)RMI(Remote Method invoke)

Rmi协议调用远程对象方法。

(5)java IDL/CORBA(common object request broker architecture)在Java IDL的支持下,开发人员可以将Java和CORBA集成在一起。他们可以创建Java对象并使之可在CORBA ORB中展开, 或者他们还可以创建Java类并作为和其它ORB一起展开的C
ORBA对象的客户。后一种方法提供了另外一种途径,通过它Java可以被用于将你的新的
应用和旧的系统相集成。

(6)JSP(java server pages)

(7)java Servlet

一种小型的java程序,它扩展了web服务器的功能。

(8)XML(Extensible Maekup language)

(9)JMS(java message service)MS适用于和面向消息的终极爱你件相互通信的应用程序接口(api)

(10)JTA(java Transaction Architecture)

定义了一种标准的API,应用系统有此可以访问各种事务监控。

(11)JTS(Java Transaction service):JTS是CORBA OTS事务监控的基本的实现。

(12)Java mail:

JavaMail是用于存取邮件服务器的API,它提供了一套邮件服务器的抽象类。不仅支持SM
TP服务器,也支持IMAP服务器。

JAF(JavaBeans Activation Framework):

JavaMail利用JAF来处理MIME编码的邮件附件。MIME的字节流可以被转换成Java对象,或

者转换自Java对象。大多数应用都可以不需要直接使用JAF。

2中间件的解释 中间件处在操作系统和更高一级应用程序之间。它充当的功能是:将应用程序运行环境与操作系统隔离,从而实现应用程序开发者不必为更多系统问题忧虑,而直接关注该应用程序在解决问题上的能力 。我们后面说到的容器的概念就是中间件的一种

3.httpservletrequest接口:主要方法是获得请求中的参数

   httpservletresponse接口:代表了对客户端的http相应。

   httpsession接口:Java平台对session机制的实现规范。

4.EJB称为java企业bean,包含(session on bean)会话bean、实体bean(entity bean)、消息驱动bean(MessageDriven Bean).

(1)session Bean用于实现业务逻辑,它可以是有状态的,也可以是无状态的。每当客户端请求时,容器就会选择一个Session Bean来为客户端服务。Session Bean可以直接访问数据库,但更多时候,它会通过Entity Bean实现数据访问。

(2).Entity Bean是域模型对象,用于实现O/R映射,负责将数据库中的表记录映射为内存中的Entity对象,事实上,创建一个Entity Bean对象相当于新建一条记录,删除一个Entity Bean会同时从数据库中删除对应记录,修改一个Entity Bean时,容器会自动将Entity Bean的状态和数据库同步。

(3).MessageDriven Bean是EJB2.0中引入的新的企业Bean,它基于JMS消息,只能接收客户端发送的JMS消息然后处理。MDB实际上是一个异步的无状态Session Bean,客户端调用MDB后无需等待,立刻返回,MDB将异步处理客户请求。这适合于需要异步处理请求的场合,比如订单处理,这样就能避免客户端长时间的等待一个方法调用直到返回结果。

5.SAX与DOM的区别:

 DOM是复杂对象处理的首选,比如当XML比较复杂的时候,或者当你需要随机处理文档中数据的时候。SAX从文档的开始通过每一节点移动,以定位一个特定的节点。
DOM为载入到内存的文档节点建立类型描述。最终,这些描述呈现了可容易横向移动、潜在巨大、树型结构。如果XML很冗长,DOM就会显示出无法控制的胀大。

在处理DOM的时候,我们需要读入整个的XML文档,然后在内存中创建DOM树,生成DOM树上的每个Node对象。

不同于DOM的文档驱动,它是事件驱动的,也就是说,它并不需要读入整个文档,而文档的读入过程也就是SAX的解析过程。所谓事件驱动,是指一种基于回调(callback)机制的程序运行方法。(如果你对Java新的代理事件模型比较清楚的话,就会很容易理解这种机制了)

SAX与DOM的比较
 

SAXDOM
依序读入文件并产生相对应事件,可以处理任何大小的XML文件。在内存中建立文件树,不适于处理大型的XML文件。
只能对文件按顺序剖析一遍,不支持对文件的随意存取可以随意存取文件树的任何部分,没有次数限制
只能读取XML文件内容,而不能修改可以随意修改文件树,从而修改了XML文件
开发上比较复杂,需要自己来制作事件处理器易于理解,易于开发
对工作人员更灵活,可以用SAX建立自己的XML对象模型已经在DOM基础之上建立了文件树
通过对SAX与DOM的分析,它们各有自己的不同应用领域。
SAX适于处理下面的问题:
1、对大型文件进行处理;
2、只需要文件夹的部分内容,或者只需从文件中得到特定信息。
3、想建立自己的对象模型的时候。
DOM适于处理下面的问题:
1、需要对文件进行修改;
2、需要随机对文件进行存取。

 6.Java中Ear、Jar、War文件之间有何不同?

Ear、Jar、War文件之间有何不同?它们分别使用在哪种环境下?

  在文件结构上,三者并没有什么不同,它们都采用zip或jar档案文件压缩格式。但是它们的使用目的有所区别:

  Jar文件(扩展名为. Jar)包含Java类的普通库、资源(resources)、辅助文件(auxiliary files)等

  War文件(扩展名为.War)包含全部Web应用程序。在这种情形下,一个Web应用程序被定义为单独的一组文件、类和资源,用户可以对jar文件进行封装,并把它作为小型服务程序(servlet)来访问。

  Ear文件(扩展名为.Ear)包含全部企业应用程序。在这种情形下,一个企业应用程序被定义为多个jar文件、资源、类和Web应用程序的集合。

  每一种文件(.jar, .war, .ear)只能由应用服务器(application servers)、小型服务程序容器(servlet containers)、EJB容器(EJB containers)等进行处理。

 7.jsp中变量定义:

<%String  a ="b"%>定义局部变量

<%!String  a ="b"%>定义全局变量

8.EntityManager.通常在从数据库中检索实体时加载所有实例数据库。

9.(jboss)容器透明的提供组建服务,如:事务,安全管理,远程处理和web服务支持。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值