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

  • Post author:
  • Post category:小程序




做个微信小程序(后台管理: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); 



版权声明:本文为weixin_42936768原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。