JAVA面试题



国富商通面试题

尹传辉总结:

 

  1. J2EE是什么?有那些标准?J2EE分层。

  2. JAVA服务器的核心是什么?

  3. 写一段JDBC连接数据库的代码,CONNECTION最后要关闭。

  4. 数据库表之间有那些关系?写出两表之间的等值连接代码?

  5. 只有一个JSP页面,要求查询数据库的表,并且把显示结果显示在JSP页面上,要用到STRUTSHIBERNATE

  6. 写一个STRUTSHIBERNATE都需要生成什么文件,都起什么作用?

  7. 如何把数据库中的表生成一个XML文件?

  8. 说一下STRUTS的工作原理。

  9. HIBERNATE需要多复习一下,面试中问的比较多

  10. SVN版本控制问题。

     

     

尹俊总结:

 

1 介绍一下j2ee技术

2 struts是如何实现web层开发的

3 ajax的主要作用,及其特点

4 struts是如何处理*.do的

5 hibernate是如何实现对持久层管理的

 

其它的都是由这几个主要问题引出来的,不一定问到什么.

 

 

王光明总结:

 

没问其他知识,全部都是三大框架以及展开的知识

给一个用户查询功能,将查询结果在同一个页面现实并将查询结果排序。

要求用到三大框架SSH,口述三大框架在实现这个功能时候所取的作用,工作流程以及相关配置信息,如果实现这个功能并口述主要的代码。

主要知识点有SQL查询语句,HQL,框架的配置信息,如何相互配合使用。问题比较深刻。

 

 

 

吴琼总结:

 

首先是了解一下个人信息,然后问工作经验和项目经验。(顺便提一下,项目经验很重要,几乎所有的面试都会问项目经验。)

接着问了一道大题:说说使用ssh框架的好处。在我回答完了之后他接着追问Hibernate中的实体类的配置文件以及以部门和员工为例怎么配置一对多的映射。

然后还问了一下在项目中怎么样调用Hibernate。(答案就是先拿sessionfactory,再拿session,后面的。。。。。。)

最后问了一下HQL语句。

 

 

 

                                                 

国富通信息技术有限公司  

地址:北京市经济技术开发区荣华中路11号  中国国际电子商务大厦5层  电话: 67800300  网址:http://www.cofortune.com.cn/

 

