各種面試題

1 String和StringBuffer有什麼區別?int和Integer有什麼不同,float f= 3.14是否正確

2 異常(Exception)分幾種類型?有什麼區別?寫出幾個常見異常

3 寫出幾種常見的java數據結構和特點(List,set,map等)

4 下列兩個方法有什麼區別

Public synchronized void method1(){}

Public void method2(){

Synchronized (obj){}

}

5 public class Test{

public static void so(String[] name){

String temp = name[0]

Name[0]=name[1];

Name[1] =temp;

}

Public static void so(string name(),String name1){

String temp=name0

Name0=name1;

Name1=temp;

}

Public static void main(String[] arg){

String[] name = new String[]{“mike”,”lily”};

String name0=”mike”;

String name1 = “lily”;

So(name);

System.out.println(name[0]+”,”+name[1]);

So(name0,name1);

System.out.println(name0+”,”+name1);

}

寫出結果

6以下數據庫操作的程序片段如何改進會更好?

Try{

Class.forNmae(“com.mysql.jdbc.Driver”);

Connection conn=DriverManager.getConnection(“jdbc:mySql://localhost/test”,”root”,

Statement stmt = conn.createStatement();

String sql=”select* from t_User where username=”””+name

+””and password =’’’+password+””;

ResultSet rs = stmt.executeQuery(sql);

If(rs.next()){

System.out.println(“User Name and password is correct”);

}else{

System.out.prinln(“User Name and password pair is invalidate”)

}

}catch(Exception e){

e.printStactTrace():

}

6 請問下列程序運行輸出結果是多少?

Public static void main(String[] afsaf){

List list1;

List list2;

List1 = new List();

List2 = list1;

List1.add(new Object());

System.out.println(list2.size());

}

數據庫orcacle

1從product表中取出price大於9.99的前100行數據
SELECT * FROM product WHERE rownum <=100 and price> 9.99
2. 接上題,要求取出滿足條件的第100行至200行數據
SELECT *
  FROM ( SELECT ROWNUM RN, A.* FROM PRODUCT A)
 WHERE RN >= 100
   AND RN <= 200
   AND PRICE > 9.99
3 獲取數據庫當前時間,並以yyyy-mm-dd HH:mm:ss的格式輸出
select to_char( sysdate , 'yyyy-mm-dd hh24:mi:ss' ) from dual;

SQL> select to_char(sysdate, 'yyyy-mm-dd amhh:mi:ss') from dual;
 
TO_CHAR(SYSDATE,'YYYY-MM-DDAMH
------------------------------
2012-12-18 下午02:37:23

數據中的索引和外鍵是什麼意思?有什麼用途?

4 下列Sql條件語句中的列都建有恰當的索引,但執行速度非常慢,說出原因並改寫

SELECT * FROM XXX WHERE substr(value,1,4)=’5378’
SELECT * FROM xxx WHERE nummber LIKE '5378%'
SELECT * FROM xxx WHERE value/30<1000
SELECT * FROM xxx WHERE nummber < 1000* 30

SELECT * FROM xxx WHERE convert(char(10).date,112) = ‘1999201’
SELECT * FROM xxx WHERE datevalue=to_date ('19990201' ,'yyyymmdd' )

Web 表現層

1 javascript 如何效驗一個字符串是否爲數字?舉例說明

2 如何動態改變DIV對象的顯示內容?

3 如下

<script type = “text/javascript”>

Runction lop(){

For(int i=0;i<new Date().getMonth();i++)

{<%System.out.println(“@_@”)%>}

}

Lop();

</script>

請問此代碼是否有問題,@_@輸出幾次

4如何判斷頁面中的一個checkbox是否被選中?如何禁用它?如何判斷一個input的值是否爲空

5 下面一個css 樣式文件的片段,寫出每種定義方式的含義:

Td{width:100%;}

Td{width:100%;}

#td{width:100%}

Td input{font-size:20pt}

6 rward和redirect的區別

7 jsp中動態 INCLUDE與靜態INCLUDE的區別

8 jsp頁面中 <%%> <%! %>, <%=%> <%--  --%>有什麼區別

9 Form變淡的那個屬性是表單數據的傳送方式(GET/POST)?並簡要說明get/post方式有何區別

10 指出/images/123.jpg與images/123.jpg兩種寫法有什麼區別

11 列出你所用的HTml元素

二 進階(Optional):

-------此部分面試題可選

應用部署與優化

1 寫出設置java進程佔用內存的出示值和最大值的方法,如 java-Xss512k

2 寫出幾個Linux/unix系統的常用命令

三其他 必做題

1請寫出幾種你知道的設計模式

2 列舉幾個你常去的網站,類型不限,寫中文名亦可

3列舉最近一年來你讀過的技術類圖書、文章

 
1寫出HttpServletRequest和HttpSession的幾個主要方法,並且說明用法

2用代碼或者文字描述模板方法模式,代理模式,門面模式

3解釋下面幾個原則

開閉原則,里氏替換原則,依賴倒轉原則,迪米特法則

4描述Spring的IOC原理,並用代碼與xml文件描述

5 Hibernate的幾個常用的類及其作用(可以用代碼或者文字說明)

6說明公司,部門,職位,員工三者及其自身之間的關係,並用UML類圖來表示出他們之間的關係

7取出一個字符串中連續有相同字母的最大個數及該字母

例:字符串:aaaddxxxxxxxdddxxx返回值x,7

如果最大位數有多個,則返回第一個,列:字符串:aaabbb  返回值a,3

字符中取值範圍(a-z)和(Az)之間,且最大字符位數爲40

要求:請考慮代碼執行效率並注意編碼的風格

8請對一下場用的名詞進行解釋,並簡要說明其用途

1) 數據庫連接池

2) JTA與事物

3) 容器

