8.request/response/servlet學(xué)習(xí)筆記

本文內(nèi)容
什么是Servlet與Servlet是如何執(zhí)行的
了解Servlet實(shí)現(xiàn)關(guān)系
手動(dòng)和自動(dòng)開(kāi)發(fā)Servlet

servlet生命周期(面試)
servlet的配置(訪問(wèn)路徑/啟動(dòng)時(shí)加載)
ServletConfig對(duì)象API的使用
ServletContext對(duì)象API的使用

Response響應(yīng)對(duì)象的使用
Request請(qǐng)求對(duì)象的使用

簡(jiǎn)單說(shuō):
Servlet
response
request

目標(biāo):

1.Servlet(創(chuàng)建,配置,訪問(wèn),手動(dòng)和自動(dòng)創(chuàng)建和配置Servlet)

2.掌握Servlet的生命周期方法以及調(diào)用時(shí)機(jī)当辐;
掌握Servlet的訪問(wèn)路徑以及優(yōu)先級(jí)關(guān)系
3.掌握ServletContext對(duì)象
獲取web工程名(getContextPath())
獲取web項(xiàng)目下的文件資源;
InputStremm getResourseAsStream(“”)
String getRealPath(“”);
Class類(lèi)
getResourseAsStream(“”)
存值花颗、取值、移除值操作。

掌握HttpServletResponse對(duì)象重定向、響應(yīng)亂碼問(wèn)題的解決方法

掌握HttpServletRequest對(duì)象如何接受表單請(qǐng)求參數(shù);
掌握Request域?qū)ο蟠嬷档锞汀⑷≈怠⒁?除值的操作闷串;
掌握post請(qǐng)求瓮钥、get請(qǐng)求亂碼原因以及解決辦法

導(dǎo)入項(xiàng)目有嘆號(hào)(解決)

5.1 Servlet的概述
.理解什么是Servlet?
.如何創(chuàng)建一個(gè)Servlet烹吵?(了解)

1碉熄、Servlet:是運(yùn)行在 Web 服務(wù)器中的一個(gè)Java類(lèi)。通過(guò) HTTP協(xié)議接受客戶(hù)端的請(qǐng)求肋拔,同時(shí)也會(huì)給客戶(hù)端一個(gè)響應(yīng)锈津。

2.創(chuàng)建一個(gè)Servlet的思路:
a)創(chuàng)建一個(gè)類(lèi)實(shí)現(xiàn)Servlet接口,實(shí)現(xiàn)接口里面的方法
b)配置我們定義的Servlet

5.2 Servlet的入門(mén)
創(chuàng)建一個(gè)類(lèi)實(shí)現(xiàn)Servlet接口凉蜂,重寫(xiě)接口里面的方法

在web.xml中配置我們的Servlet

