java程序員編程面試Web基礎(chǔ)部分

Java是一種可以撰寫跨平臺應(yīng)用軟件的面向?qū)ο蟮某绦蛟O(shè)計(jì)語言佳遂。Java 技術(shù)具有卓越的通用性寥袭、高效性路捧、平臺移植性和安全性,廣泛應(yīng)用于PC传黄、數(shù)據(jù)中心杰扫、游戲控制臺、科學(xué)超級計(jì)算機(jī)膘掰、移動電話和互聯(lián)網(wǎng)章姓,同時(shí)擁有全球最大的開發(fā)者專業(yè)社群。

給你java學(xué)習(xí)路線:html-css-js-jq-javase-數(shù)據(jù)庫-jsp-servlet-Struts2-hibernate-mybatis-spring4-springmvc-ssh-ssm

2.2.1 講一下http get和post請求的區(qū)別

get和post請求都是http的請求方式,用戶通過不同的http請求方式完成對資源(url)的不同操作凡伊,具體點(diǎn)來講get一般用于獲取/查詢資源信息零渐,而post一般用于更新資源信息。

http定義了與服務(wù)器交互的不同方法系忙,最基本的方法有4種诵盼,分別是get,post银还,put拦耐,delete,url全稱是資源描述符见剩,我們可以這樣認(rèn)為:一個URL地址杀糯,它用于描述一個網(wǎng)絡(luò)上的資源,而http中的get苍苞,post固翰,put,delete就是對應(yīng)著這個資源的查羹呵,改骂际,增,刪4個操作冈欢,具體點(diǎn)get一般用于獲取/查詢資源信息歉铝,而post一般用于更新資源信息。

1)get請求提交的數(shù)據(jù)會在地址欄顯示出來凑耻,而post請求不會在地址欄顯示出來太示。

get提交請求的數(shù)據(jù)會附在URL之后(就是把數(shù)據(jù)放置在http協(xié)議頭中)以?分割url和傳輸數(shù)據(jù)香浩,多個參數(shù)用&連接类缤;post提交:把提交的數(shù)據(jù)放置的是在http包的包體中,因此邻吭,get提交的數(shù)據(jù)會在地址欄中顯示出來餐弱,而post提交,地址欄不會改變囱晴。

2)傳輸數(shù)據(jù)的大小

http get請求由于瀏覽器對地址長度的限制而導(dǎo)致傳輸?shù)臄?shù)據(jù)有限制膏蚓,而post請求不會因?yàn)榈刂烽L度限制而導(dǎo)致傳輸數(shù)據(jù)限制。

3)安全性畸写,post的安全性要比get的安全性高驮瞧,由于數(shù)據(jù)是會在地址中呈現(xiàn),所以安全性可以歷史記錄找到密碼相關(guān)等信息艺糜。

2.2.2 講一下你對servlet的理解剧董?或者servlet是什么?

servlet(servlet applet)破停,全稱java servlet翅楼,是用java編寫的服務(wù)端程序,而這些Servlet都要實(shí)現(xiàn)Servlet這個接口真慢,其主要功能在于交互式地瀏覽和修改數(shù)據(jù)毅臊,生成動態(tài)web內(nèi)容,servlet運(yùn)行于支持java的應(yīng)用服務(wù)器中黑界。

httpservlet重寫doGet和doPost方法或者你也可以重寫service方法完成對get和post請求的響應(yīng)管嬉。

小編推薦一個學(xué)Java的學(xué)習(xí)裙【 六五零,五五四朗鸠,六零七 】蚯撩,無論你是大牛還是小白,是想轉(zhuǎn)行還是想入行都可以來了解一起進(jìn)步一起學(xué)習(xí)烛占!裙內(nèi)有開發(fā)工具胎挎,很多干貨和技術(shù)資料分享!

2.2.3 簡單說一下servlet的生命周期忆家?

servlet有良好的生存期的定義犹菇,包括加載和實(shí)例化、初始化芽卿、處理請求以及服務(wù)結(jié)束揭芍,這個生存期由java servlet Servlet接口的init,service卸例,destory方法表達(dá)称杨。

Servlet啟動時(shí),開始加載Servlet生命周期開始筷转,servlet被服務(wù)器實(shí)例化后列另,容器運(yùn)行其init方法,請求到達(dá)時(shí)運(yùn)行其service方法旦装,service方法自動派遣運(yùn)行與請求對其的doxxx方法(doGet,doPost)等页衙,當(dāng)服務(wù)器決定將實(shí)例化銷毀的時(shí)候(服務(wù)器關(guān)閉)調(diào)用其destory方法

加載Servlet的class-->實(shí)例化Servlet的init完成初始化-->響應(yīng)請求(Servlet的service方法)-->Servlet容器關(guān)閉時(shí)(Servlet的destory方法)

2.2.4 Servlet API中forward()與redirect()的區(qū)別?