路线:坐地铁5号线到刘家窑下,坐公交652到万源街西口(亦庄管委会)下车即是

 

  1. 简答jspservlet的联系和区别

  2. web service 名词解释:

  3. SOAP,UDDI,WSDL解释

  4. EJB规范规定EJB中禁用的操作有哪些?(答出三道四点即可的满分)

    答案:答:1.不能操作线程和线程API(线程API指非线程对象的方法如notify,wait)2.不能操作awt3.不能实现服务器功能,4.不能对静态属生存取,5.不能使用IO操作直接存取文件系统,6.不能加载本地库.7.不能将this作为变量和返回,8.不能循环调用。

  5. Oracle分页查询语句,假设表名为table,查处2140页的数据

  6. weblogic中如何制定内存的大小,如何进行ssl的配置与客户端的认证配置?

  7. 说明servlet的生命周期

  8. javaRMICORBA的区别

    答案:1、定义接口:

    rmi自己定义接口(interface

    corba生成idl代码,然后使用idlj -fall name.idl生成接口和几个类文件

     

    2、启动服务:

    rmi启动的是rmiregistry (port)默认1099

    corba启动的是tnameserv

     

    3、实现的继承类:

    rmi extends UnicastRemoteObject

    corba extends 运行idlj时 生成的_NameImplBase

     

    4、实现类的rebind

    rmi可以直接rebind 如:Naming.rebind("rmi://localhost/meeting",meetingserver);

    corba需要先调用init()如:

    ORB orb=ORB.init(avgs,null);

    MOTDImpl impl=new MOTDImpl(motdFile);

    orb.connect(impl);

    org.omg.CORBA.Object objRef=

    orb.resolve_initial_references("NameService");

    NamingContext ncRef=NamingContextHelper.narrow(objRef);

    NameComponent nc=new NameComponent(motdService,"");

    NameComponent[] path=new NameComponent[]{nc};

    ncRef.rebind(path,impl);

     

    这里corba就要麻烦很多了

     

    5、客户端调用corba的调用跟实现类的绑定差不多如:

    ORB orb=ORB.init(avgs,null);

    org.omg.CORBA.Object objRef=

    orb.resolve_initial_references("NameService");

    NamingContext ncRef=NamingContextHelper.narrow(objRef);

    NameComponent nc=new NameComponent("MessageOfTheDay","");

    NameComponent path[]=new NameComponent[]{nc} ;

    org.omg.CORBA.Object motdObj=ncRef.resolve(path);

    MOTD motdRef=MOTDHelper.narrow(motdObj);

    System.out.println(motdRef.getMOTD());

    rmi只要lookup就可以了

     

    总的来说其实rmicorba都差不多,都是桩和框架,两者相互竞争,但是在java中都可以相互调用。这归功于rmi_iiop.

    海辉集团Sql数据库笔试题

  1. 触发器的作用

  2. 什么是存储过程?用什么来调用?

  3. 索引的作用?他的优缺点是什么?

  4. 什么是内存泄露?

  5. 维护数据库的完整性和一致性,你喜欢用存储过程还是喜欢自写业务逻辑你?为什么?

  6. 什么是事务?什么是锁?

  7. 什么叫视图?游标是什么?

  8. 为管理业务信息建立3个表:

    S(S#,SN,SD,SA)S#,SN,SD,SA分别代表学号,学员姓名,所属单位,学院年龄

    C(C#,CN) C#,CN分别代表课程编号,课程名称

    SC(S#,G#,G) S#,G#,G分别代表学号,所选课程编号,成绩

  1. 使用标准sql嵌套语句查询所选课程名称为“税收基础”的学员姓名和学员学号

  2. 使用标准sql嵌套语句查询选修课程编号为“C2”的学员姓名和所属单位

  3. 使用标准sql嵌套语句查询选修不课程编号为“C5”的学员姓名和所属单位

  4. 查询选修了课程的学员人数

  5. 查询选修课程超过5们的学员学号和所属单位

     

    中国航空综合技术研究所笔试题目

  1. 简单介绍一下XMLHTTP,WEBSERVICE的特点和作用。

  2. 接口和抽象类的区别

  3. 简述面向对象的概念以及他的特征

  4. 介绍页面传值的几种方法及其优缺点

  5. 软件开发及其作用

  6. 简述一下反射

  7. 介绍一下对sqlserver,oracle和mysql的熟练程度。

  8. 简单介绍一下设计模式

  9. 都有什么持久层技术,你最擅长的是那一种?

  10. 什么是依赖注入、反转控制和AOP;

  11. struts1.2和struts2.0的区别

  12. 简单介绍一下你使用tomcat。Websphere和weblogic的心得

  13. 简述一下工作流开发的使用经验

  14. 简单介绍一下J2EE体系架构下的软件快速开发平台的认识

  15. 描述一下你所用到的SOA

  16. 描述一下已在开发和实施项目过程中所掌握的业务。

  17. 简述一下eclipse插件开发心得.

    好帮手在线笔试题

    一.5道选择题  读程序写运行结果(863题库类似)

    例如 try catch语句的掌握

    finally语句

     

    二.5道程序改错题

    1.

    abstract?class?Name?{

    ???private?String?name;

    ???public?abstract?boolean?isStupidName(String?name)?{}

    }

    大侠们,这有何错误?

    答案:?错。abstract?method必须以分号结尾,且不带花括号。

    2.

    public?class?Something?{

    ???void?doSomething?()?{

    ???????private?String?s?=?"";

    ???????int?l?=?s.length();

    ???}

    }

    有错吗?

    答案:?错。局部变量前不能放置任何访问修饰符?(privatepublic,和protected)final可以用来修饰局部变量

    (final如同abstractstrictfp,都是非访问修饰符,strictfp只能修饰classmethod而非variable)

    3.

    abstract?class?Something?{

    ???private?abstract?String?doSomething?();

    }

    这好像没什么错吧?

    答案:?错。abstractmethods不能以private修饰。abstractmethods就是让子类implement(实现)具体细节的,怎么可以用privateabstract

    method封锁起来呢??(同理,abstract?method前不能加final)

    4.

    public?class?Something?{

    ???public?int?addOne(final?int?x)?{

    ???????return?++x;

    ???}

    }

    这个比较明显。

    答案:?错。int?x被修饰成final,意味着x不能在addOne?method中被修改。

    5.

    public?class?Something?{

    ???public?static?void?main(String[]?args)?{

    ???????Other?o?=?new?Other();

    ???????new?Something().addOne(o);

    ???}

    ???public?void?addOne(final?Other?o)?{

    ???????o.i++;

    ???}

    }

    class?Other?{

    ???public?int?i;

    }

    和上面的很相似,都是关于final的问题,这有错吗?

    答案:?正确。在addOne?method中,参数o被修饰成final。如果在addOne?method里我们修改了oreference

    (比如:?o?=?new?Other();),那么如同上例这题也是错的。但这里修改的是omember?vairable

    (成员变量),而oreference并没有改变。

    6.

    class?Something?{

    ????int?i;

    ????public?void?doSomething()?{

    ????????System.out.println("i?=?"?+?i);

    ????}

    }?

    有什么错呢??看不出来啊。

    答案:?正确。输出的是"i?=?0"int?i属於instant?variable?(实例变量,或叫成员变量)instant?variabledefault?valueintdefault?value0

    7.

    class?Something?{

    ????final?int?i;

    ????public?void?doSomething()?{

    ????????System.out.println("i?=?"?+?i);

    ????}

    }

    和上面一题只有一个地方不同,就是多了一个final。这难道就错了吗?

    答案:?错。final?int?i是个finalinstant?variable?(实例变量,或叫成员变量)finalinstant?variable没有default?value,必须在constructor?(构造器)结束之前被赋予一个明确的值。可以修改为"final?int?i?=?0;"

    8.

    public?class?Something?{

    ?????public?static?void?main(String[]?args)?{

    ????????Something?s?=?new?Something();

    ????????System.out.println("s.doSomething()?returns?"?+?doSomething());

    ????}

    ????public?String?doSomething()?{

    ????????return?"Do?something?...";

    ????}

    }

    ?看上去很完美。

    答案:?错。看上去在maincall?doSomething没有什么问题,毕竟两个methods都在同一个class里。但仔细看,mainstatic的。static?method不能直接call?non-static?methods。可改成"System.out.println("s.doSomething()?returns?"?+?s.doSomething());"。同理,static?method不能访问non-static?instant?variable

    9.

    此处,Something类的文件名叫OtherThing.java

    class?Something?{

    ????private?static?void?main(String[]?something_to_do)?{????????

    ????????System.out.println("Do?something?...");

    ????}

    }

    ?这个好像很明显。

    答案:?正确。从来没有人说过JavaClass名字必须和其文件名相同。但public?class的名字必须和文件名相同。

    10

    interface??A{

    ???int?x?=?0;

    }

    class?B{

    ???int?x?=1;

    }

    class?C?extends?B?implements?A?{

    ???public?void?pX(){

    ??????System.out.println(x);

    ???}

    ???public?static?void?main(String[]?args)?{

    ??????new?C().pX();

    ???}

    }

    答案:错误。在编译时会发生错误(错误描述不同的JVM有不同的信息,意思就是未明确的x调用,两个x都匹配(就象在同时import?java.utiljava.sql两个包时直接声明Date一样)。对于父类的变量,可以用super.x来明确,而接口的属性默认隐含为?public?static?final.所以可以通过A.x来明确。

     

    三.6道填空题

      1.面向对象的特征:

      2.MVC的三个核心核心部件:

      3.XML文档的解析方法:

      4.写出在实际开发中经常运用到哪些设计模式,写出三个:

      5.一道关于UML的图形举例

      6.JSP9个内置对象,写出其中的四个

     

    四.5个问答题

      1.作用域public private protected,及其不写时候的区别?

     

      2.JSP中静态include和动态include的区别?

     

      3.类变量和局部变量的区别?

     

      4.一道JavaScript程序题,要求能够弹出对话框提示当前多选的是那个对话框

     

      5.应用服务器有哪些?

    六.2道程序题

      1.SQL语句,两个表一个用户表,一个用户所对应的订单表

      两个表以申请单号相互关联

     

      写出4SQL语句

      问题是对两个表的同时操作,增删改查的操作

     

      2.用循环语句打印

      *      *

      **     *

      ***    *

      ****   *

      *****  *

      ****** *

      ********

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值