由于与 Spring 框架的集成,我刚刚开始使用 Jackson,并且遇到了值中单引号的问题。尝试在页面上使用 jQuery 解析 JSON 时,出现 JavaScript 错误"SyntaxError: missing ) after argument list"
。我习惯于使用 Gson 来序列化我的对象,并且不会遇到这个问题,因为 Gson 会用 Unicode \u0027 替换单引号。
例如;
爪哇
public final class Person {
private String firstName;
private String lastName;
public Person() {}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public String getFirstName() {
return firstName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
public String getLastName() {
return lastName;
}
}
JSON
在杰克逊
[{"person":{"firstName":"James","lastName":"O'tool"}}]
在Gson
[{"person":{"firstName":"James","lastName":"O\u0027tool"}}]
JavaScript;
// This is where the JavaScript fails with the Jackson serialized object
$.parseJSON('${requestScope.person}');
我一直在寻找解决方案,但找不到。有谁知道是否可以像 Gson 一样配置 Jackson 来处理单引号?
感谢您的时间。