导图社区 json
这是一篇关于json的思维导图,主要内容有概念、语法、fastjson。喜欢的小伙伴们可以点赞收藏哦!
编辑于2022-05-07 10:52:02Linux是一套不用付费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。专业性强,主要用于服务器,嵌入式系统,移 动终端系统等
Thymeleaf提供了一个用于整合Spring MVC的可选模块,在应用开发中,你可以使用Thymeleaf来完全代替JSP或其他模板引擎,如Velocity、FreeMarker等。Thymeleaf的主要目标在于提供一种可被浏览器正确显示的、格式良好的模板创建方式,因此也可以用作静态建模。你可以使用它创建经过验证的XML与HTML模板。相对于编写逻辑或代码,开发者只需将标签属性添加到模板中即可。
这是一篇关于Nginx的思维导图,主要内容有1.目标、2.Nginx的安装与启动、3.Nginx静态网站部署、4.Nginx反向代理与负载均衡。
社区模板帮助中心,点此进入>>
Linux是一套不用付费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。专业性强,主要用于服务器,嵌入式系统,移 动终端系统等
Thymeleaf提供了一个用于整合Spring MVC的可选模块,在应用开发中,你可以使用Thymeleaf来完全代替JSP或其他模板引擎,如Velocity、FreeMarker等。Thymeleaf的主要目标在于提供一种可被浏览器正确显示的、格式良好的模板创建方式,因此也可以用作静态建模。你可以使用它创建经过验证的XML与HTML模板。相对于编写逻辑或代码,开发者只需将标签属性添加到模板中即可。
这是一篇关于Nginx的思维导图,主要内容有1.目标、2.Nginx的安装与启动、3.Nginx静态网站部署、4.Nginx反向代理与负载均衡。
json
概念
js对象表示法,用于存储交换文本数据的语法,比xml更小更好解析
语法
数据以键值对的形式存在
键用引号引起来,也可以不用引号
值
数字
字符串
true|| false
数组
对象
null
获取数据
对象.键名
对象["键名"]
数组对象[索引]
遍历对象键值
for(var key in jsonObj)
jsonObj[key]
json和java对象转换
jackson
使用步骤
导入jar包
创建ObjectMapper对象
java转json
writeValue(字符流||字节流||文件,obj)
writeValueAsString(obj)
注解
@JsonIgnore
@JsonFormat(pattern = "yyyy-MM-dd")
json转java对象
readValue(json字符串,class对象)
复杂对象转换
list:数组
map和对象格式一样
jsonlib
Gson
fastjson
fastjson
项目
智慧医院
智慧商城
导入依赖
<!--fastjson--> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.51</version> </dependency>
常用方法
JSON
public static String toJSONString(Object object)
将指定的类转换为JSON字符串
This method serializes the specified object into its equivalent Json representation.
模板
JSON.toJSONString(Object对象)
例如
/** * 支付结果通知回调(支付结果通知https://pay.weixin.qq.com/wiki/doc/api/native.php?chapter=9_7&index=8) * @param request * @return */ @RequestMapping("/notify/url") public String notifyUrl(HttpServletRequest request) throws Exception { // 获得HttpServletRequest信息 String xmlResult = getRequestMessage(request); // XML格式字符串转换为Map Map<String, String> resultMap = WXPayUtil.xmlToMap(xmlResult); // 发送支付结果给MQ // This method serializes the specified object into its equivalent Json representation. rabbitTemplate.convertAndSend(exchange,routingKey, JSON.toJSONString(resultMap)); String result = "<xml><return_code><![CDATA[SUCCESS]]></return_code><return_msg><![CDATA[OK]]></return_msg></xml>"; return result; }
JSON.toJSONString(resultMap)
public static <T> T parseObject(String text, Class<T> clazz)
将JSON字符串转化为指定的类
模板
JSON.parseObject(JSON字符串, 转换后的类)
例如
JSON.parseObject(message, Map.class)
Map<String,String> map = JSON.parseObject(message, Map.class);
/** * 支付结果监听 * @param message 支付结果 */ // Annotation that marks a method to be the target of a Rabbit message listener within a class that is annotated with RabbitListener. @RabbitHandler public void getMessage(String message){ // 支付结果 Map<String,String> map = JSON.parseObject(message, Map.class); }