上海齊著雲科技Java面試、筆試題

1.notifyAll有什麼不好?
如果調用notify,多個線程中只會有一個線程從休眠轉入阻塞狀態,這個線程會參與爭奪那個被synchronized的資源,而如果調用notifyAll,那麼所有休眠的線程都會轉入阻塞狀態去爭奪資源。

2. java事務代碼的書寫
Class.forName("com.mysql.jdbc.Driver");    
try{  
Connection con=DriverManager.getConnection("jdbc:mysql://localhost/dbtest", "root", "root");    
Statement stmt=con.createStatement();
System.out.println("開啓事務");    
con.setAutoCommit(false);  //關閉自動提交開啓事務
stmt.executeUpdate("insert into student values (’sw1’,’事務1’,’男’)");    
stmt.executeUpdate("insert into student values (’sw2’,’事務2’,’女’)");    
con.rollback();    
stmt.executeUpdate("insert into student values (’sw3’,’事務3’,’男’)");    
stmt.executeUpdate("insert into student values (’sw4’,’事務4’,’女’)");    
con.commit();  //如果你不提交那麼本次操作不會對數據庫造成任何    
System.out.println("事務提交");    
}catch(SQLException e){
System.out.println("數據庫操作出現異常");    


3.自己用java實現觀察者模式
可參考:http://www.cnblogs.com/mengdd/archive/2013/02/07/2908929.html
java中Observable、Observer使用方法可參考
http://blog.csdn.net/hfhwfw/article/details/38044381

4. java中的SHA的使用
try{  
String msg = "hello world";  
System.out.println("明文是:" + msg);  
MessageDigest md5 = MessageDigest.getInstance("SHA");   
byte[] srcBytes = msg.getBytes();  
md5.update(srcBytes);   
byte[] resultBytes=md5.digest();  
String result = new String(resultBytes);  
System.out.println("密文是:" + result);  
String result1 = new String(Hex.encode(resultBytes));  
System.out.println("16進制密文是:" + result1);  
} catch(NoSuchAlgorithmException e){  
e.printStackTrace();  

}  

5. 業務數據每天有2tb解決方案

6. 結構化數據庫與非結構化數據庫
在信息社會,信息可以劃分爲兩大類。一類信息能夠用數據或統一的結構加以表示,我們稱之爲結構化數據,如數字、符號;而另一類信息無法用數字或統一的結構表示,如文本、圖像、聲音、網頁等,我們稱之爲非結構化數據。結構化數據屬於非結構化數據,是非結構化數據的特例。 
隨着網絡技術的發展,特別是Internet和Intranet技術的飛快發展,使得非結構化數據的數量日趨增大。這時,主要用於管理結構化數據的關係數據庫的侷限性暴露地越來越明顯。因而,數據庫技術相應地進入了“後關係數據庫時代”,發展進入基於網絡應用的非結構化數據庫時代。所謂非結構化數據庫,是指數據庫的變長紀錄由若干不可重複和可重複的字段組成,而每個字段又可由若干不可重複和可重複的子字段組成。簡單地說,非結構化數據庫就是字段可變的數據庫。

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