成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

servlet部分知識總結(jié)-創(chuàng)新互聯(lián)

1.解決中文顯示亂碼問題:servlet部分知識總結(jié)

對于servlet :servlet里面加入代碼response.setContentType("text/html;chartset=utf-8");
告訴tomcat不要使用默認(rèn)的編碼方式(iso-8859-1)來應(yīng)答客戶端,而要使用utf-8,
PrintWriter 寫入漢語就不會出現(xiàn)亂碼,也就是在jsp顯示的時候不會亂碼。

我們擁有十年網(wǎng)頁設(shè)計和網(wǎng)站建設(shè)經(jīng)驗,從網(wǎng)站策劃到網(wǎng)站制作,我們的網(wǎng)頁設(shè)計師為您提供的解決方案。為企業(yè)提供成都做網(wǎng)站、網(wǎng)站建設(shè)、外貿(mào)營銷網(wǎng)站建設(shè)、微信開發(fā)、重慶小程序開發(fā)、移動網(wǎng)站建設(shè)、HTML5建站、等業(yè)務(wù)。無論您有什么樣的網(wǎng)站設(shè)計或者設(shè)計方案要求,我們都將富于創(chuàng)造性的提供專業(yè)設(shè)計服務(wù)并滿足您的需求。

對于jsp :<%@page contentType = "text/html;chartset=utf-8"%>

jsp本質(zhì)上是一個servlet ,所以上面兩個設(shè)置本質(zhì)上是一樣的。

servlet獲取值的中文亂碼問題:

(1).有效方法:
String Luanmaname = request.getParamater("name"); //此name亂碼
String trueName = new String(Luanmaname.getBytes("iso-8859-1"),"utf-8");//此name不亂碼
但是數(shù)據(jù)過多的時候一個個處理麻煩
(2).針對post有效
request.setCharacterEncode("utf-8");//需要放在request.getParamater前面才能起作用
(3).針對get有效(在sever.xml里面設(shè)置)
<Connector port = "8080" ………… URIEncoding = "utf-8"/>

2.比較response.setContentType("text/html;chartset=utf-8")與request.setCharacterEncode("utf-8")的區(qū)別:
前者是對服務(wù)器向客戶端應(yīng)答的時候設(shè)置字符類型,主要對后面的PrintWriter out = response.getWriter();
out.write("程序員");這個write設(shè)置的,一般正式開發(fā)PrintWriter用的較少,此設(shè)置相應(yīng)用的也較少

而后者是服務(wù)器端獲取客戶端的內(nèi)容,來設(shè)置字符類型。因為tomcat也就是服務(wù)器端的編碼方式是iso-859-1
而且此設(shè)置只對post提交有效,要放在request.getParamater前面才可以影響到此方法

3.jsp頁面的
<%@page contentType = "text/html;chartset=utf-8"%> 是給服務(wù)器看的
<meta http-equiv = "Content-Type" content = "text/html;charset="utf-8">是給客戶端看的

4.jsp的請求轉(zhuǎn)發(fā)與重定向:
請求轉(zhuǎn)發(fā):
String name = request.getParamater("name");
RequestDispatcher rd = request.getRequestDispatcher("/selectservlet");//要跳轉(zhuǎn)的servlet的url-pattern
rd.forward(request,response);
轉(zhuǎn)發(fā)之后,request中的name還可以獲取,就是原來的request和response還存在
重定向:
String name = request.getParamater("name");
response.sendRedirect(request.getContextPath()+"/selectServlet");
或者response.sendRedirect("selectServlet");//這樣寫也可以,但不建議這樣寫
帶參數(shù)response.sendRedirect(request.getContextPath()+"/selectServlet?name="+name);

兩者的區(qū)別:
請求轉(zhuǎn)發(fā)可以傳參數(shù),數(shù)據(jù)不會丟失,重定向不可以,數(shù)據(jù)會丟失
請求轉(zhuǎn)發(fā)地址欄的url不會改變,重定向會發(fā)生變化
請求轉(zhuǎn)發(fā)不需要加webapp名稱,重定向或者加webapp名稱,或者不加/
請求轉(zhuǎn)發(fā)只能在一個web應(yīng)用程序內(nèi)進(jìn)行,重定向可以到其他應(yīng)用程序
請求轉(zhuǎn)發(fā)后面調(diào)用的方法類別與前面相同,而重定向全部變?yōu)間et請求,與之前的沒有關(guān)系
請求轉(zhuǎn)發(fā)是一次請求,重定向是多次請求(生產(chǎn)多個request對象)

