1.面對對象的特征有哪些猫态?Java中實(shí)現(xiàn)多態(tài)的機(jī)制是什么伐弹?
面對對象特征:封裝,繼承帅韧,多態(tài)
實(shí)現(xiàn)多態(tài)機(jī)制:java提供了兩種多態(tài)實(shí)現(xiàn)機(jī)制里初,一種是編譯時(shí)多態(tài),通過方法的重載實(shí)現(xiàn)忽舟;
第二種是運(yùn)行時(shí)多態(tài)双妨,通過方法的覆蓋實(shí)現(xiàn)淮阐。
2.java中怎么獲取string類型的當(dāng)前日期?
利用SimpleDateFormat類;先輸入兩個(gè)java包:java.util.Datejava.text.SimpleDateFormat然后定義日期格式SimpleDateFormatsdf=newSimpleDateFormat(yy-MM-DD);SQL語句:StringsqlStr="select bookDate from roomBook where bookDate between'2007-4-10' and '2007-4-25'";輸出System.out.println(sdf.format(rs.getDate("bookDate")));
3.java中有幾種方法可以實(shí)現(xiàn)一個(gè)線程刁品?sleep()和wait()有什么區(qū)別泣特?啟動(dòng)一個(gè)線程用run()還是start()?
一種是實(shí)現(xiàn)Runnable接口并實(shí)現(xiàn)run方法,另一種是繼承Thread類重寫Thread中的run方法挑随。
sleep()是使一個(gè)正在運(yùn)行的線程處于睡眠狀態(tài)状您,是一個(gè)靜態(tài)方法,調(diào)用此方法要捕捉InterrputedException異常
啟動(dòng)線程調(diào)用start()方法兜挨,使線程處于就緒狀態(tài)膏孟,以后可以被調(diào)用為運(yùn)行狀態(tài),一個(gè)線程必須關(guān)聯(lián)一些具體的執(zhí)行代碼拌汇,
run()方法是此線程所關(guān)聯(lián)的執(zhí)行代碼
4.jsp中forward與redirect的區(qū)別柒桑?
轉(zhuǎn)發(fā)(forward)是服務(wù)器行為,重定向(redirect)是客戶端行為
5.jsp有哪些內(nèi)置對象噪舀?作用分別是什么魁淳?
九個(gè)內(nèi)置對象及作用:
1.pageContext:管理網(wǎng)頁屬性,為jsp頁面包裝頁面的上下文傅联;
2.request:服務(wù)端獲取客戶端信息:頭信息先改,cookie,請求參數(shù)蒸走,MVC設(shè)計(jì)模式仇奶;
3.response:服務(wù)器端回應(yīng)客戶端信息:cookie,重定向比驻;
4.session:表示每一個(gè)用戶该溯,用于登錄驗(yàn)證上;
5.out:主要用于向客戶端輸送數(shù)據(jù)(盡量使用表達(dá)式輸出)别惦;
6.application:主要用于保存用戶信息狈茉,代碼片段是運(yùn)行環(huán)境;這是一個(gè)共享的內(nèi)置對象掸掸,保存的信息被所有用戶共享氯庆;
7.config:代碼片段配置對象,表示Servlet的配置
8.page:處理jsp頁面扰付,他也是jsp頁面本身
9.Exception:處理jsp文件執(zhí)行時(shí)發(fā)生的錯(cuò)誤與異常
6.請描述一下servlet的生命周期堤撵。
分為5個(gè)階段
1.實(shí)例化:Servlet容器創(chuàng)建Servlet類的實(shí)例;
2.初始化:調(diào)用該容的init()方法羽莺,通常會(huì)申請資源实昨;
3.服務(wù):由該容器調(diào)用service()方法,(也就是doGet()與doPost())盐固;
4.破壞:在釋放Servlet實(shí)例之前調(diào)用destroy()方法荒给,通常會(huì)釋放資源丈挟;
5.不可用:釋放內(nèi)存實(shí)例。
7.j2ee有幾種設(shè)計(jì)模式志电,請舉例常用的設(shè)計(jì)模式曙咽?
23種設(shè)計(jì)模式
常用的有:單例模式,工廠模式溪北,包裝模式桐绒,代理模式,命令模式之拨,策略模式茉继,觀察者模式,結(jié)構(gòu)性模式蚀乔。
8.運(yùn)行時(shí)異常與非運(yùn)行時(shí)異常的區(qū)別烁竭?給出一個(gè)常見的runtime exception。
運(yùn)行時(shí)異常:是程序運(yùn)行時(shí)可能報(bào)出的異常吉挣,可以用try catch抓取派撕,也可業(yè)不做處理;
非運(yùn)行時(shí)異常:在定義方法時(shí)聲明拋出睬魂,這些異常必須用 try catch抓取或者throws處理终吼,不處理,程序編譯失斅认际跪;
常見的運(yùn)行異常:ClassCastException(類型轉(zhuǎn)換異常)、NumberFormatException(格式化異常)喉钢、
ArrayIndexOutOfBoundsException( 數(shù) 組越 界 異 常 )姆打、 ArithmeticException( 算 術(shù)異 常 )、
NullPointerException(空指針異常)等等
9.jsp出現(xiàn)亂碼會(huì)是什么原因肠虽,怎么解決幔戏?
1.默認(rèn)頁面編碼與傳輸編碼沒有改成UTF-8,通過設(shè)置JSP編碼格式來修改默認(rèn)生成的編碼格式
2.提交表單亂碼税课,需要在請求頭響應(yīng)頭設(shè)置編碼闲延;
3.編碼過濾器解決亂碼問題
10.簡述SpringMVC的運(yùn)行流程。
用戶發(fā)起請求到前端控制器DispatcherServlet
前端控制器沒有處理業(yè)務(wù)邏輯的能力韩玩,需要找到具體的模型對象處理(Handler)垒玲,到處理器映射器(HandlerMapping)中
查找Handler對象(model)。
HandlerMapping返回執(zhí)行鏈啸如,包含兩部分內(nèi)容:1Handler對象,2攔截器數(shù)組
前端處理器通過處理器適配器(HandlerAdapter)包裝后執(zhí)行Handler對象氮惯。
執(zhí)行controller處理業(yè)務(wù)邏輯叮雳。
Handler處理完業(yè)務(wù)邏輯想暗,返回ModelAndView對象,其中view是視圖對象帘不,不是真的視圖對象说莫。
將HandlerAndView返回給前端控制器。
視圖解析器返回真正的視圖對象(View)寞焙。
此時(shí)前端控制器既有視圖又有Model對象數(shù)據(jù)储狭,前端控制器根據(jù)模型與視圖對象,進(jìn)行視圖渲染捣郊。
渲染后的視圖(html/json/xml)返回辽狈。
跟用戶響應(yīng)。
14.請列舉您所使用過的前端UI框架
HTML5/CSS3/Javascript/Jquery/