1棕硫、servlet的生命周期:
a、實例化
b袒啼、初始化
c哈扮、處理請求服務(wù)
d、對象銷毀
簡述:servlet在首次訪問時會實例化一個servlet對象蚓再,然后調(diào)用init()方法初始化對象滑肉,繼而servlet可以處理接下來的請求服務(wù),當(dāng)web項目被移除或服務(wù)器關(guān)閉時摘仅,會調(diào)用derstory()靶庙,servlet對象被銷毀
2、 HttpServletRequest的常用方法:
a实檀、getMethod()
b惶洲、getContextPath()
c按声、getRequestURL()
d、getRequsetURI()
e恬吕、getQueryString()
3签则、過濾器的實現(xiàn)主要依靠哪幾個核心接口?闡述什么是過濾器鏈铐料?
a渐裂、Filter
b、FilterConfig
c钠惩、FilterChain
過濾器鏈:服務(wù)器會按web.xml中過濾器定義的先后順序組裝成一條鏈
4柒凉、HTTP請求結(jié)構(gòu)和請求行的組成部分:
請求結(jié)構(gòu):請求行、請求頭部篓跛、空行膝捞、請求數(shù)據(jù)
請求行:請求方法(GET,POST),URL字段愧沟,HTTP版本字段
5蔬咬、HTTP響應(yīng)結(jié)構(gòu)和狀態(tài)行的組成部分:
響應(yīng)結(jié)構(gòu):狀態(tài)行、消息報頭沐寺、響應(yīng)正文
狀態(tài)行:http版本+狀態(tài)碼+狀態(tài)代碼的文本描述
6林艘、常見的response的響應(yīng)類型及其客戶端分別對應(yīng)類型的展現(xiàn)形式:
a、text/plain:純文本
b混坞、text/html:HTML文檔
c狐援、text/xml:XML文檔
d、text/css:CSS文件
e究孕、text/mp3:MP3音頻
7啥酱、Tomcat的常用目錄結(jié)構(gòu)及其作用
bin:啟動和關(guān)閉應(yīng)用服務(wù)器的bat批處理命令
conf:支持配置Tomcat的文件
server.xml:是指端口號、設(shè)置域名或IP蚊俺、默認加載的項目懈涛、請求編碼
web.xml:設(shè)置Tomcat支持的文件類型
context.xml:用來配置數(shù)據(jù)源
tomcat-users.xml:配置管理Tomcat的用戶與權(quán)限
lib:存放jar包
temp:Tomcat運行過程中產(chǎn)生的臨時文件
webapps:存放項目,以文件或jar包的形式
work:存放Tomcat運行時的編譯后文件
8泳猬、HTTP協(xié)議(簡略描述):
HTTP協(xié)議又稱超文本傳輸協(xié)議批钠,基于TCP/IP通信協(xié)議傳輸數(shù)據(jù),默認端口為80
HTTP報文分為請求報文和響應(yīng)報文得封,請求報文包括請求行埋心、請求頭部、空行忙上、請求數(shù)據(jù)拷呆,
響應(yīng)報文包括狀態(tài)行、消息報頭、響應(yīng)正文茬斧。
請求行:請求方法(GET,POST)腰懂,URL字段,HTTP版本字段
狀態(tài)行:http版本+狀態(tài)碼+狀態(tài)代碼的文本描述
9项秉、常用的會話跟蹤技術(shù)
a绣溜、URL重寫:URL 可以在后面附加參數(shù),和服務(wù)器的請求一起發(fā)送娄蔼,這些參數(shù)為名字/值對
b怖喻、隱藏表單域:<input type="hidden">
c、cookie:通過在客戶端記錄信息確定用戶身份,可以在客戶端保存臨時數(shù)據(jù)
d岁诉、session:setAttribute(String name,Object object)
10锚沸、Servlet中能實現(xiàn)跳轉(zhuǎn)的基本方法
a、response.sendRedirect("login.jsp")
b涕癣、request.getRequestDispatcher("login.jsp").forward(request, response);
c哗蜈、response.setHeader("refresh","30;URL="login.jsp"");
d、window.location.href = "login.jsp"
11坠韩、http請求的結(jié)果:
400-Bad Request:請求出現(xiàn)語法錯誤
401-Unauthorized訪問被拒絕恬叹,客戶試圖未經(jīng)授權(quán)訪問受密碼保護的頁面
404:請求資源未找到
401.1-登錄失敗
500:服務(wù)器遇到了意料不到的情況,不能完成客戶的請求
500.13:Web服務(wù)器繁忙
12同眯、Cookie 進行會話跟蹤的過程
a、請求開始
b唯鸭、使用cookie保存數(shù)據(jù):new Cookie(String name,Object object)
c须蜗、響應(yīng)攜帶cookie數(shù)據(jù):response.addCookie(cookie)
d、服務(wù)器使用響應(yīng)頭傳遞cookie數(shù)據(jù):
e目溉、瀏覽器自動保存cookie
f明肮、瀏覽器自動攜帶cookie數(shù)據(jù)
g、獲得請求中攜帶的cookie數(shù)據(jù):request.getCookies()
13缭付、MVC模式
業(yè)務(wù)模型(Model):負責(zé)存儲系統(tǒng)的中心數(shù)據(jù)柿估。
用戶界面(View):將信息顯示給用戶(可以定義多個視圖)。
控制器(Controller):處理用戶輸入的信息陷猫。負責(zé)從視圖讀取數(shù)據(jù)秫舌,控制用戶輸入,并向模型發(fā)送數(shù)據(jù)绣檬,是應(yīng)用程序中處理用戶交互的部分足陨。負責(zé)管理與用戶交互交互控制。
定義:MVC是用一種業(yè)務(wù)邏輯娇未、數(shù)據(jù)與界面顯示分離的方法來組織代碼墨缘,將眾多的業(yè)務(wù)邏輯聚集到一個部件里面,在需要改進和個性化定制界面及用戶交互的同時,不需要重新編寫業(yè)務(wù)邏輯镊讼,達到減少編碼的時間宽涌。
目的:在于將M和V的實現(xiàn)代碼分離,從而使同一個程序可以使用不同的表現(xiàn)形式
14蝶棋、 從表單中獲得參數(shù)常用方法
a卸亮、request.getParamter(String name)
b、request.getParameterNames()
c嚼松、document.getElementById(String id).value
15嫡良、session對象的使用
HttpSession hs = requset.getSession(true)
存儲傳遞數(shù)據(jù):hs.setAttribute(String name,Object object)
取出傳遞數(shù)據(jù):hs.getAttribute(String name)
移除session中指定的對象:hs.removeAttribute(String name)
銷毀session:hs.invalidate()
16、Servlet上下文監(jiān)聽器
a献酗、ServletContextListener:用于監(jiān)聽ServletContext對象的創(chuàng)建和銷毀
b寝受、ServletContextAttributeListener:用于監(jiān)聽ServletContext對象中屬性的增加、修改和刪除
17罕偎、JavaBean的規(guī)范很澄,即滿足什么要求的Java類可以稱為JavaBean。
a颜及、JavaBean類不應(yīng)有公眾屬性甩苛,屬性都應(yīng)該是private
b、必須保證有公正無參數(shù)構(gòu)造器
c俏站、為私有屬性提供符合命名規(guī)范的get/set方法
d讯蒲、應(yīng)該要實現(xiàn)serizlizeable接口
e、JavaBean類必須是一個公共類肄扎,將其訪問屬性設(shè)置為public