日韩性视频-久久久蜜桃-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)的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 中文字幕一区二区三区精品 | 国产精品51麻豆cm传媒 | 国产精品一线二线三线 | 午夜网站在线观看 | 波多野吉衣中文字幕 | 黄色免费看片 | www.黄在线观看 | 国产一级二级三级视频 | 麻豆视屏 | 物业福利视频 | 一区二区三区影院 | 激情综合图区 | 免费看成年人视频 | av大帝在线观看 | 无码精品在线视频 | 少妇人妻精品一区二区三区 | 国产传媒第一页 | 超碰国产97| 国产视频第一页 | 国产又粗又猛又爽又黄的视频在线观看动漫 | 国产成人精品一区二区无码呦 | 日韩插插插 | 亚洲精品99999 | 天天操人人爽 | 99精品久久 | 曰女同女同中文字幕 | 日本手机看片 | 欧美xxxxav | 黄色工厂这里只有精品 | 毛片无码一区二区三区a片视频 | 成人久久一区二区 | 污污在线免费观看 | 成人黄色免费 | 天天爽天天爽夜夜爽毛片 | 麻豆成人精品 | 欧美黑大粗 | 欧美日韩一区二区在线观看视频 | 国产精品jizz在线观看软件 | 亚洲高清视频一区二区 | 干爹你真棒插曲免费 | 美女亚洲一区 | 欧美二区视频 | 中文字幕国产精品 | 91高潮大合集爽到抽搐 | 日日碰狠狠躁久久躁蜜桃 | 国产熟妇另类久久久久 | 狠狠躁日日躁夜夜躁2022麻豆 | 夜夜摸夜夜操 | 天天干夜夜添 | 精品久久久久成人码免费动漫 | 校园春色亚洲激情 | 色老板精品凹凸在线视频观看 | 午夜资源站| 亚洲天堂av一区 | 天堂v在线观看 | 亚洲美女在线播放 | aaa国产视频 | 99久久久精品 | 女人16一毛片| 国产精品视频一区二区三区不卡 | 四虎影视免费观看 | 国产艳妇疯狂做爰视频 | 麻豆影视网站 | 久久99在线 | 日韩久久电影 | julia一区二区三区中文字幕 | 国产精品国产a级 | 黄色网页免费看 | 91性生活| 中文字幕免费观看 | 亚洲国产精华液网站w | 欧美区一区二区三 | 夜夜嗨av一区二区 | 欧美高清二区 | 免费看日批视频 | 亚洲人成小说 | 国产中文字幕在线播放 | 国产真人毛片 | 一级性视频 | 日韩一级影片 | 欧美精品一区二区久久婷婷 | 欧美黑人又粗又大又爽免费 | 中国丰满老妇xxxxx交性 | www九九热 | 91超碰在线 | 亚洲精品午夜精品 | 射久久 | 亚一区二区 | 超碰97干 | 亚洲自拍第二页 | 碧蓝之海动漫在线观看免费高清 | 久操热久操 | 国产91在线播放 | 免费草逼视频 | 欧美视频一区二区三区四区在线观看 | 黄色片网站免费看 | 免费黄色在线播放 | 日韩人妻无码精品综合区 | 亚洲欧美综合精品久久成人 |