天天看點

bboss mvc接收和響應xml格式資料的方法

本文介紹bboss mvc接收和響應xml格式資料的方法

1.首先需要在bboss-mvc.xml檔案中配置bboss mvc處理xml封包的插件XMLHttpMessageConverte:

<property name="httpMessageConverters">

     <list>

     <property class="org.frameworkset.http.converter.json.MappingJacksonHttpMessageConverter"/>

     <property class="org.frameworkset.http.converter.XMLHttpMessageConverter"/>

     <property class="org.frameworkset.http.converter.StringHttpMessageConverter"/>

     </list>       

     </property>

org.frameworkset.http.converter.XMLHttpMessageConverter就是bboss mvc處理xml封包的插件實作類,可以通過在請求參數前加RequestBody 注解進行擷取請求體重的xml封包,響應xml可以通過在傳回值前面添加@ResponseBody(datatype="xml")注解 實作;xml處理插件可以将請求體中的xml封包轉換為字元串、po對象類型的資料,也可以将傳回的po對象或者list等集合對象轉換為xml響應封包傳回。

2.接收xml和響應xml的方法:

接收和響應字元串xml封包

public @ResponseBody(datatype="xml") String echo(@RequestBody String xml)
	{
		System.out.println(xml);
		return xml;
	}      

接收和響應字元串po對象封包

public @ResponseBody(datatype="xml") List<PO> echo(@RequestBody PO xml)
	{
                  List<PO> ret = new ArrayList<PO>();
ret.add(xml);
		return ret ;
	}      

bboss mvc采用xstream和JAXB兩種方式來實作xml和對象互相轉,如果po對象類添加了注解javax.xml.bind.annotation.XmlRootElement,那麼就采用JAXB來處理xml和對象間的轉換,否則采用xstream來處理xml和對象間的轉換。

XMLHttpMessageConverter插件接收application/xml,text/xml類型的請求封包,同時以application/xml類型響應xml封包。