SpingMvc配置ResponseBody,並且返回jsonp格式

 

1.引入依賴jar包,我這裏用jackson轉換json

<dependency>
	<groupId>com.fasterxml.jackson.core</groupId>
	<artifactId>jackson-databind</artifactId>
    <version>2.7.4</version>
</dependency>

2.配置xml,讓spring幫我們處理返回值

<mvc:annotation-driven/> 

3.controller方法增加@ResponseBody及produces


@RequestMapping(params = "method=test",produces={"application/json; charset=UTF-8"})
@ResponseBody
public Result test() {

    PayChannelVO payChannelVO = new PayChannelVO();
	payChannelVO.setYufu(1);
	payChannelVO.setPayType("張三");

	return Result.success(payChannelVO);
	
}

 4.配置@ControllerAdvice

@ControllerAdvice(basePackages="com.cmedicine.core")
public class JsonAdvice extends AbstractJsonpResponseBodyAdvice {

	public JsonAdvice(){
		
//		super("callback","jsonp");
		super("callback");
	}
}

 需要在xml裏面的component-scan配置上該類所在的包,讓spring掃描到。

<context:component-scan
		base-package="com.cmedicine.core.jsonp" />

5.測試:請求的時候加入callback參數即可

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章