java面試題集002

002-1 sql函數
002-2 struts生命週期(運行機制)以及具體的對象調用順序,例如ActionForm什麼時候初始化
002-3 struts 標籤
002-4 java中垃圾回收那些對象,什麼時候做垃圾回收
002-5 服務器怎麼判斷是否支持cookies 

002-1
過關答案:
 聚集函數,(單行函數)時間函數,字符函數…
 如sum max min count…是聚集函數,單行函數時是針對於聚集函數說的,聚集函數可用於多行數據的操作,單行函數只能作用一行數據

相關參考:
 http://www.builder.com.cn/2007/0913/504607.shtml
002-2
過關答案:
 請求(HelloWorld.do)----web.xml(ActionServlet)----struts-config.xml
 AciontServlet根據請求路徑即/HelloWorld找到對應的action ,然後再找到其中的name對應的form-bean,做表單信息的封裝,然後找到validate,如果是true的話驗證表單信息(如果爲false直接通過),通過後找到對應Action類利用form-bean調用業務層的邏輯處理數據(不通過返回input對應的資源,做錯誤提示),然後將業務層返回的結果放到request,session,application等中返回actionforward,ActionServlet根據actionforward輸出對應的web資源!
 ActionForm在Action實例化之前創建

相關參考:
 http://caterpillar.onlyfun.net/GossipCN/Struts/WorkFlow.htm
 http://lingcm.javaeye.com/blog/23001
 當PrepareToMoveForumAction的時候是,會先從pageContext中查看有否prepareToMoveForumForm的對象,如果沒有,他將創建一個新的實例,然後調用此實例的validate方法,如果出現問題,那麼,他調用ActionMapping.getInput(),如果此時沒有配置input選項,那麼將拋出異常。因此,input選項存在的價值是:當validate沒有通過的時候告訴ActionServlet 應該返回到哪個頁面,這也就是爲什麼我必須爲prepareToUpdateForumAction的prepareToUpdateForumForm配置input屬性的原因……

002-3
過關答案:
相關參考:Struts架構和標籤庫介紹.doc
002-4
過關答案:java中垃圾回收哪些很久沒有用或者不用的對象,是在當資源緊張的時候進行垃圾回收的。
相關參考:
002-5
過關答案
相關參考:
 <script type="text/javascript">
 var cookieEnabled=(navigator.cookieEnabled)? true : false
 //判斷cookie是否開啓

 //如果瀏覽器不是ie4+或ns6+
 if (typeof navigator.cookieEnabled=="undefined" && !cookieEnabled){
 document.cookie="testcookie"
 cookieEnabled=(document.cookie=="testcookie")? true : false
 document.cookie="" //erase dummy value
 }

 //if (cookieEnabled)
 //if cookies are enabled on client's browser
 //do whatever

 </script>

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章