导包
<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <version>2.10.1</version>
</dependency>处理乱码
json解析
//@Controller
@RestController//不经过视图解析器,return字符串
public class UserController {
    @RequestMapping("/json1")
    //@ResponseBody//不经过视图解析器,return字符串
    public String json1() throws JsonProcessingException {
        //jackson - ObjectMapper
        ObjectMapper mapper = new ObjectMapper();
        User user = new User("大头儿子", 6, "男");
        String string = mapper.writeValueAsString(user);
        return string;
    }
    @RequestMapping("/json2")
    //队列
    public String json2() throws JsonProcessingException {
        ObjectMapper mapper = new ObjectMapper();
        List<User> userList = new ArrayList<User>();
        User user1 = new User("大头儿子", 6, "男");
        User user2 = new User("也是大头儿子", 6, "男");
        User user3 = new User("还是大头儿子", 6, "男");
        User user4 = new User("不是大头儿子", 6, "女");
        userList.add(user1);
        userList.add(user2);
        userList.add(user3);
        userList.add(user4);
        String users = mapper.writeValueAsString(userList);
        return users;
    }
    @RequestMapping("/json3")
    //时间
    public String json3() throws JsonProcessingException {
        ObjectMapper mapper = new ObjectMapper();
        Date oridate = new Date();
        //通过java格式化时间
        SimpleDateFormat format = new SimpleDateFormat("yy-MM-dd HH:mm:ss");
        String date = format.format(oridate);
        String obj = mapper.writeValueAsString(date);
        return obj;
    }
    @RequestMapping("/json4")
    public String json4() throws JsonProcessingException {
        ObjectMapper mapper = new ObjectMapper();
        Date oridate = new Date();
        //不使用时间戳的方式
        mapper.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false);
        //自定义时间格式
        SimpleDateFormat format = new SimpleDateFormat("yy-MM-dd HH:mm:ss");
        mapper.setDateFormat(format);
        String obj = mapper.writeValueAsString(oridate);
        return obj;
    }
    @RequestMapping("/json5")
    public String json5() throws JsonProcessingException {
        Date oridate = new Date();
        //使用自建工具类
        String obj = JsonUtils.getJson(oridate);
        return obj;
    }
    @RequestMapping("/json6")
    //队列
    public String json6() throws JsonProcessingException {
        List<User> userList = new ArrayList<User>();
        User user1 = new User("大头儿子", 6, "男");
        User user2 = new User("也是大头儿子", 6, "男");
        User user3 = new User("还是大头儿子", 6, "男");
        User user4 = new User("不是大头儿子", 6, "女");
        userList.add(user1);
        userList.add(user2);
        userList.add(user3);
        userList.add(user4);
        //使用自建工具类
        String users = JsonUtils.getJson(userList);
        return users;
    }自建工具类
public class JsonUtils {
    public static String getJson(Object object) {
        return getJson(object, "yy-MM-dd HH:mm:ss");
    }
    public static String getJson(Object object, String dateformat) {
        ObjectMapper mapper = new ObjectMapper();
        mapper.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false);
        SimpleDateFormat format = new SimpleDateFormat(dateformat);
        mapper.setDateFormat(format);
        try {
            return mapper.writeValueAsString(object);
        } catch (JsonProcessingException e) {
            e.printStackTrace();
        }
        return null;
    }
}原文:https://www.cnblogs.com/pinked/p/12230005.html