fastjson最新版本升级问题(Found interface java.lang.reflect.Type, but class was expected)
本文目录
- Found interface java.lang.reflect.Type, but class was expected
- Java调用URL错误,报505
- 如何取消fastjson的field缺省排序
Found interface java.lang.reflect.Type, but class was expected
从错误上看是fastjson在解析的时候报了java.lang.reflect.Type期望是class而实际类型是interface。java.lang.reflect.Type这个从jdk1.5开始就就是接口。所以我怀疑是jdk版本不符合你用的fastjson的版本要求。不是jdk版本太高就是fastjson版本太低。
Java调用URL错误,报505
HttpURLConnection 请求中 参数中如果有 空格,请求则会 505错误
解决: 需要对有空格的参数 做URL编码处理。
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; ***隐藏网址*** import com.alibaba.fastjson.JSONObject; public class SingleTableRestClient { ***隐藏网址*** public static void main(String args) { JSONObject obj = new JSONObject(); obj.put("XM", "匡匡"); obj.put("BIRTHDAY", 《span style="color:#FF6666;"》getURLEncoder《/span》("1988-01-01 00:00:00,1988-12-30 00:00:00")); String urls = targetURL + obj.toString(); requestRestServer(urls); } public static JSONObject requestRestServer(String url) { JSONObject obj = new JSONObject(); try { URL restServiceURL = new URL(url); ***隐藏网址******隐藏网址******隐藏网址******隐藏网址******隐藏网址*** ***隐藏网址*** throw new RuntimeException("HTTP GET Request Failed with Error code : " ***隐藏网址*** } BufferedReader responseBuffer = new BufferedReader(new InputStreamReader( ***隐藏网址*** String output = ""; String result = ""; System.out.println("Output from Server: \n"); while ((output = responseBuffer.readLine()) != null) { //System.out.println(output); result = output; } obj = JSONObject.parseObject(result); System.out.println(obj.toString()); ***隐藏网址*** } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } return obj; } @SuppressWarnings("deprecation") 《span style="color:#FF6666;"》private static String getURLEncoder(String dest) { return URLEncoder.encode(dest); }《/span》 }
修改后 正常ok
如何取消fastjson的field缺省排序
使用Feature.OrderedFieldJSON.parseObject("...", Feature.OrderedField); 1.1.41不支持JSON.parseObject("...", Feature.OrderedField);已经升级为最新版本1.2.12了,该版本是可以不缺省排序的
更多文章:
虚拟机linux语言改为中文(我在windows xp 系统上用虚拟机虚拟了个linux系统 却是全英文 怎样变成中文啊求高人指点)
2024年3月29日 19:30
foreign中文(为什么北外的英文名用foreign,上外的英文名用international)
2024年9月28日 03:15
新手如何在北京选择一个合适的web前端培训班得花多少钱?web前端培训班学费多少
2024年7月12日 07:50
java环境变量没有path(为什么我的环境变量里面找不到classpath)
2024年6月28日 22:50
bartender中文版免费(bartender7.72怎么安装中文的)
2024年7月20日 06:41
layering翻译(这句话是什么意思请从语法角度来分析翻译)
2024年5月7日 18:35
elementui怎么使用(Element-ui的使用(二):Form表单(基本效验))
2024年7月24日 04:38
php foreach二维数组(PHP编写一个二维数组,记录同寝室同学的相关信息,并输出)
2024年6月17日 17:40