更新時間:2020-03-12 09:51:15 來源:動力節(jié)點 瀏覽2429次
1、XML技術(shù)的作用?
XML技術(shù)用于數(shù)據(jù)存儲、
信息配置、
數(shù)據(jù)交換三方面。
可以將數(shù)據(jù)存儲在XML中,
通過節(jié)點、
元素內(nèi)容、
屬性標(biāo)示數(shù)據(jù)內(nèi)容及關(guān)系。
可以使用XML很方便的做信息配置,
軟件的各種配置參數(shù)和對象關(guān)系
都存貯在XML文件中。
在做數(shù)據(jù)交換平臺時,
將數(shù)據(jù)組裝成XML文件,
然后將XML文件壓縮打包加密后
通過網(wǎng)絡(luò)傳送給接收者,
接收解密與解壓縮后再同XML文件中
還原相關(guān)信息進行處理。
2.XML文檔約束有哪幾種?有什么區(qū)別?
有兩種定義形式,
dtd文檔類型定義和SchemaXML模式;
XMLSchema和DTD都用于文檔驗證,
但二者還有一定的區(qū)別,
本質(zhì)區(qū)別是:Scheme本身是xml的,
可以被XML解析器解析,
這也是從DTD上發(fā)展Schema的根本目的。
另外,
XMLSchema是內(nèi)容開放模型,
可擴展,功能性強,
而DTD可擴展性差。
XMLSchema支持豐富的數(shù)據(jù)類型,
而DTD不支持元素的數(shù)據(jù)類型,
對屬性的類型定義也很有限。
XMLSchema支持命名空間機制,
而DTD不支持。
XMLSchema可針對不同情況
對整個XML文檔或文檔局部進行驗證;
而DTD缺乏這種靈活性。
XMLSchema完全遵循XML規(guī)范,
符合XML語法,
可以和DOM結(jié)合使用,
功能強大;
而DTD語法本身有自身的語法和要求,
難以學(xué)習(xí)。
3.XML的解析方式有哪幾種?有什么區(qū)別?
1.DOM解析:
DOM的全稱是DocumentObjectModel,
也即文檔對象模型。
在應(yīng)用程序中,
基于DOM的XML分析器
將一個XML文檔轉(zhuǎn)換成
一個對象模型的集合(通常稱DOM樹),
應(yīng)用程序正是通過對
這個對象模型的操作,
來實現(xiàn)對XML文檔數(shù)據(jù)的操作。
通過DOM接口,
應(yīng)用程序可以在任何時候
訪問XML文檔中的任何一部分?jǐn)?shù)據(jù),
因此,這種利用DOM接口的機制
也被稱作隨機訪問機制。
2.SAX解析:
SAX的全稱是SimpleAPIsforXML,
也即XML簡單應(yīng)用程序接口。
與DOM不同,
SAX提供的訪問模式是一種順序模式,
這是一種快速讀寫XML數(shù)據(jù)的方式。
當(dāng)使用SAX分析器對XML文檔進行分析時,
會觸發(fā)一系列事件,
并激活相應(yīng)的事件處理函數(shù),
應(yīng)用程序通過這些事件處理函數(shù)
實現(xiàn)對XML文檔的訪問,
因而SAX接口也被稱作事件驅(qū)動接口。
3.JDOM解析:
JDOM采用了Java中的Collection架構(gòu)來封裝集合,
是Java愛好者更加熟悉的模式
4.DOM4J解析:
xml解析器一次性把整個xml文檔加載進內(nèi)存,
然后在內(nèi)存中構(gòu)建一顆Document的對象樹,
通過Document對象,
得到樹上的節(jié)點對象,
通過節(jié)點對象訪問(操作)到xml文檔的內(nèi)容
4.Http請求的Get和Post的區(qū)別?
1.get從地址欄以明文的方式提交請求
信息內(nèi)容
?username=admin&password=123,
用戶可見,
而post從請求正文提交請求信息內(nèi)容,
用戶不可見。
2.get提交因為是從地址欄傳遞,
而瀏覽器的地址欄長度有限制,
不能提交大數(shù)據(jù)
post從請求正文傳遞信息內(nèi)容,
對文件大小無限制,
文件上傳只能選擇post
3.request對象是服務(wù)器獲取請求信息
從請求頭,請求正文中獲取
我們可以使用request.setCharacterEncoding方法
修改請求對象字符編碼信息,
但是不能修改地址欄字符編碼。
get從地址欄傳遞信息,
不能使用request.setCharacterEncoding這個方法
去修改字符編碼。
post從請求正文以form表單形式提交,
所以可以使用request.setCharacterEncoding
這個方法去修改字符編碼。
4.總結(jié):能夠使用post提交盡量使用post提交。
5.ServletConfig對象和ServletContext對象有什么區(qū)別?
一個Servlet對應(yīng)有一個ServletConfig對象,
可以用來讀取初始化參數(shù)。
一個webapp對應(yīng)一個ServletContext對象。
ServletContext對象
獲取初始化定義的參數(shù)。
ServletContext對象可以通過
context.getResourceAsStream("/PATH");
或者context.getRealPath("/")。
去獲取webapp的資源文件。
ServletContext對象的
setAttribute(Stringname,Objecto)方法
可以將對象存儲在Context作用范圍域
又稱為全局作用范圍域,
在整個web應(yīng)用當(dāng)中可以共享.
ServletContext對象
可以和服務(wù)器進行通訊,
比如寫信息到服務(wù)器的日志信息當(dāng)中。。
以上就是動力節(jié)點Java培訓(xùn)機構(gòu)小編介紹的“2020年五道Java高級程序員面試題”的內(nèi)容,希望對大家有幫助,如有疑問,請在線咨詢,有專業(yè)老師隨時為你服務(wù)。
相關(guān)閱讀
初級 202925
初級 203221
初級 202629
初級 203743