笔试 非SCJP

   1、

public int testException(){  //
  
     int i=0, n=0;
  
  try{
   n = 1/n;
   System.out.println("n is : "+n);
   return i+=2;
  }catch (Exception e) {
   // TODO: handle exception
   i+=3;
   return i+=4;
  }
  finally{
   i+=5;
   return i+=6;
  }
  
 }

经上机验证, 返回结果18, 然而我在笔试时却写了11。 try_catch语句中包含return时并不会推出程序其会继续执行, 如此题抛出了异常然后执行catch再执行finally块, 最终i为18。

拓展:

try{
      n = 1+n;
      return i;
     
     }catch (Exception e) {
  // TODO: handle exception
      i+=3;
      return i+=4;
 }finally{
  i+=5;
 
 }

假如是这种情况的话其执行流程是try块中执行到return i时并不返回,跳到finally块中执行, 然后又返回到try块中, 但是返回的结果是0, 也即i的初始值。

2、

public long getResult(long x, long y ){
  if(x<=0 || y<=0 )
   return 0;
  while(x!=y)
   if(x<y)
    x = x-y;
   else
    x = y-x;
    return x;
   
 }

请你优化此段代码?

    我的思想是将一些运算拉到循环外面进行。 还有要注意观察在while与for这样的循环结构后是否有花括号{}括起来, 如果没括的话就只循环仅接其后的第一个语句块。 ^_^  ^_^  但此题是会进入死循环的 ...

 

3、JAVA EE的结构。

   分为客户层、Web层、 业务层、 企业信息系统层(EIS)。 当然也可以将其看做三层: 客户层、 JAVA EE应用服务器层、企业MIS层。

4、jsp运行原理?

.a、   客户端发送请求给服务端的web容器  

b、   web容器将jsp翻译成servlet源代码  

c、  web容器将servlet源代码编译成.class字节码文件  
d、 web容器执行.class字节码文件  

e、 web容器将结果响应给客户端

 当第一次访问后,在没有改变jsp文件的情况下,只会执行1、3、4、5。因为.class字节码文件已经存在,不需要翻译和编译的过程。

 

5、 sql题。

   a、  求在表a而不在表b中的记录 (表a与表b具有相同的表结构)

        select * from a
        minus
        select * from b;

注意: 此题我考试时是将关键字minus写成了except   ^_^  ^_^  可惜oracle中并没有except这个关键字呀。

                 还发现了一个标准SQL与oracle的差异, 如左外连接标准关键字是left out join而oracle中是left outer join。

像这种形式:  select * from a, b where a.testkey(+) = b.mykey; 在oracle中是表示 右外连接的。 注意!

 

我顺便复习了一遍sql中的集合查询:

   union :得到两个查询结果的并集,并且自动去掉重复行。不会排序

 union all:得到两个查询结果的并集,不会去掉重复行。也不会排序

 intersect:得到两个查询结果的交集,并且按照结果集的第一个列进行排序

 minus:得到两个查询结果的减集,以第一列进行排序

b、  将a表中的testvalue字段全部修改为b表中对应的mykey
update a set a.testvalue=(select myvalue from b where a.testkey = b.mykey);

 

6、 oracle的体系结构。  此部分内容较多, 参考教材《Oracle Database 10g 基础教程》第四章。

7、 视图的特点及其作用?

         视图一经定义, 就可以和基本表一样被查询、被删除。 也可以在一个视图之上再定义新的视图, 但对视图的更新(增、删、改)操作则有一定的限制。

           要注意创建视图后面的可选项: with  check  option。

       视图的主要作用如下:

        a、 视图能够简化用户的操作。

       b、   视图使用户能以多种角度看待同一数据。

       c、   视图对重构数据库提供了一定程度的逻辑独立性。

       d、  视图能够对机密数据提供安全保护。

      e、  适当的利用视图可以更清晰的表达查询。

 

8、 jsp/servlet下的编码方式?

       String str="中文";
      str=new String(str.getBytes("GB2312"),"8859_1"); 此种形式去解决即可,更好的一种方法是在servlet中构造一个过滤器。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值