JavaJ2EE相關知識整理

一、Servlet的生命週期
     在Web容器中,Servlet主要經歷4個階段瀏覽器


     ①、加載Servlet:當Tomcat第一次訪問Servlet的時候,Tomcat會負責建立Servlet的實例
     ②、初始化Servlet:當Servlet被實例化以後,Tomcat會調用init()方法來初始化這個對象
     ③、處理服務:當瀏覽器訪問Servlet的時候,Servlet會調用service()方法處理請求
     ④、銷燬:當Tomcat關閉或者檢測打Servlet要從Tomcat刪除的時候,會自動調用destory()方法,讓該實例佔用的資源釋放掉。
二、Servlet是單例的嗎,爲何
     Servlet是單例的,瀏覽器屢次對Servlet的請求,通常狀況下,服務器只建立一個Servlet對象,也就是說,Servlet對象一旦建立了,就會駐留在內存中,爲後續的請求作服務,直到服務器關閉
三、GET和POST請求的區別
     GET請求暴露請求信息,不安全,POST請求隱藏了請求信息,較安全
     GET請求不能超過1KB,可傳輸的信息有限,不能上傳圖片
     POST請求沒有限制請求的數據大小,能夠作圖片的上傳
四、Tomcat中如何解決中文亂碼問題
     對於POST請求能夠設置請求編碼方式:request.setCharacterEncoding("UTF-8"),注意必須在獲取第一個參數以前設置,而且該方式只會POST方式有效
     對於GET請求能夠從新設置Tomcat的編碼方式,修改Tomcat的配置文件,在conf/server.xml文件中,在端口號配置段,添加URIEncoding=「UTF-8」安全

     
五、forward與redirect的區別
     forward:客戶端和瀏覽器只發出一次請求,地址欄不發生改變,資源是共享的
                    語法:request.getRequestDispatcher(path).forward(request,response)
     redirect:客戶端和瀏覽器端發送兩次請求,地址欄發生改變,資源不共享
                    語法:response.sendRedirect(String location)
六、session和cookie區別
    ①、session的數據存放在服務器端,cookie的數據存放在客戶端
    ②、cookie不是很安全,能夠分析存放在本地的cookie並進行cookic欺騙。session較安全
    ③、session會在必定時間內保存在服務器上,當訪問增多,會比較佔用服務器的資源,從性能方面cookie更有優點
    ④、單個cookie在客戶端的限制是3k,session無限制服務器

相關文章
相關標籤/搜索