4) JNDI  命名和目錄接口 

5) SessionBean

9談談你的對springMVC或Struts的理解:使用方法,數據流程,調用關係等

要列出主要使用java類型

10寫出一些你常用的eclipse快捷鍵並說明用法

11寫出一些java web系統中,你唱用的xml配置文件及其用途

12員工星表Tablex有。。。。。。

12.1請寫出SQL,找出所有姓張的員工,並按年齡從小到大排列

12.2取出BB崗位考評不合格的員工

12.3通過等值聯接,取出Name.position,score請寫出sql即輸出結果

12.4通過外聯,取出每個員工的Name,position,score請寫出Sql即輸出結果

12.5李四的年齡紀錄錯了,應該是21,請寫SQL,更具主鍵進行更新

12.6請寫SQL,zhaochu Tablex中沒有考評的記錄

12.7寫出,查詢稅務事業部,的本下級部門以及所有下級的下級不蒙,使用start with

12.88解釋下面幾個oracle函數的意義和用法或寫出一個實例SQL

Decode,nvl,case,with,intersect,minus,substr,having

 

筆試試卷(Java 語言部分)

姓名:                

聯繫方式:                                

1. which won’t cause a compiler warning or error?(多選)

a) float f = 1.3;

b) char c = ‘a’;

c) byte b = 257;

d) boolean b = null;

e) int i = 10;

2請選擇下面這段代碼的輸出結果?

int i = 0;

switch (i) {

case 0:

System.out.println("zero");

case 1:

System.out.println("one");

case 2:

System.out.println("two");

break;

case 3:

    System.out.println("three");

}

1) zero

2) zero,one

3) zero,one,two

4) zero,one,two,three

3.  public class Test{ 

   private static int j=0; 

   public static boolean methodB(int k){ 

     j+=k; 

    return true; 

   } 

   public static void methodA(int i){ 

    boolean b; 

    b=i>10&methodB(1); 

    b=i>10&&methodB(2); 

     } 

    public static void main(String args){ 

     methodA(0); 

17) 

     } 

     } 

   what is the value of j at line 17

1)

2)

3)2

4)3

4. If we execute the code below with “java Test Red Green Blue”, what is the result? 

public class Test{ 

public static void main(String[] args){ 

    String  foo=args[1]; 

    String  bar=args[2]; 

    String  baz=args[3]; 

    } 

what is the value of baz? 

A. baz has value of "" 

B. baz has value of null 

C. baz has value of "Red" 

D. baz has value of "Blue" 

E. baz has value of "Green" 

F. the code does not compile 

G. the program throw an exception

5. 請選擇下面這段代碼的輸出結果?

1)public class Test{ 

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

3) class Foo{ 

4) public int i=3; 

5) } 