前者僅是容器中控制權(quán)的轉(zhuǎn)向阴绢,在客戶端瀏覽器地址欄中不會顯示出轉(zhuǎn)向后的地址店乐;后者則是完全的鏈接,瀏覽器(客戶端)將會得到跳轉(zhuǎn)的鏈接呻袭,并重新發(fā)送請求鏈接眨八。forward還是原來的請求而rediect是重新發(fā)起請求。這樣左电,從瀏覽器的地址欄中可以看出跳轉(zhuǎn)后的鏈接地址廉侧,所以前者更加高效页响,在前者可以滿足需要時(shí),盡量使用forward()方法段誊,并且這樣有助于隱藏實(shí)際的鏈接闰蚕,在有些情況下,比如连舍,需要跳轉(zhuǎn)到一個其他服務(wù)器上的資源則必須使用sendRedirect()方法没陡。

1)forward是服務(wù)器請求的轉(zhuǎn)向而rediect是客戶端的跳轉(zhuǎn)。

2)使用forward瀏覽器的地址不會發(fā)生改變索赏,而redrect會發(fā)生改變盼玄。

3)forward是一次請求中完成,而redrect是重新發(fā)起請求潜腻。

3)forward是在服務(wù)器端完成埃儿,而不用客戶端重新發(fā)起請求,效率高融涣。

小編推薦一個學(xué)Java的學(xué)習(xí)裙【 六五零蝌箍,五五四,六零七 】暴心,無論你是大牛還是小白妓盲,是想轉(zhuǎn)行還是想入行都可以來了解一起進(jìn)步一起學(xué)習(xí)!裙內(nèi)有開發(fā)工具专普,很多干貨和技術(shù)資料分享悯衬!

2.2.5 JSP和Servlet有哪些相同點(diǎn)和不同點(diǎn),它們之間的聯(lián)系是什么檀夹?

JSP是Servlet的擴(kuò)展筋粗。所有的jsp文件都會被翻譯為一個繼承httpServlet的類,也就是說jsp最終也是一個Servlet炸渡,這個servlet對外提供服務(wù)娜亿。

Servlet和JSP最主要的不同點(diǎn)在于,Servlet如果要實(shí)現(xiàn)html的功能蚌堵,必須使用Writer輸出對應(yīng)的html比較麻煩买决,Servlet的應(yīng)用邏輯是在java文件,并完全從表示層中的html分離出來吼畏,而jsp的情況是Java和HTML可以組合成一個擴(kuò)展名為.jsp文件比較方便而嵌入邏輯比較復(fù)雜督赤,jsp側(cè)重視圖,Servlet主要用于控制邏輯泻蚊。

2.2.6 jsp有哪些內(nèi)置對象躲舌?作用分別是什么?

9個內(nèi)置的對象:

request 用戶請求性雄,此請求會包含來自get/post請求的參數(shù)

response 網(wǎng)頁傳回用戶端的回應(yīng)

pageContext 網(wǎng)頁的屬性是在這里管理

session 與請求有關(guān)的會話棋

application servlet正在執(zhí)行的內(nèi)容

out 用來傳送回應(yīng)的輸出

config servlet 的構(gòu)架部件

page jsp網(wǎng)頁本身

exception 針對錯誤網(wǎng)頁没卸,未捕抓的例外

四大作用域:pageContext羹奉,request,session约计,application可以通過jstl從四大作用域中取值

jsp傳遞值request诀拭,session,application病蛉,cookie也能傳值

小編推薦一個學(xué)Java的學(xué)習(xí)裙【 六五零炫加,五五四瑰煎,六零七 】铺然,無論你是大牛還是小白,是想轉(zhuǎn)行還是想入行都可以來了解一起進(jìn)步一起學(xué)習(xí)酒甸!裙內(nèi)有開發(fā)工具魄健,很多干貨和技術(shù)資料分享!

2.2.7 說一下session和cookie的區(qū)別插勤?你在項(xiàng)目中都有哪些地方使用了

Session和cookie都是會話跟蹤技術(shù)沽瘦,cookie通過客戶端記錄信息確定用戶身份,session通過在服務(wù)端確定用戶身份农尖,但是session的實(shí)現(xiàn)依賴于cookie析恋,sessionId(session的唯一標(biāo)識需要存放在客戶端)

cokike和session的區(qū)別

1)cookie數(shù)據(jù)存放在客戶的瀏覽器上,session數(shù)據(jù)存放在服務(wù)器上盛卡。

2)cookie不是很安全助隧,別人可以分析存放本地的cookie并進(jìn)行cookie欺騙,考慮到安全性應(yīng)當(dāng)使用session

3)session會在一定時(shí)間內(nèi)保存在服務(wù)器上滑沧,當(dāng)訪問增多并村,會比較占用你服務(wù)器的性能考慮到減輕服務(wù)器性能方面,應(yīng)當(dāng)使用cookie

4)單個cookie保存的數(shù)據(jù)不能超過4k滓技,很多瀏覽器都限制一個站點(diǎn)最多保存20cookie

5)所以個人建議:

將登錄等重要信息存放為session哩牍,其他信息如果需要保留,可以存放cookie中令漂,比如購物車膝昆。

