小程序毕设笔记——List转JSON+小程序获取

做个微信小程序(后台管理:jsp+mysql)

跟着视频做了个小程序商城,但是API是现成的,自己的项目还得自己做好后台再做前端,于是开始做后台,其中Java连接数据库已经熟悉,现在的问题是把获取的Object对象类型数据需要转换成小程序能直接获取的Json格式。
开始网上查找List对象转Json,得到的结果大致都是利用net.sf.json包下JSONArray的静态方法:fromObject(list) 直接用此方法快捷转换JSON,结果报一堆错误,原因是缺少一些其他的依赖包,逐个排查后总共下了这些包:
报错的可能是缺少其中的某个包
String对象转Json示例:

	String jsonStr = "{\"key1\":\"One\",\"key2\":\"110\"}";
	JSONObject jsonObject = JSONObject.parseObject(jsonStr);
	String parserJsonStr = JSONObject.toJSONString(jsonObject); 
	out.println(parserJsonStr); 

在这里插入图片描述
到这里是可行的,但当我改成List的时候出错了:

大概是版本问题,由于过程太繁琐,版本问题我也不想改成低版本的,要改得全改,做到这里就停滞不前了,于是我开始寻找其他方法,果然功夫不负有心人,我找到了阿里巴巴的一个将Object转为json数据的工具包——fastjson (https://github.com/alibaba/fastjson:下载链接)
实现方法非常简单,导入下好的jar包后,这样这样然后那样那样就好了

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8" import="java.util.List" 
     import="com.alibaba.fastjson.*"
%>
 <jsp:useBean id="Carpool" class="objects.Carpoolinfo"></jsp:useBean>
 <%
 	String str1="我发起的";String str2="拼车中";
	List carpool = Carpool.getAllCarpool(str1,str2);
	String s=JSON.toJSONString(carpool);
	out.println(s);
%>

运行后结果:
在这里插入图片描述
小程序端:

page({
	data: {
	    list: [], 
	  }, 
	  onLoad: function (options) {
	    var that = this;
	    wx.request({
	      url: 'http://localhost:8081/CarSystem/NewFile.jsp',
	      data: {
	      },
	      success(res) {
	        console.log(res);
	        that.setData({
	          list: res.data
	        })
	
	      }
	    })
	  }
})

在这里插入图片描述
其他:
List转Json

List<Student> students = new ArrayList();
String str = JSON.toJSONString(students); // List转json

Json 转List 方法一

String json = ""; //获取的Json数据
List<Student> students = JSON.parseObject(json,new TypeReference<List<Student>>(){}); // Json 转List

Json 转List方法二

List<Student> students = JSON.parseArray(json,Student.class); 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值