String o = (String) redisTemplate.opsForValue().get(key);//json 转换成String
JSONObject jsonObject = JSON.parseObject(o);//String 转换成 json
//json 转换成Map<String, Object>
Map<String, Object> map = new HashMap<>();
for (Map.Entry<String, Object> entry : jsonObject.entrySet()) {
map.put(entry.getKey(), entry.getValue());
}
String json = JSON.toJSONString(map); // Map<String, Object>转换成String
JSONObject js = JSON.parseObject(json); //String 转换成 json
//json 转换成对象
StationBillingTacticsInfo stationBillingTacticsInfo = JSON.parseObject(json, new TypeReference<StationBillingTacticsInfo>() {});
对象转换成json
如何将Java对象转换为JSON字符串的分步示例
将Java Object转换为JSON字符串的最常见方法是使用API 。 为此目的最常用的API是Jackson和GSON。
本示例说明如何使用JACKSON API将Java对象转换为JSON字符串。
我们可以使用Jackson API提供的ObjectMapper类进行转换。
writeValueAsString()用于将Java obj转换为JSON
readValue()用于将JSON转换为Java obj
com.fasterxml.jackson.core
jackson-databind
2.9 . 8
ObjectMapper mapper = new ObjectMapper(); try {
String json = mapper.writeValueAsString(cat);
System.out.println( "ResultingJSONstring = " + json);
//System.out.println(json); } catch (JsonProcessingException e) {
e.printStackTrace(); }
示例
public class Laser018008Controller {
@Autowired
private RedisTemplate redisTemplate;
@Autowired
private RedisUtil redisUtil;
@GetMapping("findAllData/{key}")
@ApiOperation("焊接专机数据查询")
public R findAllData(@PathVariable("key") String key) {
String o = (String) redisTemplate.opsForValue().get(key);
JSONObject jsonObject = JSON.parseObject(o);
Map<String, Object> map = new HashMap<>();
for (Map.Entry<String, Object> entry : jsonObject.entrySet()) {
map.put(entry.getKey(), entry.getValue());
}
String json = JSON.toJSONString(map);
JSONObject js = JSON.parseObject(json);
System.out.println("jsonObject"+jsonObject);
System.out.println("json"+json);
System.out.println("js"+js);
String header;
System.out.println("js"+js.get("header"));
return R.ok().data("ctldata", js);
}
}
··
@ApiOperation("添加")
@PostMapping("addStationBilling")
public R addStationBilling(@RequestBody StationBillingModeInfo stationBillingModeInfo) {
QueryWrapper<StationInfo> wrapper = new QueryWrapper<>();
//根据添加的区域编码查询区域内换电站信息
wrapper.eq("f_area_code", stationBillingModeInfo.getFAreaCode());
List<StationInfo> list = stationInfoService.list(wrapper);//换电站信息
StationBillingTacticsInfo stationBillingTacticsInfo = new StationBillingTacticsInfo();
Map<String, Object> map = new HashMap<>();
for (int i = 0; i < list.size(); i++) {
map.put("fareaCode", stationBillingModeInfo.getFAreaCode());
map.put("fbillingMode", stationBillingModeInfo.getFBillingMode());
map.put("fendTime", stationBillingModeInfo.getFEndTime());
map.put("fstartTime", stationBillingModeInfo.getFStartTime());
map.put("fstate", stationBillingModeInfo.getFState());
map.put("fstationNo", list.get(i).getFStationNo());
map.put("fstationName", list.get(i).getFStationName());
String json = JSON.toJSONString(map);
stationBillingTacticsInfo = JSON.parseObject(json, new TypeReference<StationBillingTacticsInfo>() {});
boolean save= stationBillingTacticsInfoService.save(stationBillingTacticsInfo);
if(save){
boolean result = stationBillingModeInfoService.save(stationBillingModeInfo);
}else {
return R.error();
}
}
return R.ok();
}