SpringMVC 中整合JSON、XML視圖一 – JAVA編程語言程序開發技術文章

SpringMVC中整合瞭JSON、XML的視圖,可以通過這些視圖完成Java對象到XML、JSON的轉換。轉換XML提供瞭MarshallingView,開發者隻需用註入相應的marshaller、和屬性配置,即可自動完成Java的Model對象中的數據到XML的編組。


Email:hoojo_@126.com


Blog:http://blog.csdn.net/IBM_hoojo


http://hoojo.cnblogs.com/


一、 準備工作


1、 本次程序會涉及到Jackson、xStream、Jibx、Jaxb2、castor等技術


這篇文章中涉及到的內容應該對你有不少幫助。


2、 jar包下載


spring各版本jar下載地址:http://ebr.springsource.com/repository/app/library/detail?name=org.springframework.spring


相關的依賴包也可以在這裡找到:http://ebr.springsource.com/repository/app/library


3、 至少需要以下jar包

clip_image002

 


4、 當前工程的web.xml配置


<?xml version=”1.0″ encoding=”UTF-8″?>
<web-app version=”2.4″
    xmlns=”http://java.sun.com/xml/ns/j2ee”
    xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”
    xsi:schemaLocation=”http://java.sun.com/xml/ns/j2ee
    http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd”>
   
    <– 配置Spring核心控制器 –>
    <servlet>
        <servlet-name>dispatcher</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>/WEB-INF/dispatcher.xml</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>
   
    <servlet-mapping>
        <servlet-name>dispatcher</servlet-name>
        <url-pattern>*.do</url-pattern>
    </servlet-mapping>
   
    <– 解決工程編碼過濾器 –>
    <filter>
        <filter-name>characterEncodingFilter</filter-name>
        <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
        <init-param>
            <param-name>encoding</param-name>
            <param-value>UTF-8</param-value>
        </init-param>
    </filter>
   
    <filter-mapping>
        <filter-name>characterEncodingFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
   
    <welcome-file-list>
      <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>
</web-app>


5、 WEB-INF中的dispatcher.xml配置


<?xml version=”1.0″ encoding=”UTF-8″?>
<beans xmlns=”http://www.springframework.org/schema/beans”
    xmlns:mvc=”http://www.springframework.org/schema/mvc”
    xmlns:context=”http://www.springframework.org/schema/context”
    xmlns:util=”http://www.springframework.org/schema/util”
    xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”
    xsi:schemaLocation=”http://www.springframework.org/schema/beans
    http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
    http://www.springframework.org/schema/mvc
    http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd
    http://www.springframework.org/schema/context
    http://www.springframework.org/schema/context/spring-context-3.0.xsd
    http://www.springframework.org/schema/util
    http://www.springframework.org/schema/util/spring-util-3.0.xsd”>
   
    <– 註解探測器 –>
    <context:component-scan base-package=”com.hoo.controller”/>
   
    <– 視圖解析器,根據視圖的名稱new ModelAndView(name),在配置文件查找對應的bean配置 –>
    <bean class=”org.springframework.web.servlet.view.BeanNameViewResolver”>
        <property name=”order” value=”1″/>
    </bean>
   
    <bean class=”org.springframework.web.servlet.view.InternalResourceViewResolver”>
        <property name=”viewClass” value=”org.springframework.web.servlet.view.JstlView”/>
    </bean>
</beans>


啟動後,可以看到index.jsp 沒有出現異常或錯誤。那麼當前SpringMVC的配置就成功瞭。



二、 利用Jaxb2編組XML


1、 Jaxb2可以完成XML和Java的相互轉換,在WebService中用得較多。前面也介紹過Jaxb2 的用法。


在線博文:


For cnblogs:http://www.cnblogs.com/hoojo/archive/2011/04/26/2029011.html


For csdn:aspx”>http://blog.csdn.net/IBM_hoojo/archive/2011/04/26/6363491.aspx


2、 首先在dispatcher.xml中配置Jaxb2的marshaller的視圖,配置如下:


<– xml視圖,Jaxb2Marshaller,需要配置對象和對象添加Annotation xml註解,不需要添加額外的jar包 –>

發佈留言