url调用controller方法将处理数据直接输出到页面不跳转

maven环境ssm项目

遇到的问题

1.导入json依赖,从网上看到好多都是说导入json-lib-2.4,还因为没有加jdk15报错,但是这些我都加上了,还是报错,打开Mavenlibrary,发现提示jar has no source attachment 搜了好久都没解决,后来看到一篇博客说 jdk7以及7以上都已经不用json-lib了,目前有好多j好用有快速的json库,我用的fastjson

<!-- https://mvnrepository.com/artifact/com.alibaba/fastjson -->
<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>fastjson</artifactId>
    <version>1.2.58</version>
</dependency>

 终于不报错了

2.

需要达到的效果是通过url调用controller里的方法,处理的数据直接显示在当前,不需要跳转页面,因为要提供给不同前端使用


import java.io.IOException;
import java.io.OutputStream;
import java.util.List;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import service.IRizhaoService;
import vo.Rizhao;


@Controller
@RequestMapping("/rizhao")
public class RizhaoController  {
	
@Resource
IRizhaoService rizhaoService;
  
    @RequestMapping("/getRizhaoData")
	public void getRiZhaoData(int num,HttpServletResponse resp) throws IOException {		
    	resp.setCharacterEncoding("utf-8");
        resp.setHeader("Content-type", "text/html;charset=UTF-8");
        resp.setContentType("text/html");
    	OutputStream out = resp.getOutputStream();
			try {
				List<Rizhao> rizhaoList=rizhaoService.getData(num);
				
				JSONArray jsonArray = new JSONArray();
				for(Rizhao rizhao:rizhaoList) {
				JSONObject jsonObject = new JSONObject();
					jsonObject.put("id", rizhao.getId());
					jsonObject.put("date", rizhao.getDate());
					jsonObject.put("area",rizhao.getArea());
					jsonObject.put("rizhao",rizhao.getRizhao());
					jsonArray.add(jsonObject);
					
				}
				out.write(jsonArray.toString().getBytes("utf-8"));
				System.out.println(jsonArray.toString());
				
			} catch (Exception e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			
			}
			
		
		
		
	}
   
 
}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值