在使用 JSON.toJSONString 方法将 Java 对象转换为 JSON 字符串时,如果想要排除某个字段,可以通过自定义一个实现了 PropertyFilter 接口的过滤器来实现。
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.serializer.PropertyFilter;
public class ExcludeFieldExample {
public static void main(String[] args) {
// 创建一个示例对象
User user = new User(“John”, “Doe”, “john.doe@example.com”);
// 使用 PropertyFilter 过滤器排除 email 字段
PropertyFilter filter = (object, name, value) -> !name.equals("email");
// 将对象转换为 JSON 字符串,并排除 email 字段
String jsonString = JSON.toJSONString(user, filter);
System.out.println(jsonString);
}
static class User {
private String firstName;
private String lastName;
private String email;
public User(String firstName, String lastName, String email) {
this.firstName = firstName; this.lastName = lastName;
this.email = email;
}
// 省略 getter 和 setter 方法
}
}