2020年五道Java高級(jí)程序員面試題

2020年五道Java高級(jí)程序員面試題

長(zhǎng)沙一度軟件培訓(xùn)      2022-05-07 06:00:01     98

2020年五道Java高級(jí)程序員面試題,  1、XML技術(shù)的作用?  XML技術(shù)用于數(shù)據(jù)存儲(chǔ)、  信息配置、  數(shù)據(jù)交換三方面?! 】梢詫?shù)據(jù)存儲(chǔ)在XML中,  通過(guò)節(jié)點(diǎn)

課程價(jià)格 請(qǐng)咨詢

上課時(shí)段: 授課校區(qū):

詳細(xì)介紹


  1、XML技術(shù)的作用?


  XML技術(shù)用于數(shù)據(jù)存儲(chǔ)、


  信息配置、


  數(shù)據(jù)交換三方面。


  可以將數(shù)據(jù)存儲(chǔ)在XML中,


  通過(guò)節(jié)點(diǎn)、


  元素內(nèi)容、


  屬性標(biāo)示數(shù)據(jù)內(nèi)容及關(guān)系。


  可以使用XML很方便的做信息配置,


  軟件的各種配置參數(shù)和對(duì)象關(guān)系


  都存貯在XML文件中。


  在做數(shù)據(jù)交換平臺(tái)時(shí),


  將數(shù)據(jù)組裝成XML文件,


  然后將XML文件壓縮打包加密后


  通過(guò)網(wǎng)絡(luò)傳送給接收者,


  接收解密與解壓縮后再同XML文件中


  還原相關(guān)信息進(jìn)行處理。


  2.XML文檔約束有哪幾種?有什么區(qū)別?


  有兩種定義形式,


  dtd文檔類型定義和SchemaXML模式;


  XMLSchema和DTD都用于文檔驗(yàn)證,


  但二者還有一定的區(qū)別,


  本質(zhì)區(qū)別是:Scheme本身是xml的,


  可以被XML解析器解析,


  這也是從DTD上發(fā)展Schema的根本目的。


  另外,


  XMLSchema是內(nèi)容開放模型,


  可擴(kuò)展,功能性強(qiáng),


  而DTD可擴(kuò)展性差。


  XMLSchema支持豐富的數(shù)據(jù)類型,


  而DTD不支持元素的數(shù)據(jù)類型,


  對(duì)屬性的類型定義也很有限。


  XMLSchema支持命名空間機(jī)制,


  而DTD不支持。


  XMLSchema可針對(duì)不同情況


  對(duì)整個(gè)XML文檔或文檔局部進(jìn)行驗(yàn)證;


  而DTD缺乏這種靈活性。


  XMLSchema完全遵循XML規(guī)范,


  符合XML語(yǔ)法,


  可以和DOM結(jié)合使用,


  功能強(qiáng)大;


  而DTD語(yǔ)法本身有自身的語(yǔ)法和要求,


  難以學(xué)習(xí)。


  3.XML的解析方式有哪幾種?有什么區(qū)別?


  1.DOM解析:


  DOM的全稱是documentObjectModel,


  也即文檔對(duì)象模型。


  在應(yīng)用程序中,


  基于DOM的XML分析器


  將一個(gè)XML文檔轉(zhuǎn)換成


  一個(gè)對(duì)象模型的集合(通常稱DOM樹),


  應(yīng)用程序正是通過(guò)對(duì)


  這個(gè)對(duì)象模型的操作,


  來(lái)實(shí)現(xiàn)對(duì)XML文檔數(shù)據(jù)的操作。


  通過(guò)DOM接口,


  應(yīng)用程序可以在任何時(shí)候


  訪問(wèn)XML文檔中的任何一部分?jǐn)?shù)據(jù),


  因此,這種利用DOM接口的機(jī)制


  也被稱作隨機(jī)訪問(wèn)機(jī)制。


  2.SAX解析:


  SAX的全稱是SimpleAPIsforXML,


  也即XML簡(jiǎn)單應(yīng)用程序接口。


  與DOM不同,


  SAX提供的訪問(wèn)模式是一種順序模式,


  這是一種快速讀寫XML數(shù)據(jù)的方式。


  當(dāng)使用SAX分析器對(duì)XML文檔進(jìn)行分析時(shí),


  會(huì)觸發(fā)一系列事件,


  并激活相應(yīng)的事件處理函數(shù),


  應(yīng)用程序通過(guò)這些事件處理函數(shù)


  實(shí)現(xiàn)對(duì)XML文檔的訪問(wèn),


  因而SAX接口也被稱作事件驅(qū)動(dòng)接口。


  3.JDOM解析:


  JDOM采用了Java中的Collection架構(gòu)來(lái)封裝集合,


  是Java愛好者更加熟悉的模式


  4.DOM4J解析:


  xml解析器一次性把整個(gè)xml文檔加載進(jìn)內(nèi)存,


  然后在內(nèi)存中構(gòu)建一顆document的對(duì)象樹,


  通過(guò)document對(duì)象,


  得到樹上的節(jié)點(diǎn)對(duì)象,


  通過(guò)節(jié)點(diǎn)對(duì)象訪問(wèn)(操作)到xml文檔的內(nèi)容


  4.Http請(qǐng)求的Get和Post的區(qū)別?


  1.get從地址欄以明文的方式提交請(qǐng)求


  信息內(nèi)容


  ?username=admin&password=123,


  用戶可見,


  而post從請(qǐng)求正文提交請(qǐng)求信息內(nèi)容,


  用戶不可見。


  2.get提交因?yàn)槭菑牡刂窓趥鬟f,


  而瀏覽器的地址欄長(zhǎng)度有限制,


  不能提交大數(shù)據(jù)


  post從請(qǐng)求正文傳遞信息內(nèi)容,


  對(duì)文件大小無(wú)限制,


  文件上傳只能選擇post


  3.request對(duì)象是服務(wù)器獲取請(qǐng)求信息


  從請(qǐng)求頭,請(qǐng)求正文中獲取


  我們可以使用request.setCharacterEncoding方法


  修改請(qǐng)求對(duì)象字符編碼信息,


  但是不能修改地址欄字符編碼。


  get從地址欄傳遞信息,


  不能使用request.setCharacterEncoding這個(gè)方法


  去修改字符編碼。


  post從請(qǐng)求正文以form表單形式提交,


  所以可以使用request.setCharacterEncoding


  這個(gè)方法去修改字符編碼。


  4.總結(jié):能夠使用post提交盡量使用post提交。


  5.ServletConfig對(duì)象和ServletContext對(duì)象有什么區(qū)別?


  一個(gè)Servlet對(duì)應(yīng)有一個(gè)ServletConfig對(duì)象,


  可以用來(lái)讀取初始化參數(shù)。


  一個(gè)webapp對(duì)應(yīng)一個(gè)ServletContext對(duì)象。


  ServletContext對(duì)象


  獲取初始化定義的參數(shù)。


  ServletContext對(duì)象可以通過(guò)


  context.getResourceAsStream("/PATH");


  或者context.getRealPath("/")。


  去獲取webapp的資源文件。


  ServletContext對(duì)象的


  setAttribute(Stringname,Objecto)方法


  可以將對(duì)象存儲(chǔ)在Context作用范圍域


  又稱為全局作用范圍域,


  在整個(gè)web應(yīng)用當(dāng)中可以共享.


  ServletContext對(duì)象


  可以和服務(wù)器進(jìn)行通訊,


  比如寫信息到服務(wù)器的日志信息當(dāng)中。。



    以上就是長(zhǎng)沙一度軟件培訓(xùn)Java培訓(xùn)機(jī)構(gòu)小編介紹的“2020年五道Java高級(jí)程序員面試題”的內(nèi)容,希望對(duì)大家有幫助,如有疑問(wèn),請(qǐng)?jiān)诰€咨詢,有專業(yè)老師隨時(shí)為你服務(wù)。


Java面試題

培訓(xùn)啦提醒您:交易時(shí)請(qǐng)核實(shí)對(duì)方資質(zhì),對(duì)于過(guò)大宣傳或承諾需謹(jǐn)慎!任何要求預(yù)付定金、匯款等方式均存在風(fēng)險(xiǎn),謹(jǐn)防上當(dāng)。