Java面試題分享 servlet

2021-09-24 03:45:17 字數 1397 閱讀 2107

問:servlet的生命週期

答:當伺服器啟動的時候生命週期開始,然後通過init(),方法初始化servlet,再根據不同請求呼叫doget或dopost方法,最後再通過destroy()方法進行銷毀。

問:get和post的區別問:如何處理servlet的執行緒不安全問題

答:最簡單的就是不使用不去使用例項變數,使用final修飾變數,可以在servlet的執行緒裡面加上同步方法或同步塊。

問:jsp的重定向和**的流程有什麼區別

答:重定向是客戶端行為,**是伺服器端行為,重定向時伺服器產生兩次請求,重定向會導致request物件資訊丟失,**則不會,**的url不會變,request.getrequestdispatch().forward(),重定向的url會改變,response.getredirect().sendredirect()。

問:session的主要幾個方法的區別

答:session不能通過new建立,需要通過呼叫getsession()或者getsession(true)方法建立,第一次建立session的時候,就是訪問第一次乙個jsp頁面,銷毀session呼叫invalidate方法,通過setmaxinactiveinterval()可以設定session的生存時間,web.xml可以設定session的生存時間。

問:jsp九大內建物件問:jsp三大指令

答:page :指令是針對當前頁面的指令,include :用於指定如何包含另乙個頁面,taglib :用於定義和指定自定義標籤。

問:jsp七大動作問:會話跟蹤有哪些,他們的區別是什麼問:為什麼在session少放物件

答:因為session底層是由cookie實現的,當客戶端的cookie被禁用後,session也會失效,且應盡量少向session中儲存資訊,session的資料儲存在伺服器端。

問:404和500是什麼意思

答:404 :找不到url請求的路徑,一般是工程名不對或者拼寫錯誤,500 :伺服器內部錯誤,一般是伺服器內部**編寫錯誤,也有可能是拋異常導致。

問:寫出5種jstl常用標籤

答:,,,,。

問:說明一下jsp中和<%@ include file%>的區別

答:靜態包含在翻譯的時候,將多個jsp合併翻譯成了乙個servlert,動態包含在翻譯的時候,每個jsp檔案都翻譯成了對應servlet,在程式執行載入到jvm中的時候動態合併,動態包含可以傳遞引數。

Java面試題分享 Mybatis

問 在mybatis中,有兩種佔位符,區別是什麼 答 解析傳遞進來的引數資料,katex parse error expected eof got at position 21 進來的引數原樣拼接在sql中,是預編譯處理,是字串替換,使用 可以有效的防止sql注入,提高系統安全性。問 當實體類中的屬...

Java面試題分享 Dubbo

問 dubbo通訊協議問 dubbo的註冊中心 答 1 multicast 註冊中心 2 zookeeper 註冊中心 3 redis 註冊中心 4 註冊中心 問 dubbo的集群容錯 答 1 failover cluster 失敗自動切換,當出現失敗,重試其它伺服器 通常用於讀操作,但重試會帶來更...

面試題分享

1.css題 將下面的span標籤用css寫成有三槓的選單按鈕和叉號的關閉按鈕 看到有點懵,於是第一題我就空下了 2.在乙個固定寬高的div中讓乙個不知道寬高的左右居中,上下居中 這道題算會吧 3.隨機生成10000個不重複的八位數,然後篩選出其中的靚號 即尾號為aabb abab aaaa且不含4...