java知识 特殊符号转换
■情况
想把代码中的出现 “ ’等特殊符号时,在他们的前面,转换时自动加 \ 最后转换成json
决定用ObjectMapper这个类,先准备一个Map,之后,map作为一个参数,调用ObjectMapper的方法,就能在转换时自动加上 \
■代码
import java.io.IOException;
import java.util.HashMap;
import java.util.Map; import com.fasterxml.jackson.core.JsonParseException;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.JsonMappingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.SerializationFeature; public class ObjectMapperDemo { public static void main(String args[]) throws JsonParseException, JsonMappingException, IOException {
ObjectMapper objectMapper = new ObjectMapper();
//Set pretty printing of json
objectMapper.enable(SerializationFeature.INDENT_OUTPUT); //Define map which will be converted to JSON
Map<String, String>mapIdPerson = new HashMap<String, String>();
mapIdPerson.put("id", "001");
mapIdPerson.put("name", "James");
mapIdPerson.put("age", "13");
mapIdPerson.put("address", "street \"18"); //1. Convert Map to JSON
String mapToJson = objectMapper.writeValueAsString(mapIdPerson);
System.out.println("1. Convert Map to JSON :");
System.out.println(mapToJson); //2. JSON to Map
//Define Custom Type reference for map type
TypeReference<Map<String, String>> mapType = new TypeReference<Map<String,String>>() {};
Map<String,String> jsonToMap = objectMapper.readValue(mapToJson, mapType);
System.out.println("\n2. Convert JSON to Map :"); // Print map output using Java 8
// lambda expressions
jsonToMap.forEach((k, v) ->
System.out.println(k + "=" + v));
}
}
■运行结果
1. Convert Map to JSON :
{
"address" : "street \"18",
"name" : "James",
"id" : "001",
"age" : "13"
} 2. Convert JSON to Map :
address=street "18
name=James
id=001
age=13
maven的链接如下,你可以选择自己想要的jar包版本:
https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind
java知识 特殊符号转换的更多相关文章
- Java知识回顾 (1) 编译环境与基本变量类型
参考资料 runoob Java知识回顾序列的相关资料,主要来自 runoob,并对其中的知识进行概况或总结,去除对一个之前了解过Java的人员无关的知识点.以便能够使得一个新手,或之前有Java经验 ...
- Java 与无符号那些事儿
最近在使用 Java 作为 WebSocket 客户端连接 Node.js 的 WebSocket 服务器的时候,由于使用的客户端库比较老,所以遇到了字节符号的问题,上网查了一下,看到这篇文章写的很有 ...
- Android开发学习必备的java知识
Android开发学习必备的java知识本讲内容:对象.标识符.关键字.变量.常量.字面值.基本数据类型.整数.浮点数.布尔型.字符型.赋值.注释 Java作为一门语言,必然有他的语法规则.学习编程语 ...
- 实现网络数据提取你需要哪些java知识
本篇对一些常用的java知识做一个整合,三大特性.IO操作.线程处理.类集处理,目的在于能用这些只是实现一个网页爬虫的功能. Ⅰ 首先对于一个java开发的项目有一个整体性的了解认知,项目开发流程: ...
- JAVA基本数据类型及其转换
Java语言是一种强类型语言.这意味着每个变量都必须有一个声明好的类型.Java语言提供了八种基本类型.六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型.Java另外还提供大数字对 ...
- Java知识回顾 (11) 异常处理
距离最近的 Java知识回顾系列(10),2019.4.24日,到现在,已经近半年过去了. 感觉,做一件事情,如果有头无尾,实在不好,心里会一直悬着.所以,现在继续上面的内容. 再次声明,正如(1)中 ...
- 打造一款 刷Java 知识的小程序(二)
学习Java的神器已上线,面向广大Java爱好者! 之前写的一篇:打造一款 刷Java 知识的小程序(一) 一.第二版做了什么? 第一版小程序只具有初级展示功能,知识点都是hardcode在代码里面的 ...
- Java页面中文编码要转换两次encodeURI
1.js文件中使用encodeURI()方法. login_name = encodeURI(encodeURI(login_name)); 2.action中URLDecoder解码 loginNa ...
- system verilog中的类型转换(type casting)、位宽转换(size casting)和符号转换(sign casting)
类型转换 verilog中,任何类型的任何数值都用来给任何类型赋值.verilog使用赋值语句自动将一种类型的数值转换为另一种类型. 例如,当一个wire类型赋值给一个reg类型的变量时,wire类型 ...
随机推荐
- asp.net 发送电子邮件本地测试正常,但服务器上异常的解决办法
如题,这个问题曾经非常苦恼,代码肯定是没有问题的.在网上也查找了不少资料,按照他们的步骤做了,还是无效. 最后问题解决了,原来:我租用腾讯云服务器,腾讯为了防止垃圾邮件,禁止了邮件发送的25号端口,原 ...
- 【原创】<Debug> not positioned on a valid record
[Problem] QSqlQuery::value: not positioned on a valid record QSqlQuery :: value:未定位在有效记录上 [Solution] ...
- Python Oracle连接与操作封装
一.封装方式一 #encoding:utf-8 import cx_Oracleclass Oracle_Status_Output: def __init__(self,db_name,db_ ...
- PE文件 01 导入表
0x01 导入表结构 数据目录表中的第二个成员标记了导入表的RVA和Size大小,由此可以定位到导入表: typedef struct _IMAGE_DATA_DIRECTORY { DWORD ...
- DevExpress v18.1新版亮点——DevExtreme篇(一)
用户界面套包DevExpress v18.1日前终于正式发布,本站将以连载的形式为大家介绍各版本新增内容.本文将介绍了DevExtreme JavaScript Controls v18.1 的新功能 ...
- linux,windows下日志文件查找关键词
1.查找 /apps/tomcat/tomcat3/apache-tomcat-7.0.69/logs 目录下已.txt结尾的文件,在文件中搜索关键字 IfcmpEcrService并打印行号 /lo ...
- <codis><jodis>
Overview For codis and jodis. Codis TBD... Jodis Java client for codis. Jodis is a java client for c ...
- ALTER语句重命名,重新定义和重新排序列
该CHANGE,MODIFY和 ALTER子句可以改变现有列的名称和定义.他们有这些比较特征: CHANGE: 可以重命名列并更改其定义,或两者都可以. 具有更多的能力MODIFY,但是以某些操作的便 ...
- ios中scrollView基本用法
设置scrollView内容的尺寸(滚动的范围) self.scrollView.contentSize = CGSizeMake(, ); self.scrollView.contentSize = ...
- Nodejs安装express提示不是内部或外部命令
安装nodejs安装包后,通过npm安装express后,运行express提示" express"不是内部或外部命令. c:\express -t ejs web 原因是版本问题 ...