注意:
1.Servlet接口找不到
2.輸出中文是...
3.web.xml中 servlet-name要對(duì)應(yīng)上
4.<url-pattern>/hello</url-pattern>要以/開(kāi)頭
5.3 Servlet的執(zhí)行流程
理解Servlet的執(zhí)行流程琼梆,從而讀懂配置文件中的內(nèi)容。
打開(kāi)瀏覽器訪問(wèn),說(shuō)明
http://localhost:8080/web_test1/hello
6.1 Servlet的實(shí)現(xiàn)關(guān)系
SUN設(shè)計(jì)之初跃惫,是有野心叮叹,以后的互聯(lián)網(wǎng)不僅僅只使用http協(xié)議,可以通過(guò)GenericServlet實(shí)現(xiàn)爆存。HttpServlet是一個(gè)與協(xié)議相關(guān)的Servlet是專(zhuān)門(mén)用來(lái)處理HTTP協(xié)議的請(qǐng)求。通常編寫(xiě)一個(gè)Servlet一般都會(huì)讓這個(gè)Servlet繼承HttpServlet重寫(xiě)service方法蝗砾。
在service方法內(nèi)部根據(jù)請(qǐng)求方式不同執(zhí)行不同的doXXX的方法(get請(qǐng)求執(zhí)行doGet方法先较,如果是post請(qǐng)求就會(huì)執(zhí)行doPost方法)。
所以往往繼承了HttpServlet之后不需要重寫(xiě)service方法悼粮,只需要重寫(xiě)doGet和doPost方法即可闲勺。往往請(qǐng)求要處理的內(nèi)容的代碼都是一致的,所以需要讓doGet和doPost相互調(diào)
用可以簡(jiǎn)化編程扣猫。
6.2 Eclipse中使用Servlet模板
新建Servlet
完成Servlet的配置
查看web.xml文件,會(huì)自動(dòng)生成如下內(nèi)容:
1.1 Servlet的生命周期
.Servlet的生命周期方法有哪些菜循?
.Servlet的生命周期方法分別什么時(shí)候被調(diào)用?
Servlet生命周期總結(jié):
1.第一次訪問(wèn)servlet,servlet會(huì)被創(chuàng)建申尤,并將servlet對(duì)象常駐內(nèi)存癌幕,調(diào)用init方法進(jìn)行初始化操作,init方法只執(zhí)行一次昧穿。
2.開(kāi)啟一個(gè)線程勺远,調(diào)用service方法,用于處理來(lái)自瀏覽器端的請(qǐng)求时鸵,以后都是開(kāi)啟一個(gè)線程來(lái)處理瀏覽器端請(qǐng)求胶逢。(執(zhí)行多次)
3.當(dāng)tomcat服務(wù)器正常關(guān)閉時(shí),會(huì)調(diào)用destroy方法將servlet銷(xiāo)毀。
代碼參見(jiàn):web01\src\com\itheima\servlet\demo1\ServletDemo1.java
瀏覽器訪問(wèn):http://localhost:8080/web01/ServletDemo1
1.2 Servlet啟動(dòng)時(shí)加載的配置
.什么情況下需要設(shè)置啟動(dòng)服務(wù)器時(shí)加載Servlet初坠?
.如何設(shè)置Servlet的啟動(dòng)時(shí)加載和簸?
1、當(dāng)初始化一個(gè)Servlet的時(shí)間比較長(zhǎng)的時(shí)候碟刺,第一個(gè)訪問(wèn)的用戶(hù)需要等上一段時(shí)間比搭,這樣一來(lái)用戶(hù)體驗(yàn)會(huì)非常差。所以我們可以在啟動(dòng)服務(wù)器的時(shí)候初始化Servlet南誊,服務(wù)器啟動(dòng)完了身诺,Servlet也就初始化完成了。
2抄囚、在web.xml中配置:
1.3 Servlet的訪問(wèn)路徑的配置
.訪問(wèn)路徑分為哪幾種霉赡?
.對(duì)于同一個(gè)Servlet,訪問(wèn)路徑的優(yōu)先級(jí)是怎樣的幔托?
1穴亏、訪問(wèn)路徑分為:全路徑匹配、目錄匹配重挑、擴(kuò)展名匹配嗓化,實(shí)際上目錄匹配也屬于全路徑匹配。
全路徑匹配:以/開(kāi)頭谬哀,例如:/ServletLife刺覆、/abc/ ServletLife; /a/b/c.do
目錄匹配:以/開(kāi)頭,結(jié)尾史煎;例如:/谦屑、/aaa/代表任意字符);
擴(kuò)展名匹配:以開(kāi)頭篇梭,.xxx結(jié)尾氢橙,例如:.do、.abc恬偷;(x是任意字符)
像aaa.do是不合法的
注意:不能同時(shí)使用/
開(kāi)頭悍手,.xxx結(jié)尾的路徑;例如: /.do 像:/aaa.do屬于全路徑匹配
2.全路徑匹配>目錄匹配>擴(kuò)展名匹配袍患,越精確優(yōu)先級(jí)越高坦康;
例如:
訪問(wèn)路徑:/website/aaa/demo1.do
完全:/aaa/demo1.do
目錄:/aaa/