6)Object o=(Object)new Foo(); 

7) Foo foo=(Foo)o; 

8)System.out.println(foo.i); 

9) } 

10) } 

A.compile error at line 6 

B.compile error at line 7 

C.compile error at line 8 

D.print out 3

6. 

int index=1; 

  String[] test=new String[3]; 

  String foo=test[index]; 

  what is the result of foo? 

   A. ""   B.null    C.throw a Exception   D.not compile

7. 下面的五個選擇中哪兩個描述是正確的?(多選)

  A. static inner class requires a static initializer 

  B. A static inner class requires an instance of the enclosing class 

  C. A static inner class has no reference to an instance of the enclosing class 

  D. A static inner class has accesss to the non-static member of the other class 

  E. static members of a static inner class can be referenced using the class 

     name of the static inner class

8. 請選擇下面這段代碼的輸出結果? 

class A{ 

   public int getNumber(int a){ 

    return a+1; 

    } 

    } 

   class B extends A{ 

     public int getNumber(int a, char c){ 

     return a+2; 

    } 

    public static void main(String[] args){ 

     B b=new B(); 

     System.out.println(b.getNumber(0)); 

    } 

   }       

   

  A. compilation succeeds and 1 is printed 

  B. compilation succeeds and 2 is printed 

  C. An error at line 8 cause compilation to fail 

  D. An error at line 14 cause compilation to fail