5.paramater 與 attribute 區(qū)別:
(1).paramater是客戶端帶過來的(客戶端請求參數(shù)),attribute是在服務(wù)器端放入的數(shù)據(jù)
(2).paramater數(shù)據(jù)時只讀的,attribute數(shù)值是可讀寫的
(3).getParamater返回的數(shù)值是string類型,而getAttribute 返回的是object類型,需要強轉(zhuǎn)

6.修改session的失效時間
(1).在servlet代碼里面加入session.setMaxInactiveInterval(40);40s失效
(2).在tomcat的conf下設(shè)置sever.xml
   <session-config>
      <session-timeout>1</session-timeout> 1分鐘失效,默認(rèn)是30 ,也就是30分鐘失效
   </session-config>
但是會影響所有的項目
(3).在本項目的web.xml里面設(shè)置
   <session-config>
      <session-timeout>1</session-timeout> 1分鐘失效
   </session-config>
刪除session : session.invalidate();

7.js里面獲取java代碼request.setAttribute("aaa",name);的值
(1).取變量值
   var a = '<%=request.getAttribute("aaa")%>' ;
(2).也可以將這個值放在頁面上.再取出來.
   <input type="hidden" value="<%=request.getAttribute("aaa")%>" id="aaa"/>
   var a = document.getElementById('aaa').value ;

8.request對象和session對象的大區(qū)別是生命周期
request對象的生命周期是針對一個客戶端(說確切點就是一個瀏覽器應(yīng)用程序)的一起請求 當(dāng)請求完畢之后,request里邊的內(nèi)容也將被釋放
而session的生命周期也是針對一個客戶端 但是卻是在別人設(shè)置的會話周期內(nèi)(一般是20-30分鐘) session里邊的內(nèi)容將一直存在 即便關(guān)閉了這個客戶端瀏覽器 session也不一定會馬上釋放掉的

request和session的優(yōu)點和缺點很明顯
request占用資源比較少 安全性也比較高 可是相對來說 缺乏持續(xù)性
而session則相對來說 對資源的消耗會大點 安全性相對來說也會稍微低點 可是它能實現(xiàn)比如會話跟蹤技術(shù) 個有優(yōu)點和缺點
不過 個人覺得 如果可以使用request的情況下 盡量使用request 因為相對于服務(wù)器來說 資源的消耗這個問題還是比較重要的

request    HTTP請求開始到結(jié)束這段時間
session    HTTP會話開始到結(jié)束這段時間
application    服務(wù)器啟動到停止這段時間

9.get post 區(qū)別
(1).安全性 get < post get提交的數(shù)據(jù)會在瀏覽器地址欄顯示
(2).提交內(nèi)容大小 get < post 前者數(shù)據(jù)不能超過2k 后者不受限制,建議不大于64K
(3).響應(yīng)速度 get < post get要求服務(wù)器立即請求,post請求可能形成一個隊列請求

10.cookie與session的區(qū)別:
(1).存在的位置:cookie保存在客戶端,session保存在服務(wù)器端
(2).安全性:cookie的安全性比session弱
(3).網(wǎng)絡(luò)傳輸量:cookie通過網(wǎng)絡(luò)在客戶端和服務(wù)器之間傳輸,而session保存在服務(wù)器端,不需要傳輸
(4).生命周期(以20分鐘為例)
cookie的生命周期是累計的,從創(chuàng)建時開始計時,20分鐘后cookie生命周期結(jié)束,cookie就無效
session的生命周期是間隔的,從創(chuàng)建時開始計時,如果在20分鐘內(nèi)無訪問,則session失效,如果在20分鐘內(nèi),比如說19分鐘訪問session,
它的生命周期重新開始計算
另外。關(guān)機會影響session生命周期,但是對cookie無影響

網(wǎng)站欄目:servlet部分知識總結(jié)-創(chuàng)新互聯(lián)
文章分享:http://jinyejixie.com/article0/dpdcio.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站排名、定制網(wǎng)站ChatGPT軟件開發(fā)、品牌網(wǎng)站制作網(wǎng)站設(shè)計

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)
沙河市| 康乐县| 句容市| 二连浩特市| 泰兴市| 江孜县| 平塘县| 渭源县| 新津县| 商水县| 富裕县| 顺义区| 绥阳县| 龙口市| 清苑县| 镇雄县| 唐河县| 阿拉善右旗| 浦城县| 昂仁县| 南通市| 凭祥市| 井陉县| 广德县| 册亨县| 定兴县| 吉安市| 宣汉县| 芒康县| 和硕县| 西盟| 衢州市| 襄樊市| 晴隆县| 崇文区| 揭阳市| 孟州市| 江油市| 民权县| 江西省| 鄂托克旗|