擴(kuò)展名:.do
總結(jié):
完全路徑: /aaa/bbb, /hello
目錄匹配: /
, /ccc/*
擴(kuò)展名匹配: *.do, .abc,.action
hello ,錯(cuò)誤

2.1 ServletConfig對(duì)象
.ServletConfig對(duì)象的作用是什么?
ServletConfig對(duì)象是用來(lái)獲取Servlet的一些配置信息的协怒,例如獲取Servlet的名稱(chēng)涝焙,Servlet的初始化參數(shù)…
注意:Servlet的配置信息都是在web.xml的Servlet標(biāo)簽里面配置的。
總結(jié):
ServletConfig對(duì)象(了解):保存了Servlet在web.XML中的配置信息
this.getServletConfig(); //獲取
Iterator
2.2 ServletContext對(duì)象之獲取web項(xiàng)目信息
.什么是ServletContext孕暇?
.ServletContext對(duì)象有什么作用仑撞?
1赤兴、ServletContext對(duì)象又稱(chēng)為Servlet的上下文對(duì)象,保存了整個(gè)web項(xiàng)目的信息隧哮,通過(guò)這個(gè)上下文對(duì)象可以保存或者獲取web項(xiàng)目的信息桶良。
一個(gè)web項(xiàng)目只有一個(gè)ServletContext對(duì)象,服務(wù)器會(huì)為每個(gè)項(xiàng)目創(chuàng)建一個(gè)ServletContext對(duì)象沮翔。
2陨帆、可以獲取文件的MIME類(lèi)型、全局參數(shù)采蚀、web項(xiàng)目工程名疲牵。
.獲取文件的MIME類(lèi)型(文件下載時(shí)要用):
conf/web.xml
.獲取web項(xiàng)目請(qǐng)求工程名:
.獲取全局初始化參數(shù):
要點(diǎn):
ServletContext:一個(gè)web應(yīng)用只有一個(gè),它保存的是本web應(yīng)用的配置信息
1.獲取mimeType,(文件下載時(shí)要用)
2.獲取web工程名
3.獲取全局初始化參數(shù)
3.1 ServletContext對(duì)象之讀取web項(xiàng)目下文件
之前使用IO流就可以讀取文件(java項(xiàng)目中)。現(xiàn)在是一個(gè)web項(xiàng)目榆鼠,web項(xiàng)目需要發(fā)布到tomcat下才能訪問(wèn)的纲爸。獲取web項(xiàng)目下的文件如果使用傳統(tǒng)的IO就會(huì)出現(xiàn)問(wèn)題(原因:路徑中使用的是相對(duì)路徑,相對(duì)的是JRE環(huán)境)妆够。
讀取文件的代碼實(shí)現(xiàn)
public interface ServletContext
path的值:
D:\apache-tomcat-7.0.53\webapps\web01\WEB-INF\classes\db.properties
補(bǔ)充:
web工程中,普通java類(lèi)如何讀取文件..
web項(xiàng)目讀取文件的方式三:
Class類(lèi):
InputStream getResourceAsStream(String name)
3.2 ServletContext對(duì)象之作為域?qū)ο蟠嫒?shù)據(jù)
.什么是域?qū)ο?
.ServletContext如何進(jìn)行存值识啦、取值和移除值?

1神妹、如果把一個(gè)數(shù)據(jù)存到某個(gè)對(duì)象身上颓哮,在多個(gè)地方又能通過(guò)這個(gè)對(duì)象取出來(lái),那么這個(gè)對(duì)象存的值就有了一定的作用范圍鸵荠,這個(gè)對(duì)象也就稱(chēng)為域?qū)ο竺崦ervletContext作為一個(gè)域?qū)ο螅淖饔梅秶钦麄€(gè)web項(xiàng)目腰鬼,因?yàn)榉?wù)器會(huì)為每個(gè)web項(xiàng)目創(chuàng)建一個(gè)ServletContext對(duì)象嵌赠,只要這個(gè)web項(xiàng)目在服務(wù)器上沒(méi)被移除或者服務(wù)器沒(méi)有關(guān)閉,那么ServletContext域?qū)ο缶痛嬖谙ㄉ模砩系臄?shù)據(jù)也就在。
2齿税、存值彼硫、取值和移除值的方法:
域?qū)ο?
1.作用域,作用范圍
i.web服務(wù)器啟動(dòng),ServletContext就會(huì)創(chuàng)建.
ii.web服務(wù)器停止或項(xiàng)目從服務(wù)器卸載,ServletContext就會(huì)銷(xiāo)毀
2.setAttribute(String,Object)
getAttribute(Stirng)
Servlet總結(jié):
1.手動(dòng)自動(dòng)配置Servlet
2.Servlet生命周期
3.配置servlet啟動(dòng)時(shí)加載
4.Servlet訪問(wèn)路徑的配置
5.獲取ServletConfig
6.獲取ServletContext
1.getMimeType()
2.全局參數(shù)
3.getRealPath(“/”)
4.getResourceAsStream(“/”)
5.作為域?qū)ο笫褂?setAttribute,getAttribute)
4.1 Response對(duì)象的概述
.什么是Response?
當(dāng)用戶(hù)通過(guò)瀏覽器去訪問(wèn)服務(wù)器之后凌箕,服務(wù)器會(huì)對(duì)瀏覽器做出一個(gè)回答(響應(yīng))拧篮,這個(gè)響應(yīng)里面包含了很多信息,這些信息會(huì)封裝成到Response對(duì)象身上牵舱,這個(gè)對(duì)象也成為響應(yīng)對(duì)象串绩。
4.2 Response對(duì)象的API講解
掌握幾個(gè)常用的方法:
1、setHeader()方法是設(shè)置一個(gè)key對(duì)應(yīng)一個(gè)value的響應(yīng)頭信息芜壁,設(shè)置的頭信息會(huì)替換原來(lái)的頭信息礁凡;addHeader()方法是設(shè)置一個(gè)key對(duì)應(yīng)多個(gè)value的響應(yīng)頭信息高氮,添加的頭信息會(huì)追加到原來(lái)的頭信息后面
2、HttpServletResponse對(duì)象常用的方法
4.3 Response對(duì)象的API的代碼演示
.讓頁(yè)面重定向有幾種方式顷牌?

重定向的2中方式:

解決頁(yè)面輸出中文亂碼和定時(shí)刷新頁(yè)面:

1.重定向
2.定時(shí)刷新
3.向?yàn)g覽器輸出中文
4.4 頁(yè)面定時(shí)跳轉(zhuǎn)的案例擴(kuò)展
.如何實(shí)現(xiàn)倒計(jì)時(shí)的功能剪芍?
主要是使用javascript里面的循環(huán)定時(shí)器來(lái)倒計(jì)時(shí)。
代碼參見(jiàn):web01\WebContent\response\demo1.html
訪問(wèn):http://localhost:8080/web01/response/demo1.html
5.1 Response對(duì)象響應(yīng)的中文亂碼處理

字符流是有緩沖區(qū)的窟蓝, response設(shè)計(jì)默認(rèn)的緩沖區(qū)編碼是ISO-8859-1罪裹,這個(gè)字符集不支持中文的。所以一定會(huì)出現(xiàn)亂碼問(wèn)題运挫,一旦出現(xiàn)亂碼問(wèn)題状共,我們只需要設(shè)置response字符流緩沖區(qū)的編碼和設(shè)置瀏覽器默認(rèn)打開(kāi)時(shí)候采用的字符集一致即可
總結(jié):
reponse響應(yīng)中文亂碼(記住下面的總結(jié)即可):

//1.向頁(yè)面輸出中文字符串
response.setContentType("text/html;charset=UTF-8");
response.getWriter().print("你好!");

        //2.向頁(yè)面輸出二進(jìn)制,文件

response.getOutputStream().write(byte[]);

  1. 注意:先設(shè)置編碼,后向頁(yè)面輸出
    response.getWriter().print("你好!");
    response.setContentType("text/html;charset=UTF-8");//放前面
    5.2 Request對(duì)象的概述及API的介紹
    .掌握獲取請(qǐng)求參數(shù)的方法
    .掌握Request作為域?qū)ο蟠嬷怠⑷≈岛鸵瞥档姆椒?br> 1谁帕、獲取請(qǐng)求參數(shù)的方法:
    Map<String,String[]>

2峡继、Request域存值、取值雇卷、移除值的方法:
5.3 Request對(duì)象的API的代碼演示
訪問(wèn):
結(jié)果:
6.1 Request對(duì)象接收表單請(qǐng)求參數(shù)
表單頁(yè)面:
接收請(qǐng)求參數(shù)
結(jié)果:
6.2 Request對(duì)象接收表單請(qǐng)求參數(shù)時(shí)中文亂碼處理
.post請(qǐng)求提交參數(shù)亂碼鬓椭,如何解決?
.get請(qǐng)求提交參數(shù)亂碼, 如何解決
1关划、post請(qǐng)求提交的參數(shù)是在請(qǐng)求體中傳遞的小染,數(shù)據(jù)會(huì)存放在request字符緩沖區(qū)里面,而緩沖區(qū)默認(rèn)編碼是iso-8859-1編碼贮折,所以我們只需要設(shè)置緩沖區(qū)編碼為utf-8即可裤翩。
2、get請(qǐng)求提交的參數(shù)是在地址欄中傳遞的額调榄,瀏覽器會(huì)對(duì)數(shù)據(jù)進(jìn)行一次編碼踊赠,數(shù)據(jù)發(fā)送到服務(wù)器之后,服務(wù)器默認(rèn)使用iso-8859-1進(jìn)行解碼每庆,這樣亂碼就產(chǎn)生了筐带。要知道我們程序是不應(yīng)該改瀏覽器和服務(wù)器的字符集,所以缤灵,我們只能倒著編碼和解碼一次就可獲得原來(lái)的字符伦籍。如下圖所示:
代碼演示:
request請(qǐng)求參數(shù)亂碼的解決:
//解決post亂碼
request.setCharacterEncoding("utf-8");
request.getParameter("name");
//解決get方式亂碼
String name = request.getParameter("name");
name = new String(name.getBytes("iso-8859-1"),"utf-8");
總結(jié):
Servlet
1.手動(dòng)和自動(dòng)創(chuàng)建Servlet,并配置,可以通過(guò)瀏覽器訪問(wèn)到
2.Servlet生命周期方法有哪些.何時(shí)執(zhí)行.
3.配置Servlet啟動(dòng)時(shí)加載
4.掌握Servlet 的URL的3種配置方式
5.獲取ServletConfig(了解)
6.獲取ServletContext
a.getMimeType()文件下載時(shí)使用
b.String getRealPath(“/”)
c.InputStream getResourceAsStream(“/”)
2)作為域?qū)ο笫褂?1.有3個(gè)方法setAttribute(String,Object),getAttribute(String),removeAttribute(String) 2.范圍多大)
Response
setStatus()
setHeader(“key”,”value”)
getWriter()
getOutputStream() ; //下載時(shí)用
sendRedirect(“path”);
setContentType(“text/html;charset=utf-8”);
Request
String getMethod();
getRemoteAddr();
getHeader(“User-Agent”);
String getParameter(String);
String[] getParameterValues(String)
Map<String,String[]> getParameterMap()
目標(biāo):
1.掌握Servlet的生命周期方法以及調(diào)用時(shí)機(jī);
掌握Servlet的訪問(wèn)路徑以及優(yōu)先級(jí)關(guān)系
2掌握ServletContext對(duì)象
獲取web工程名
獲取web項(xiàng)目下的文件資源腮出;
存值帖鸦、取值、移除值操作胚嘲。
3.掌握HttpServletResponse對(duì)象,重定向作儿、
響應(yīng)亂碼問(wèn)題的解決方法
4.掌握HttpServletRequest對(duì)象如何接受表單請(qǐng)求參數(shù);
掌握Request域?qū)ο蟠嬷挡雠⑷≈倒ッ獭⒁? 除值的操作晾嘶;
掌握post請(qǐng)求、get請(qǐng)求亂碼原因以及解決辦法
post
request.setCharactorEncoding(“utf-8”);
get:
new String(getParameter(“name”).getBytes(“iso-8859-1”),”utf-8”)
中文亂碼.
1.請(qǐng)求亂碼
①get
a.String name = request.getParameter(“username”);
b.name = new String(name.getBytes(“iso-8859-1”),”utf-8”);
②post
a.request.setCharacterEncoding(“utf-8”);
2.響應(yīng)中文亂碼
(1)response.setContentType(“text/html;charset=utf-8”);

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末口注,一起剝皮案震驚了整個(gè)濱河市变擒,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌寝志,老刑警劉巖娇斑,帶你破解...
    沈念sama閱讀 216,843評(píng)論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異材部,居然都是意外死亡毫缆,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,538評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門(mén)乐导,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)苦丁,“玉大人,你說(shuō)我怎么就攤上這事物臂⊥” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 163,187評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵棵磷,是天一觀的道長(zhǎng)蛾狗。 經(jīng)常有香客問(wèn)我,道長(zhǎng)仪媒,這世上最難降的妖魔是什么沉桌? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,264評(píng)論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮算吩,結(jié)果婚禮上留凭,老公的妹妹穿的比我還像新娘。我一直安慰自己偎巢,他們只是感情好蔼夜,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,289評(píng)論 6 390
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著压昼,像睡著了一般挎扰。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上巢音,一...
    開(kāi)封第一講書(shū)人閱讀 51,231評(píng)論 1 299
  • 那天,我揣著相機(jī)與錄音尽超,去河邊找鬼官撼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛似谁,可吹牛的內(nèi)容都是我干的傲绣。 我是一名探鬼主播掠哥,決...
    沈念sama閱讀 40,116評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼秃诵!你這毒婦竟也來(lái)了续搀?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 38,945評(píng)論 0 275
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤菠净,失蹤者是張志新(化名)和其女友劉穎禁舷,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體毅往,經(jīng)...
    沈念sama閱讀 45,367評(píng)論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡牵咙,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,581評(píng)論 2 333
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了攀唯。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片洁桌。...
    茶點(diǎn)故事閱讀 39,754評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖侯嘀,靈堂內(nèi)的尸體忽然破棺而出另凌,到底是詐尸還是另有隱情,我是刑警寧澤戒幔,帶...
    沈念sama閱讀 35,458評(píng)論 5 344
  • 正文 年R本政府宣布吠谢,位于F島的核電站,受9級(jí)特大地震影響溪食,放射性物質(zhì)發(fā)生泄漏囊卜。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,068評(píng)論 3 327
  • 文/蒙蒙 一错沃、第九天 我趴在偏房一處隱蔽的房頂上張望栅组。 院中可真熱鬧,春花似錦枢析、人聲如沸玉掸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,692評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)司浪。三九已至,卻和暖如春把沼,著一層夾襖步出監(jiān)牢的瞬間啊易,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,842評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工饮睬, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留租谈,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,797評(píng)論 2 369
  • 正文 我出身青樓捆愁,卻偏偏與公主長(zhǎng)得像割去,于是被迫代替她去往敵國(guó)和親窟却。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,654評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理呻逆,服務(wù)發(fā)現(xiàn)夸赫,斷路器,智...
    卡卡羅2017閱讀 134,652評(píng)論 18 139
  • 這部分主要是與Java Web和Web Service相關(guān)的面試題咖城。 96茬腿、闡述Servlet和CGI的區(qū)別? 答...
    雜貨鋪老板閱讀 1,404評(píng)論 0 10
  • 從三月份找實(shí)習(xí)到現(xiàn)在,面了一些公司酒繁,掛了不少滓彰,但最終還是拿到小米、百度州袒、阿里揭绑、京東、新浪郎哭、CVTE他匪、樂(lè)視家的研發(fā)崗...
    時(shí)芥藍(lán)閱讀 42,242評(píng)論 11 349
  • 天氣逐漸轉(zhuǎn)涼了,寶貝腸胃不好的可以試試這款脆皮香蕉夸研。 食材:香蕉1個(gè) 雞蛋1個(gè) 米粉1勺 操作:1.把香蕉切塊備用...
    田野_4750閱讀 269評(píng)論 0 1
  • 最近幾年各類(lèi)男士幾乎都鐘愛(ài)成熟性感的絡(luò)腮胡子亥至,看來(lái)這個(gè)造型仍然非常流行悼沈。 以下是HISDRESS girls 為男...
    穿衣打扮搭配閱讀 1,648評(píng)論 0 50