久久综合九色综合97婷婷-美女视频黄频a免费-精品日本一区二区三区在线观看-日韩中文无码有码免费视频-亚洲中文字幕无码专区-扒开双腿疯狂进出爽爽爽动态照片-国产乱理伦片在线观看夜-高清极品美女毛茸茸-欧美寡妇性猛交XXX-国产亚洲精品99在线播放-日韩美女毛片又爽又大毛片,99久久久无码国产精品9,国产成a人片在线观看视频下载,欧美疯狂xxxx吞精视频

有趣生活

當前位置:首頁>職場>java后端初級程序員面試題(Java高級程序員面試題)

java后端初級程序員面試題(Java高級程序員面試題)

發(fā)布時間:2024-01-24閱讀(14)

導(dǎo)讀1.你認為項目中最重要的過程是那些?分析、設(shè)計階段盡量找出進度的優(yōu)先級2.如果給你一個4-6人的team,怎么分配?挑選一技術(shù)過硬的人作為我的替補。其它人平....

java后端初級程序員面試題(Java高級程序員面試題)(1)

1.你認為項目中最重要的過程是那些?

分析、設(shè)計階段 盡量找出進度的優(yōu)先級

2.如果給你一個4-6人的team,怎么分配?

挑選一技術(shù)過硬的人作為我的替補。其它人平均分配任務(wù),每周進行全面的任務(wù)分配,每個人領(lǐng)取一周的工作量

,每天匯報進度。

3.簡述軟件開發(fā)文檔?

需求分析、概要設(shè)計、詳細設(shè)計、操作手冊、測試計劃

4.你認為一個項目如何才正確?

是企業(yè)利益最大化。

5.你經(jīng)常讀那些書?

Java編程思想 Java模式 人月神話

6.springmvc的工作原理?

客戶端請求提交到DispacherServlet由DispacherServlet控制器查詢HandlerMapping,找到處理請求的Controller

Controller調(diào)用業(yè)務(wù)邏輯處理后,返回ModelAndView

DispacherServlet查詢視圖解析,找到ModelAndView指定的視圖

視圖負責將結(jié)果顯示到客戶端

java后端初級程序員面試題(Java高級程序員面試題)(2)

7.springmvc 和struts2的區(qū)別?

機制 :springmvc 的入口是servlet,struts2的入口是filter

性能 : springmvc 會比struts2快一點。springmvc是基于方法設(shè)計,struts2是基于類,每次發(fā)一次請求都會實例一個action,每個Action都會被注入屬性。

參數(shù)傳遞:struts2是在接受參數(shù)的時候,可以采用屬性來接收參數(shù),這家說明可以讓多個方法共享

攔截器機制:struts2有自己的interceptor機制,springmvc用的是獨立的AOP方式,strtus2的配置文件還是比springmvc大,springmvc使用簡潔,springMVC比struts2開發(fā)效率要高.

8.struts2工作原理?

客戶端初始化一個執(zhí)行servlet的請求

這個請求經(jīng)過一系列的過濾器,被FilterDispatcher調(diào)用,詢問ActionMapper來決定是否調(diào)用Action

FilterDispatcher把請求的處理交給ActionProxy

ActionProxy通過Configuraction Manager詢問相關(guān)的配置文件,找到需要的Action類

ActionProxy創(chuàng)建ActionInvocation的實例

ActionInvocation調(diào)用Action前后的攔截器

Action執(zhí)行完畢后,根據(jù)struts.xml配置文件找到對應(yīng)的視圖頁面

9.hibernate 工作原理?

讀取并解析配置文件

創(chuàng)建SessionFactory

打開Session

創(chuàng)建事務(wù):transaction

持久化操作

提交事務(wù)

關(guān)閉Session

關(guān)閉SessionFactory

10.為什么要用spring?

spring能夠很好的和各大框架整合

spring 通過IOC容器管理了對象的創(chuàng)建和銷毀 工廠模式

