| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- package cn.com.lzt.common.view;
- import com.alibaba.fastjson.JSON;
- import com.google.gson.Gson;
- import com.google.gson.GsonBuilder;
- import org.springframework.web.servlet.ModelAndView;
- import org.springframework.web.servlet.View;
- import javax.servlet.ServletOutputStream;
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
- import java.util.Map;
- public class JsonDataModelAndView extends ModelAndView {
- private Object objectJson;
- private static Gson gson = new Gson();
- public JsonDataModelAndView(Object objectJson){
- super();
- this.objectJson= objectJson;
- }
- @Override
- public View getView(){
- return new View() {
- @Override
- public String getContentType() {
- return "application/json;charset=utf-8";
- }
- @Override
- public void render(Map<String, ?> map, HttpServletRequest httpServletRequest,
- HttpServletResponse httpServletResponse) throws Exception {
- httpServletResponse.setContentType(getContentType());
- ServletOutputStream out = httpServletResponse.getOutputStream();
- try
- {
- if(objectJson != null)
- {
- String json = JSON.toJSONString(objectJson);
- byte[] bytes = json.getBytes("utf-8");
- out.write(bytes);
- out.flush();
- }
- }finally
- {
- if(out != null)
- {
- out.close();
- }
- }
- }
- };
- }
- }
|