暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

使用JSON传递前后端数据

视界的接口 2021-04-01
330


JSON是一种轻量级的数据交换格式

可以独立于编程语言,使用文本形式表达和存储数据


在前端js中一切皆对象,js能表示的类型都可以使用json来表示。

下面是js对象:

var user = {
      name:"张三",
age:5,
sex:"男"
};
 var obj = {a: 'Hello', b: 'World'};

上面两个对象用json表示:

{"name":"张三","age":5,"sex":"男"}
{"a":"Hello","b":"World"}


js与json转换方式:


JavaScript 对象转换为JSON字符串,使用 JSON.stringify() 方法

JSON字符串转换为JavaScript 对象,使用 JSON.parse() 方法。




后端Java如何将java对象转成json字符串呢?


Jackson是一个比较流行的工具


首先导入Jackson的依赖

  <dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.12.2</version>
</dependency>

创建实体类User

@Data
@AllArgsConstructor
@NoArgsConstructor
public class User {
private String name;
private int age;
private String sex;
}

编写controller

@RestController
public class UserController {


@RequestMapping("/j1")
// @ResponseBody //不会走试图解析器,会直接返回一个字符串
public String json1() throws JsonProcessingException {


ObjectMapper mapper = new ObjectMapper();


User user = new User("张三", 12, "男");


String str = mapper.writeValueAsString(user);


return str;
}

@RestController是Controller+ResponseBody的合体

使用这个注解可以使方法返回的字符串不走试图解析器,单纯的只是返回字符串!


ObjectMapper是Jackson的类

结果如下





文章转载自视界的接口,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论