購物車最好使用cookie,但是cookie是可以在用戶端禁用的叠必,這時(shí)候我們要使用cookie+數(shù)據(jù)庫的方式實(shí)現(xiàn)外潜,當(dāng)從cookie中不能取出數(shù)據(jù)時(shí),就從數(shù)據(jù)庫獲取

2.2.8 mvc的各部分都有哪些技術(shù)來實(shí)現(xiàn)

M(Model)模型 javaBean挠唆,hibernate处窥,mybatis

V(View)代碼視圖 jsp,html玄组,freemaker滔驾,velocity

C(Controller)控制器 Servlet谒麦,Action,struts

Jsp+Servlet+javaBean 最經(jīng)典mvc模式哆致。實(shí)際上就是model2的實(shí)現(xiàn)方式绕德,就是把視圖和邏輯隔離開來

model1的方式 jsp+service+dao

model2的方式 jsp+servlet+service+dao

使用struts2和springMVC這樣的mvc結(jié)構(gòu)后,jsp+核心控制器+action+javaBean

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末摊阀,一起剝皮案震驚了整個濱河市耻蛇,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌胞此,老刑警劉巖臣咖,帶你破解...
    沈念sama閱讀 206,602評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異漱牵,居然都是意外死亡夺蛇,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,442評論 2 382
  • 文/潘曉璐 我一進(jìn)店門酣胀,熙熙樓的掌柜王于貴愁眉苦臉地迎上來刁赦,“玉大人,你說我怎么就攤上這事闻镶∩趼觯” “怎么了?”我有些...
    開封第一講書人閱讀 152,878評論 0 344
  • 文/不壞的土叔 我叫張陵铆农,是天一觀的道長牺氨。 經(jīng)常有香客問我,道長顿涣,這世上最難降的妖魔是什么波闹? 我笑而不...
    開封第一講書人閱讀 55,306評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮涛碑,結(jié)果婚禮上精堕,老公的妹妹穿的比我還像新娘。我一直安慰自己蒲障,他們只是感情好歹篓,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,330評論 5 373
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著揉阎,像睡著了一般庄撮。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上毙籽,一...
    開封第一講書人閱讀 49,071評論 1 285
  • 那天洞斯,我揣著相機(jī)與錄音,去河邊找鬼坑赡。 笑死烙如,一個胖子當(dāng)著我的面吹牛么抗,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播亚铁,決...
    沈念sama閱讀 38,382評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼蝇刀,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了徘溢?” 一聲冷哼從身側(cè)響起吞琐,我...
    開封第一講書人閱讀 37,006評論 0 259
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎然爆,沒想到半個月后站粟,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,512評論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡施蜜,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,965評論 2 325
  • 正文 我和宋清朗相戀三年卒蘸,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了雌隅。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片翻默。...
    茶點(diǎn)故事閱讀 38,094評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖恰起,靈堂內(nèi)的尸體忽然破棺而出修械,到底是詐尸還是另有隱情,我是刑警寧澤检盼,帶...
    沈念sama閱讀 33,732評論 4 323
  • 正文 年R本政府宣布肯污,位于F島的核電站,受9級特大地震影響吨枉,放射性物質(zhì)發(fā)生泄漏蹦渣。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,283評論 3 307
  • 文/蒙蒙 一貌亭、第九天 我趴在偏房一處隱蔽的房頂上張望柬唯。 院中可真熱鬧,春花似錦圃庭、人聲如沸锄奢。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,286評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽拘央。三九已至,卻和暖如春书在,著一層夾襖步出監(jiān)牢的瞬間灰伟,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,512評論 1 262
  • 我被黑心中介騙來泰國打工儒旬, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留栏账,地道東北人遏乔。 一個月前我還...
    沈念sama閱讀 45,536評論 2 354
  • 正文 我出身青樓,卻偏偏與公主長得像发笔,于是被迫代替她去往敵國和親盟萨。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,828評論 2 345

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

  • 從三月份找實(shí)習(xí)到現(xiàn)在了讨,面了一些公司捻激,掛了不少,但最終還是拿到小米前计、百度胞谭、阿里、京東男杈、新浪丈屹、CVTE、樂視家的研發(fā)崗...
    時(shí)芥藍(lán)閱讀 42,186評論 11 349
  • (一)Java web部分 1.Servlet和jsp頁面過濾器Filter的作用及配置 【參考答案】 過濾器是一...
    獨(dú)云閱讀 3,320評論 0 11
  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法伶棒,類相關(guān)的語法旺垒,內(nèi)部類的語法,繼承相關(guān)的語法肤无,異常的語法先蒋,線程的語...
    子非魚_t_閱讀 31,581評論 18 399
  • 沈陽住了那么多年我卻第一次去遼寧大學(xué)看銀杏葉,葉子真的很美很美宛渐,在午后的陽光下閃閃發(fā)光,在碧藍(lán)碧藍(lán)的天空襯托下仿佛...
    最美喬木閱讀 529評論 0 0
  • 這期讀寫群還有十三天就要結(jié)束了竞漾,我看了一下,到現(xiàn)在為止窥翩,我已經(jīng)讀了10本書: 《人類群星閃耀時(shí)》 《微習(xí)慣》 《W...
    婉琳閱讀 218評論 2 3