日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

JavaWeb学习之Path总结、ServletContext、ServletResponse、ServletRequest(3)

發布時間:2025/4/14 java 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JavaWeb学习之Path总结、ServletContext、ServletResponse、ServletRequest(3) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1、Path總結1、java項目1 File file = new File("");file.getAbsolutePath();* 使用java命令,輸出路徑是,當前java命令停留的盤符* F:\workspaces\20141123\demo\bin* 使用myeclipse或eclipse運行時* F:\workspaces\20141123\demo2 File file = new File("/");file.getAbsolutePath();* 獲得當前盤符* F:\3 URL url = Hello.class.getClassLoader().getResource("");* 獲得路徑,使用類加載器* F:/workspaces/20141123/demo/bin/* 當前類被加載時,所在的文件根目錄4 URL url = Hello.class.getClassLoader().getResource("/");* 不能使用* null2、web項目1、通過servletcontext獲得文件,WebRoot根目錄下的文件ServletContext sc = this.getServletContext();* 獲得實際路徑* sc.getRealPath("/1.html");* 獲得URL* URL url = sc.getResource("/1.html"); * 獲得流【**】* InputStream is = sc.getResourceAsStream("/1.html");如果要獲取WebRoot/page/abc/2.html,則InputStream is = sc.getResourceAsStream("/page/abc/2.html");2、web的相對路徑* 前提:相對當前的頁面1.html* 使用分類:1、abc:與當前頁面同級的目錄或servlet的名稱* <a href="c/c.html">c.html</a><br>2、/abc:相對于web站點,%tomcat%/webapps/* <a href="/day06_web/b/c/c.html">c.html</a><br>3、./abc:當前目錄,與第一種情況相同* <a href="./c/c.html">c.html</a><br>4、../abc:上一次目錄* <a href="../b/c/c.html">c.html</a><br>總結:操作過程當前頁面:http://localhost:8080/day06_web/b/b.html目標頁面:http://localhost:8080/day06_web/b/c/c.html/ -- webapps -- http://localhost:80802、ServletContext* 對當前web項目上下文的描述(對當前web項目所有內容的描述),由tomcat在啟動時創建,tomcat關閉時銷毀。說白了,也就是說可以管理WebRoot下的文件,比如讀取WebRoot下的文件* servlet -- > init(ServletConfig) --> config.getServletContext();* 當前servlet的所在的項目* tomcat為每一個web項目單獨創建一個區域,用來管理整個項目。此區域成為ServletContext* 管理當前項目【*****】ServletContext sc = this.getServletContext();//源碼其實就是config.getServletContext()* 獲得實際路徑,要求必須/開頭* sc.getRealPath("/1.html");//得到WebRoot根目錄下1.html的絕對路徑* 操作數據* add set get remove delete* setAttribute/getAttribute/removeAttribute* ServletContext對象對所有的servlet共享數據* 給當前web項目配置內容【**】* 配置文件的位置:web.xml* 配置內容,例如配置數據庫連接字符串<context-param><param-name>username</param-name><param-value>root</param-value></context-param>* 如何讀取//獲得ServletConetxtServletConetxt sc = this.getServletContext();//獲得所有的配置信息名稱<context-param><param-name>username</param-name>Enumeration<String> names = sc.getInitParameterNames();while(names.hasMoreElements()){String value = sc.getInitParameter(name);System.out.println("context:"+name+":"+value);}* context root* 當前ServletContext所指web項目的根* tomcat --> webapps/webName/* myeclipse -->webName/WebRoot/3、ServletResponse* 服務器對瀏覽器做出的響應,將需要發送給瀏覽器的所有數據全部存放在此對象上。* 發送數據,使用流操作,將所需要的數據,存放在指定的流中,數據將顯示到瀏覽器中HttpServletResponse response ;* 字符流* response.getWriter();* 字節流* response.getOutputStream();* 當使用getOutputStream時,不能使用getWriter* getOutputStream() has already been called for this response* 當使用getWriter時,不能使用getOutputStream* getWriter() has already been called for this response* 總結:兩個流同時只能使用一個* 字節流:getOutputStream,一般在程序中使用具有拷貝功能等* 發送中文* 不能發送* out.print(data); 不能發送中文數據 * 異常信息:java.io.CharConversionException Not an ISO 8859-1 character: 中* 可以發送* out.write(data.getBytes("UTF-8"));* 字符流:getWriter,一般在程序中發送數據內容* 發送中文* out.println("中文");* 亂碼【****】* response.setContentType("text/html;charset=utf-8");* 通知tomcat和瀏覽器發送數據的編碼* 注意:* 設置編碼時,必須放置在需要輸出語句之前,建議放置在doGet或doPost第一行4、ServletRequest* 瀏覽器向服務器的請求(瀏覽器將數據發送給服務器時,數據存放的地方)* 請求方式:GET和POST* GET:發送的數據,追加在請求的URL之上* POST:發送的數據在HTTP請求體中* 瀏覽器發送數據* 表單form,* method屬性:指定的請求方式* action屬性:接收數據的程序路徑* 服務器獲得瀏覽器發送的數據* 獲得單個數據* request.getParameter("username");獲取input type="radio"時,獲取的是選中的值* 獲得一組數據* request.getParameterValues("love");獲取input type="checkbox"時,獲取的是選中的值* 處理中文亂碼* request.setCharacterEncoding("UTF-8");* 注意:* 此方法只對POST請求有效,GET需要單獨處理* 需要放置在獲得數據之前,建議放在第一個行一般建議將處理doGet的方法交給doPost進行處理,在doPost中獲取request.setCharacterEncoding("UTF-8");String userName = request.getParameter("userName");如果非要在doGet中獲取,可以使用以下代碼:第一種方式:String userName = new String(request.getParameter("userName").getBytes("ISO-8859-1"),"UTF-8");第二種方式://得到參數字符串String query = request.getQueryString();//解碼String q = URLDecode.decode(query,"UTF-8");結果:q:uername=中文

?

轉載于:https://www.cnblogs.com/yxlblogs/p/4122356.html

總結

以上是生活随笔為你收集整理的JavaWeb学习之Path总结、ServletContext、ServletResponse、ServletRequest(3)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 日韩视频一区二区在线观看 | 先锋影视av | 国产色视频网站 | 丰满人妻一区二区三区免费视频棣 | 俺去操| 都市激情第一页 | 国产精品久久久久久 | 国产乱子伦精品无码专区 | 夜夜操影视 | 国产精品午夜电影 | 久久精品性 | 少妇av导航 | 好大好爽视频 | 在线久 | 欧美性猛交一区二区三区精品 | 精品国自产在线观看 | av夜色 | 意大利少妇愉情理伦片 | 国产96在线 | 亚洲 | 噜噜噜精品欧美成人 | 久久精品无码一区二区三区免费 | 亚洲精品国产精品乱码不卡√香蕉 | 91高清视频在线观看 | 欧亚一区二区三区 | 亚洲国产系列 | 日本乱子伦xxxx | 免费网站www在线观看 | 麻豆国产精品一区 | 美女av片 | 女人叫床高潮娇喘声录音mp3 | 天天射综合网站 | 日本精品三区 | 亚洲色图影院 | 久色电影| 中文字幕在线观看免费高清 | 亚洲综合影视 | 精品黄色av| 免费在线观看a级片 | 日韩精品久久久久久久电影99爱 | 亚洲一级黄色 | 欧美二三区 | www婷婷| 佐佐木明希av在线 | 亚洲欧美日韩专区 | 成人福利免费视频 | 国产精品三级av | 黄色同人网站 | 91色视频在线 | youjizz韩国 | 久视频在线 | 国产三级久久久久 | 精品人伦一区二区三区蜜桃免费 | 奇米四色7777| 亚洲性生活片 | 欧美情爱视频 | 91最新国产 | 日韩欧美中文字幕在线视频 | 日韩亚洲精品在线 | 亚洲 在线 | 泽村玲子av | 美女天天操 | 综合激情亚洲 | 99九九精品视频 | 日韩aaaaa| 草草影院国产第一页 | 在线播放av网址 | 亚洲自拍偷拍一区二区三区 | 国产aaaaaaa| 成年人在线免费观看 | 国产精品久久久久久久久免费 | sm乳奴虐乳调教bdsm | 天堂俺去俺来也www久久婷婷 | 五月综合激情 | 久久亚洲精品国产 | 波多野结衣av电影 | 丰腴饱满的极品熟妇 | 精品国产午夜 | 国产真实乱人偷精品视频 | 韩国三级bd高清中字2021 | 亚洲天堂久久久久 | 三级视频在线看 | xxxx日本免费| 亚洲色图欧美激情 | 国产1区| 国产中文一区 | 亚洲精品在线视频观看 | 亚洲欧美日韩色 | 成人尤物| 五月天激情开心网 | 亚洲美女在线播放 | www.五月激情| 免费一级网站 | 久久h| 国产精品国产三级国产aⅴ无密码 | 国产在线观看一区二区三区 | 97se在线 | 亚洲人成无码网站久久99热国产 | 亚洲av无码国产综合专区 | 中文字幕首页 |