1. 程式人生 > >Spring MVC 返回JSON

Spring MVC 返回JSON

property 客戶 media true jackson nbsp 實體類 servle 類集

JSON是一種通用的傳輸數據的格式,現在處理JSON數據的jar包有很多,比如Jackson,Gson等,大部分方法都類似,無非是將實體類-JSON互相轉換。

在Spring MVC中,已經不需要我們特地的將查詢出來的實體類集合手動的轉換為JSON數據,再返回給前端。

在SpringMVC配置文件中,有一個專門返回數據類型的bean,叫作ContentNegotiatingViewResolver(內容協商視圖解析器),這個視圖解析器允許用同樣的內容數據呈現不同的view。

如果想通過配置的方式,將實體類自動以JSON的格式返回,這樣可以大大的減少代碼量,也能減少對代碼的汙染,可以參照如下配置:

      <bean
 		class="org.springframework.web.servlet.view.ContentNegotiatingViewResolver">
		<property name="order" value="1" />
		<property name="mediaTypes">
			<map>
				<entry key="json" value="application/json" />
			</map>
		</property>

		<property name="defaultViews">
			<list>
				<!-- JSON View -->
				<bean
					class="org.springframework.web.servlet.view.json.MappingJackson2JsonView">
				</bean>
			</list>
		</property>
		<property name="ignoreAcceptHeader" value="true" />
	</bean>

  

我們註入了一個org.springframework.web.servlet.view.json.MappingJackson2JsonView的類,當我們在控制器返回數據時,就會自動的幫我們解析JSON數據,返回給客戶端。當然記得在加上@responseBody註解。

Spring MVC 返回JSON