在現(xiàn)在的應(yīng)用系統(tǒng)中幾乎都能看到xml和database的身影,與這兩個東西正交的是OO.
- XML <==> OO 影射的東西有很多,一般都是使用marshaller架構(gòu).
?
(這里不說用于xml解析的dom和sax模型,只是說xml與pojo的影射關(guān)系:)其實(shí)再怎么影射也是通過dom或者sax接口的實(shí)現(xiàn)進(jìn)行解析的,還是通過新的javaSE規(guī)范Streaming API for XML (StAX), xml和OO的影射只不過進(jìn)行了抽象封裝,把xml到pojo之間的解析部分透明化了,我們這里實(shí)際說的其實(shí)是JavaEE5.0中一個新的規(guī)范Java Architecture for XML Binding (JAXB))
比較有名的框架有:
+ castor 比較有名的一個O/X影射框架,可以根據(jù)xsd生成解析框架.(個人比較喜歡使用她)
+ apache 的xmlbean和Commons-Digester(不知道為什么會存在兩個同樣領(lǐng)域的東西,可能是digester相對來說比較簡單,因而它被許多的apache的開源項(xiàng)目使用);
+ JAXB 是JAVAEE中的對于xml和OO對象Binding定制的新的規(guī)范(標(biāo)準(zhǔn)阿!);
實(shí)際要研究xml和OO的影射框架,大家不妨看看現(xiàn)有的web service框架就會了解很多了,建議看Codehaus的 XFire 他是一個比較輕量級的WS框架,AXIS2也不錯.
我了解的XML Binding框架就這么多,如果誰知道更好用的可以告訴我,相您請教.
- 對于O/R mapping 就不用太說了,大家了解的可能都比我多,個人只用過一下幾個:
+ hibernate ,ibatis ,jdo ,castor jdo(期待EJB3.0種的Persistence規(guī)范JPA)對于這幾種框架的介紹就不說明了,google一下會出來無數(shù).
?
?這里不是想討論兩種技術(shù),而是想聽大家對XML到database的影射有什么更好的辦法,因?yàn)镺/X,O/R都有很好的框架了,是否有X/R的好的框架.
這里我只知道castor 中對從xml到database有一定的支持,但支持的還是不夠,hibernate3.0種好象對xml到database進(jìn)行了支持,但是也是一些簡單的支持.
不斷整理中。。。