1.添加依赖
<dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.15.2</version> </dependency>
2.编写实体类
3.重写ObjectMapper方法
class BigIntJsonMapper extends ObjectMapper { private static final long serialVersionUID = -9155542253159648420L; public BigIntJsonMapper(){ Jackson2ObjectMapperBuilder.json().configure(this); SimpleModule se=new SimpleModule(); se.addSerializer(Long.class, ToStringSerializer.instance); se.addSerializer(Long.TYPE,ToStringSerializer.instance); this.registerModule(se); } }
4.调用BigIntJsonMapper对象实现long类型转为String
public class Demo3 { public static void main(String[] args) throws JsonProcessingException { Student stu=new Student(12345l,"张焌宇"); JSONObject stuFormat=longformatString(stu); System.out.println(stuFormat); } public static JSONObject longformatString(Student student) throws JsonProcessingException { BigIntJsonMapper bigIntJsonMapper=new BigIntJsonMapper(); String writeValueAsString = bigIntJsonMapper.writeValueAsString(student); return (JSONObject) JSON.parse(writeValueAsString); } }
5.debug效果