9. class ExceptionTest{ 

  public static void main(String args[]){ 

   try{ 

methodA(); 

   catch(IOException e){ 

System.out.println("caught IOException"); 

   

   catch(Exception e){ 

   System.out.println("caught Exception"); 

    

  } 

}

If methodA() throws a IOException, what is the result?

If we change the sequence of catch,whats the result?

10. 請寫出下面這段代碼的輸出結果?

public class Test{ 

public static void main(String[] args){ 

   StringBuffer a=new StringBuffer("A"); 

   StringBuffer b=new StringBuffer("B"); 

   operate(a,b); 

   System.out.pintln(a+","+b); 

public static void operate(StringBuffer x, StringBuffer y){ 

    x.append(y); 

    y=x; 

11. 請寫出下面這段代碼的輸出結果?

class Shape{

  Shape(int i){

    System.out.println("This is Shape" + i);

  }

}

public class Circle extends Shape{

  static Shape s1 = new Shape(1);

  Shape s2 = new Shape(3);

  Circle(int i){

    super(i);

    System.out.println("This is Circle" + i);

  }

  public static void main(String args[]){

    Circle c1 = new Circle(2);

  }

}

12. 數組有沒有length()這個方法? String有沒有length()這個方法?

JAVA軟件開發筆試題目 

答題人姓名:            答題時間:2011年  月  日

一、 JAVA部分

1、 QUESTION NO: 1

public class Test {

public static void changeStr(String str){

str="welcome";

}

public static void main(String[] args) {

String str="1234";

changeStr(str);

System.out.println(str);

}

}

Please write the output result :[    ]

2、 QUESTION NO:2

public class Test {

static boolean foo(char c) {

System.out.print(c);

return true;

}

public static void main( String[] argv ) {

int i =0;

for ( foo('A'); foo('B')&&(i<2); foo('C')){

i++ ;

foo('D');

  }  

  }  

}  

What is the result?    [       ]

A. ABDCBDCB

B. ABCDABCD

C. Compilation fails.

D. An exception is thrown at runtime.

3、 QUESTION NO: 3

public class Outer{

public void someOuterMethod() {

// Line 3

}

public class Inner{}

public static void main( String[]argv ) {

Outer o = new Outer();

// Line 8

}

}

Which instantiates an instance of Inner?   [    ]

A. new Inner(); // At line 3

B. new Inner(); // At line 8

C. new o.Inner(); // At line 8

D. new Outer.Inner(); // At line 8//new Outer().new Inner()

4、 QUESTION NO: 4

Which method is used by a servlet to place its session ID in a URL that is written to the servlet’s response output stream?       ]

A. The encodeURL method of the HttpServletRequest interface.

B. The encodeURL method of the HttpServletResponse interface.

C. The rewriteURL method of the HttpServletRequest interface.

D. The rewriteURL method of the HttpServletResponse interface.

5、 QUESTION NO: 5   

Which two are equivalent? (Choose two)  [    ]

A. <%= YoshiBean.size%>

B. <%= YoshiBean.getSize()%>

C. <%= YoshiBean.getProperty("size")%>

D. <jsp:getProperty id="YoshiBean" param="size"/>

E. <jsp:getProperty name="YoshiBean" param="size"/>

F. <jsp:getProperty id="YoshiBean" property="size"/>

G. <jsp:getProperty name="YoshiBean" property="size"/>

6、 併發中,設置當前線程後臺運行的方法是  )

A.setBackground(Object)

B.setDaemon(true)

C.isBackground(Object)

D.isDaemon(true)

 

7、 假定變量x=8的類型是int(它可以存放着負值),則哪些方式能正確地使x的值翻倍,請選出4個正確的答案。(     )

A.x<<1;

B.x=x*2;

C.x*=2;

D.x+=x;

E.x<<=1;

8、 下面的包裝類中,有兩個不是由Number派生的,而直接擴展了Object類,請選出。(     )

A.Boolean

B.Byte 

C.Character

D.Short

F.Integer

G.Double

9、 以下哪個不是CSS的選擇符?  

A.對象選擇符

B.類選擇符

C.ID選擇符

D.包含選擇符

10、 下列哪些集合實現是線程安全的?請選出2個正確的答案。(    )

A.ArrayList

B.HashTable

C.Vector

D.HashMap

E.LinkedList

11、 OverloadOverride的區別Overloaded的方法是否可以改變返回值的類型?     (答案寫在背面標明題號)

12、 abstract class和interface有什麼區別?   (答案寫在背面標明題號)

13、 請列舉幾個你熟悉的設計模式,並簡單描述你的理解。     

(答案寫在背面標明題號)

14、 面向對象編程語言有哪幾個主要特性?並簡單說明你對每個特性的理解

      (答案寫在背面標明題號)

15、 請用冒泡排序實現一個對一列數字的排序:

  {2,10,3,50,78,22,34,30,65}數字是動態輸入的.請以類的形式實現.

      (答案寫在背面標明題號)

二、 數據庫部分

1. 在數據庫中有一名爲my_addr的表,其中包含一名爲addr_name的列,其列屬性爲varchar(40),

請問如何統計此表addr_name列中以'CQ'開頭的記錄數:

答案:select count(*) from my_addr where addr_name like 'CQ%'

2. 在數據庫中名爲my_salary的表,執行select * from my_salary之後輸入內容如下:

NAME         SAL       

----------      ----------

a                6.23

b                6.23

c                6.23

-                6.23

-                6.23

-                6.23

請問執行select count(name) from my_salary之後輸出的結果爲多少:

A. 

B. 

C. 輸出結果爲空

D. 以上答案都不對

答案:

3. 通過數據庫客戶端查詢程序向數據庫系統正確提交了一個將執行很長時間的查詢語句之後,客戶端查詢程序異常關閉,則在數據庫系統中正在執行的這個語句將

A. 被數據庫管理系統強行中止執行。

B. 繼續執行、直到結束。

C. 執行一段時間後,自行退出。

D. 以上答案都不對

答案:

4. 以下選項中全部屬於事務控制的語句是:

A. Select、update、create indexBegin Tran

B. Begin、Continue、delete

C. Rollback、commit

D. 以上答案都不對

答案:

5. 數據庫索引是在基本表的列上建立的一種數據庫對象,它同基本表分開存儲,使用它的主要目的是:

A. 增加數據插入速度

B. 增加數據刪除速度

C. 提高數據查詢速度

D. 保證數據唯一性

E. 增加數據安全性

答案:

6. 若數據庫事務T對數據對象A加上X鎖,則以下描述哪個正確? 

A. 只允許T修改A,其它任何事務都不能再對A加任何類型的鎖。

B. 只允許T讀取A,其它任何事務都不能再對A加任何類型的鎖。 

C. 只允許T讀取和修改A,其它任何事務都不能再對A加任何類型的鎖。

D只允許T修改A,其它任何事務都不能再對AX鎖。

答案:

7. 在DB2 UDB數據庫中,爲了加快完成表對錶大批量數據插入操作,可以採用的方法:

A. 先刪除被插入表上的優化查詢索引再批量插入數據.

B. 在特定情況下,可以關閉被插入表的日誌再進行批量插入操作.

C. 在特定情況下,可以將被插入表的鎖定粒度指定爲表級鎖再批量插入數據.

D. 以上答案均不正確.

答案:

8. 在DB2 UDB分區數據庫中分區表DW_CUST_MM的列serv_id 爲主鍵,其屬性爲decimal(9,0),另一張分區表DW_SERV_MM的serv_id爲唯一索引,兩張表的記錄數均接近1億條,針對以下SQL語句,請從SQL優化的角度選擇DW_SERV_MM表比較合理的建表語句.

   Select count(*),a.MKT_COMM_AREA_ID from DW_SERV_MM a left join DW_CUST_MM b on a.serv_id=b.serv_id group by a.mkt_comm_area_id

A. 

CREATE TABLE DW_SERV_MM  

  (

     SERV_ID DECIMAL(9,0) , 

     MKT_COMM_AREA_ID DECIMAL(9,0) , 

     EXCHANGE_ID DECIMAL(9,0) 

  )   

PARTITIONING KEY (MKT_COMM_AREA_ID)  USING HASHING  

IN TBS_ODS_01

B.

CREATE TABLE DW_SERV_MM  

  (

     SERV_ID DECIMAL(9,0) , 

     MKT_COMM_AREA_ID DECIMAL(9,0) , 

     EXCHANGE_ID DECIMAL(9,0) 

  )   

PARTITIONING KEY (SERV_ID)  USING HASHING  

IN TBS_ODS_01

C.

CREATE TABLE DW_SERV_MM  

  (

     MKT_COMM_AREA_ID DECIMAL(9,0) , 

     SERV_ID DECIMAL(9,0) , 

     EXCHANGE_ID DECIMAL(9,0) 

  )   

IN TBS_ODS_01

D.以上答案都正確

答案:

9. 在關係數據庫中出於性能考慮一般都是避免使用IN子名的,請寫出使用EXISTS對以下SQL語句進行適當優化後的語句:

  SELECT * 

  FROM EMP 

  WHERE EMPNO > 0

  AND DEPTNO IN (SELECT DEPTNO 

  FROM DEPT 

  WHERE LOC = ‘MELB’)

  答案:

10. 請簡單說明ORACLE綁定變量是什麼?綁定變量有什麼優缺點?

答案: 

11. 什麼是事務 (transaction) ?

答案: 

 
 
1、你認爲jsp servlet 開發與框架開發有什麼不同 ?
2、寫幾個 request session 中得常用方法,簡單說明功能。
3、寫幾個常用得jstl的核心標籤,並簡單說明功能。
4、寫幾個常用得javascript方法,並簡單說明功能。
5、用你的理解描述一下hibernate   它解決了什麼問題? 它有什麼優點缺點?
6、描述一下mvc,結合一個實際的 mvc框架是如何實現的(struts 1 2 springmvc  webwork
7spring hibernate整合後帶來哪些好處?
8、簡述一下openSessionInView得原理,以及優缺點。
9、寫幾個 你用過得 annotation @ ),並簡單描述一下他們的作用。
10、平時用什麼IDE (比如 eclipse netbeans),使用哪些快捷鍵?
11、平時開發中使用哪些輔助工具?
12、你平時都去哪些技術論壇,方便的話留下 用戶名(id ,登錄名稱)。
13、軟件業最近發生了那些事?請根據你心目中的大小排序列出。

機試部分

使用框架編寫一個簡單功能要求必須使用spring和hibernate,配置方式使用annotation或xml,應用annotation配置附加10分。

mvc框架可選擇:

Struts1

Struts2

SpringMVC3(有高附加分)

功能要求:

1. 用戶登錄

 

2. 用戶註冊

 

3. 用戶修改密碼

 

4. 用戶查詢

 

5. 用戶刪除

界面效果可參照圖示(以功能作爲主要評分標準),要求如下:

1. 用戶輸入用戶名及密碼登錄,登錄後跳轉至用戶列表頁面。 

2. 未註冊用戶需要進行註冊,註冊後直接跳轉至用戶列表頁面。

3. 用戶列表頁面中包含修改密碼、用戶查詢及用戶刪除功能。



發佈了16 篇原創文章 · 獲贊 16 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章