Java面试题系列之J2EE技术部分

  

  1、请对以下在J2EE中常用的名词进行解释

  web容器:给处于其中的应用程序组件(JSP,SERVLET)提供一个环境,使JSP,SERVLET直接更容器中的环境变量接口交互,不必关注其它系统问题。主要有WEB服务器来实现。例如:TOMCAT,WEBLOGIC,WEBSPHERE等。

  该容器提供的接口严格遵守J2EE规范中的WEB APPLICATION 标准。我们把遵守以上标准的WEB服务器就叫做J2EE中的WEB容器。

  网络配图

  EJB容器:Enterprise java bean容器。更具有行业领域特色;他提供给运行在其中的组件EJB各种管理功能;只要满足J2EE规范的EJB放入该容器,马上就会被容器进行高效率的管理,并且可以通过现成的接口来获得系统级别的服务;例如邮件服务、事务管理。

  JNDI:(Java Naming & Directory Interface)JAVA命名目录服务;主要提供的功能是:提供一个目录系统,让其它各地的应用程序在其上面留下自己的索引,从而满足快速查找和定位分布式应用程序的功能。

  JMS:(Java Message Service)JAVA消息服务;主要实现各个应用程序之间的通讯,包括点对点和广播。

  JTA:(Java Transaction API)JAVA事务服务;提供各种分布式事务服务,应用程序只需调用其提供的接口即可。

  JAF:(Java Action FrameWork)JAVA安全认证框架;提供一些安全控制方面的框架。让开发者通过各种部署和自定义实现自己的个性安全控制策略。

  RMI/IIOP:(Remote Method Invocation /internet对象请求中介协议)他们主要用于通过远程调用服务;例如,远程有一台计算机上运行一个程序,它提供股票分析服务,我们可以在本地计算机上实现对其直接调用,当然这是要通过一定的规范才能在异构的系统之间进行通信;RMI是JAVA特有的。

  2、如何给weblogic指定大小的内存?

  在启动Weblogic的脚本中(位于所在Domian对应服务器目录下的startServerName),增加set MEM_ARGS=-Xms32m-Xmx200m,可以调整最小内存为32M,最大200M。

  3、如何设定的weblogic的热启动模式(开发模式)与产品发布模式?

  可以在管理控制台中修改对应服务器的启动模式为开发或产品模式之一;或者修改服务的启动文件或者commenv文件,增加setPRODUCTION_MODE=true。

  4、如何启动时不需输入用户名与密码?

  修改服务启动文件,增加 WLS_USER和WLS_PW项;也可以在boot.properties文件中增加加密过的用户名和密码。

  5、在weblogic管理制台中对一个应用域(或者说是一个网站,Domain)进行jms及ejb或连接池等相关信息进行配置后,实际保存在什么文件中?

  保存在此Domain的config.xml文件中,它是服务器的核心配置文件。

  Java基础部分学习的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法广州Java培训,线程的语法,集合的语法,io的语法,虚拟机方面的语法,这些都是最基本而且最易问到的,我们只要每天学一点点,日积月累知识面会更广。

  网络配图

  1、String s = new String("xyz");创建了几个String Object?二者之间有什么区别?

  两个或一个,”xyz”对应一个对象,这个对象放在字符串常量缓冲区,常量”xyz”不管出现多少遍,都是缓冲区中的那一个。

  New String每写一遍,就创建一个新的对象,它一句那个常量”xyz”对象的内容来创建出一个新String对象;如果以前就用过’xyz’,这句代表就不会创建”xyz”自己了,直接从缓冲区拿。

  2、运行时异常与一般异常有何异同?

  异常表示程序运行过程中可能出现的非正常状态,运行时异常表示虚拟机的通常操作中可能遇到的异常,是一种常见运行错误。

  java编译器要求方法必须声明抛出可能发生的非运行时异常,但是并不要求必须声明抛出未被捕获的运行时异常。

  3、error和exception有什么区别?

  error 表示恢复不是不可能但很困难的情况下的一种严重问题;比如说内存溢出,不可能指望程序能处理这样的情况。

  exception表示一种设计或实现问题,也就是说,它表示如果程序运行正常,从不会发生的情况。

  网络配图

  4、Java中的异常处理机制的简单原理和应用。

  异常是指java程序运行时(非编译)所发生的非正常情况或错误,与现实生活中的事件很相似,现实生活中的事件可以包含事件发生的时间、地点、人物、情节等信息,可以用一个对象来表示,Java使用面向对象的方式来处理异常,它把程序中发生的每个异常也都分别封装到一个对象来表示的,该对象中包含有异常的信息。

  Java对异常进行了分类,不同类型的异常分别用不同的Java类表示,所有异常的根类为java.lang.Throwable,Throwable下面又派生了两个子类:Error和Exception,Error表示应用程序本身无法克服和恢复的一种严重问题,程序只有死的份了,例如,说内存溢出和线程死锁等系统问题。

  Exception表示程序还能够克服和恢复的问题,其中又分为系统异常和普通异常,系统异常是软件本身缺陷所导致的问题,也就是软件开发人员考虑不周所导致的问题,软件使用者无法克服和恢复这种问题,但在这种问题下还可以让软件系统继续运行或者让软件死掉,例如,数组脚本越界(ArrayIndexOutOfBoundsException),空指针异常(NullPointerException)、类转换异常(ClassCastException);普通异常是运行环境的变化或异常所导致的问题,是用户能够克服的问题,例如,网络断线,硬盘空间不够,发生这样的异常后,程序不应该死掉。

  网络配图

  java为系统异常和普通异常提供了不同的解决方案,编译器强制普通异常必须try..catch处理或用throws声明继续抛给上层调用方法处理,所以普通异常也称为checked异常,而系统异常可以处理也可以不处理,所以,编译器不强制用try..catch处理或用throws声明,所以系统异常也称为unchecked异常。

  5、请写出你最常见到的5个runtime exception。

  这道题主要考你的代码量到底多大,如果你长期写代码的,应该经常都看到过一些系统方面的异常,你不一定真要回答出5个具体的系统异常,但你要能够说出什么是系统异常,以及几个系统异常就可以了,当然,这些异常完全用其英文名称来写是最好的,如果实在写不出,那就用中文吧,有总比没有强!

  网络配图

  所谓系统异常,就是…..,它们都是RuntimeException的子类,在jdk doc中查RuntimeException类,就可以看到其所有的子类列表,也就是看到了所有的系统异常。我比较有印象的系统异常有:NullPointerException、ArrayIndexOutOfBoundsException、ClassCastException。

转载于:https://www.cnblogs.com/jpbag/p/8256992.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值