在使用hiberna,mybatis的時候,不用每次都編寫提交的事務(wù)的代碼,可以使用spring的AOP來管理事務(wù) AOP其實就是一個動態(tài)代理的實現(xiàn)

聲明式事務(wù)和編程式事務(wù)

11.mybatis的優(yōu)缺點?

優(yōu)點:SQL寫在XML中,便于統(tǒng)一管理和優(yōu)化

提供映射標簽,支持對象和數(shù)據(jù)庫的orm字段關(guān)系映射

可以對SQL進行優(yōu)化

缺點: SQL工作量大

mybagtis移植姓不好

不支持級聯(lián)

12.談?wù)凷SH整合?

struts(表示層) spring(業(yè)務(wù)層) hibernate(持久層)

struts是一個表示層的框架,主要用于接收請求,分發(fā)請求。struts其實屬于MVC中的VC層次的

hibernate是一個持久層的框架,主要負責與關(guān)系數(shù)據(jù)庫的操作

spring是一個業(yè)務(wù)層的框架,是一個整合的框架,能夠很好的黏合表示層和持久層。

13.maven是什么?有什么作用?

是一個項目管理、構(gòu)建工具

作用:幫助下載jar 尋找依賴,幫助下載依賴 熱部署、熱編譯

14.WEB 前端優(yōu)化?

減少HTTP請求的數(shù)量(合并css、js、圖片)

利用瀏覽器的緩存機制

利用GZIP壓縮機制:只針對文本類資源有效

把CSS文件放在HTML開頭

把javascript文件放在HTML結(jié)尾

避免CSS表達式(判斷瀏覽器)

使用javascript壓縮

減少DNS查找

避免重定向

使用ajax

15.安全性測試

利用安全性測試技術(shù),找到潛在的漏洞

16.事務(wù)隔離級別(4種)

Serializable(串行化):一個事務(wù)在執(zhí)行過程中完全看不到其他事物對數(shù)據(jù)庫所做的更新(事務(wù)執(zhí)行的時候不允許別的事務(wù)并發(fā)執(zhí)行,事務(wù)只能一個接著一個地執(zhí)行,而不能并發(fā)執(zhí)行)

Repeatable Read(可重復(fù)讀):一個事務(wù)在執(zhí)行過程中可以看到其它事務(wù)已經(jīng)提交的新插入的記錄,但是不能看到其它事務(wù)對已有記錄的更新

Read Commited(讀已提交數(shù)據(jù)):一個事務(wù)在執(zhí)行過程中可以看到其它事務(wù)已經(jīng)提交的新插入的記錄,而且能看到其它事務(wù)已經(jīng)提交的對已有記錄的更新。

Read Uncommitted(讀未提交數(shù)據(jù)):一個事務(wù)在執(zhí)行過程中可以看到其它事務(wù)沒有提交的新插入的記錄的更新,而且能看其它事務(wù)沒有提交到對已有記錄的更新

java后端初級程序員面試題(Java高級程序員面試題)(3)

17.MYSQL存儲引擎(4種)

MyISAM它不支持事務(wù),也不支持外鍵,尤其是訪問速度快,對事務(wù)完整性沒有要求或者以SELECT、INSERT為主的應(yīng)用基本都可以使用這個引擎來創(chuàng)建表。

每個MyISAM在磁盤上存儲成3個文件,其中文件名和表名都相同,但是擴展名分別為:.frm(存儲表定義) ,YD(MYData,存儲數(shù)據(jù)) , MYI(MYIndex,存儲索引),InnoDB,InnoDB存儲引擎提供了具有提交、回滾和崩潰恢復(fù)能力的事務(wù)安全。但是對比MyISAM的存儲引擎,InnoDB寫的處理效率差一些并且會占用更多的磁盤空間以保留數(shù)據(jù)和索引。

1)自動增長列2)外鍵約束

MEMORY

