對不起,這個直率的問題。但許多人一天到晚都在使用這兩個術語,但我不知道。我對此做了一些研究,並且知道它是什麼。但不明白它是如何相關的。我會先分享我對這兩個人的理解。什麼是JAXB和JAXRS?他們有什麼關係?
JAXB是XML至Java綁定技術,可以轉換 模式和Java對象之間以及XML實例文檔 和Java對象實例之間。內部JAXB在xml和java之間執行所有這些轉換 。這是一個xml解析器,然後它知道xml中的組件對應於java中的內容,並且它會中斷。從JAXB這個答案的 轉換是由像XJC(或 codgen插件)工具來完成。映射可以是像
的xsd:串java.lang.String中
的xsd:整數java.math.BigInteger中
JAXRS是不同的。這是處理 請求的一組規範。這意味着,它說「GET(」/foo「的)」是指處理得到 電話與網址/ foo中。它只是說明。它是如何完成的?是的,那 被稱爲本規範的實施。有幾個 實現像restlet,resteasy,球衣,apache cxf等。 這是模擬邏輯和你在數學中實現的方式。算法思想是桶搜索。這可以以任何方式實現。 Java術語JAXRS是接口和這些4的Restlet,RestEasy的, 球衣,apache的CXF是接口的實現。
現在請說,如果我的理解是正確的。然後說出他們是如何相關的。請幫忙 。如果可能的話,圖解說明會更有幫助。
非常感謝你。但我有兩個問題。 1)您的意思是「默認爲應用程序/ xml媒體類型JAX-RS將使用JAXB」。那麼其他媒體類型會發生什麼。 2)你引用的例子強調什麼?請澄清。 –
Ya在評論1中的第二個問題被清除了。但是在上面的示例中,您會說「JAXB impl將用於將客戶實例轉換爲XML」。這段代碼是內部代碼還是代碼片段本身?如果在例子中你能告訴行號? –
您可以通過提供自定義的'MessageBodyReader' /'MessageBodyWriter'來覆蓋'application/xml'的默認處理。對於其依賴的其他媒體類型。 'application/json'媒體類型很流行,但JAX-RS沒有定義默認綁定應該是什麼,實現已經有了自己的默認設置。下面是一個例子:http://blog.bdoughan.com/2013/07/oracle-weblogic-1212-now-with.html –