memory使用存在內(nèi)存中的內(nèi)容來創(chuàng)建表。每個MEMORY表實際對應(yīng)一個磁盤文件,格式是.frm。MEMORY類型的表訪問非???,因為它到數(shù)據(jù)是放在內(nèi)存中的,并且默認使用HASH索引,但是一旦服務(wù)器關(guān)閉,表中的數(shù)據(jù)就會丟失,但表還會繼續(xù)存在。

MERGE

merge存儲引擎是一組MyISAM表的組合,這些MyISAM表結(jié)構(gòu)必須完全相同,MERGE表中并沒有數(shù)據(jù),對MERGE類型的表可以進行查詢、更新、刪除的操作,這些操作實際上是對內(nèi)部的MyISAM表進行操作。

18.事務(wù)傳播特性

1. PROPAGATION_REQUIRED: 如果存在一個事務(wù),則支持當前事務(wù)。如果沒有事務(wù)則開啟

2. PROPAGATION_SUPPORTS: 如果存在一個事務(wù),支持當前事務(wù)。如果沒有事務(wù),則非事務(wù)的執(zhí)行

3. PROPAGATION_MANDATORY: 如果已經(jīng)存在一個事務(wù),支持當前事務(wù)。如果沒有一個活動的事務(wù),則拋出異常。

4. PROPAGATION_REQUIRES_NEW: 總是開啟一個新的事務(wù)。如果一個事務(wù)已經(jīng)存在,則將這個存在的事務(wù)掛起。

5. PROPAGATION_NOT_SUPPORTED: 總是非事務(wù)地執(zhí)行,并掛起任何存在的事務(wù)。

6. PROPAGATION_NEVER: 總是非事務(wù)地執(zhí)行,如果存在一個活動事務(wù),則拋出異常

7. PROPAGATION_NESTED:如果一個活動的事務(wù)存在,則運行在一個嵌套的事務(wù)中. 如果沒有活動事務(wù),

java后端初級程序員面試題(Java高級程序員面試題)(4)

20.TCP協(xié)議(傳輸控制協(xié)議Transmission Control Protocol )

建立鏈接:三次握手(1.給對方撥號 2.喂,您好,請問是哪位 3 我是小劉)

關(guān)閉鏈接:四次揮手保證可靠

21.shiro 是什么

Apache Shiro 是一個強大易用的java安全框架,提供了認證、授權(quán)、加密和會話管理等功能。

認證 :驗證用戶來核實他們的身份

授權(quán):會話管理

22. 項目技術(shù)

前臺:面向的客戶

前端:css div js jquery

后端:springmvc spring mybatis

使用的優(yōu)化技術(shù):

1.頁面靜態(tài)化(Freemarker)

2.緩存

2.1 頁面緩存(OSCache)

2.2 分布式緩存(memcached)

3. 圖片分離(服務(wù)器)

4.負載均衡(解決高并發(fā)終極策略)

后臺:(管理對象)

前端:css html js jquery

后端:springmvc spring mybatis

數(shù)據(jù)庫:mysql

圖片分離框架:jersey

23.什么RESTful(表現(xiàn)層狀態(tài)轉(zhuǎn)化)架構(gòu)?

(1)每一個URI代表一種資源;

(2)客戶端和服務(wù)器之間,傳遞這種資源的某種表現(xiàn)層;

(3)客戶端通過四個HTTP動詞,對服務(wù)器端資源進行操作,實現(xiàn)"表現(xiàn)層狀態(tài)轉(zhuǎn)化"。

以上內(nèi)容只做了簡單總結(jié)以及引導(dǎo),具體內(nèi)容大家可以根據(jù)自己的情況詳細總結(jié)。

TAGS標簽:  java  后端  初級  程序員  試題  java后端初級程序

歡迎分享轉(zhuǎn)載→http://www.avcorse.com/read-226854.html

Copyright ? 2024 有趣生活 All Rights Reserve吉ICP備19000289號-5 TXT地圖HTML地圖XML地圖