我正在使用Jackson模块的最新分支-jackson-mode-jsonSchema,即2.4.4-Snapshot。
我试图使用@JsonPropertyOrder注释来维护POJO属性的顺序,但它似乎不尊重注释。
我的POJO示例如下-
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
@JsonPropertyOrder({"a", "b"})
class Pojo {
private String a;
private String b;
public Pojo(final String a, final String b) {
this.a = a;
this.b = b;
}
public void setA(final String a) {
this.a = a;
}
public void setB(final String b) {
this.b = b;
}
public String getA() {
return this.a;
}
public String getB() {
return this.b;
}
}
杰克逊代码如下-
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.module.jsonSchema.JsonSchema;
import com.fasterxml.jackson.module.jsonSchema.factories.SchemaFactoryWrapper;
public class Test {
public static void main(String[] args) throws JsonProcessingException {
// TODO Auto-generated method stub
final ObjectMapper mapper = new ObjectMapper();
final SchemaFactoryWrapper visitor = new SchemaFactoryWrapper();
mapper.acceptJsonFormatVisitor(mapper.constructType(Pojo.class), visitor);
final JsonSchema jsonSchema = visitor.finalSchema();
System.out.println(mapper.writeValueAsString(jsonSchema));
}
}
Json输出如下-
{
"type": "object",
"id": "urn:jsonschema:Pojo",
"properties": {
"b": {
"type": "string"
},
"a": {
"type": "string"
}
}
}
有人能建议我是否做错了什么,或者我们需要在杰克逊身上打开一个问题,因为我看到这种问题已经在2.3.2(https://github.com/FasterXML/jackson-dataformat-xml/issues/91)中关闭了吗?
使用@JsonPropertyOrder(Alphaic=true)这将按字母顺序排列所有属性,适用于Jackson 1.9.13
我有1个应用程序和2个模块 框架结构 但我不能在MyApp中使用MyModule的文件。IDE显示我“无法访问”错误,我想扩展一个MyModule类的类。而且它不是从MyModule创建类的,有人对此有想法吗?怎么了?
我正在使用Jackson模式模块为Rest API生成JSON模式,当开始使用https://github.com/fge/json-schema-validator针对对我的API的请求实现JSON模式验证时,我意识到Jackson生成的是模式v3,而验证器只支持V4-draft。在寻找其他java JSON模式生成器库之前,您能确认Jackson不支持V4吗?您能推荐其他java JSON模式
你会对自己编写的 Puppet 代码感到羞愧吗?其他人看你的代码时会有恐惧感吗? 为了使你的 Puppet 配置清单更清晰且易于维护,一件最重要的事情就是将这些配置清单组织成 模块(modules)。 模块是对相关事物进行分组的一种简单方式;例如,一个 webserver 模块可能包含作为一个 Web 服务器所需的一切,包括 Apache 配置文件,虚拟主机配置模板以及部署这些所需的 Puppet
Python本身就内置了很多非常有用的模块,只要安装完毕,这些模块就可以立刻使用。 我们以内建的sys模块为例,编写一个hello的模块: #!/usr/bin/env python # -*- coding: utf-8 -*- ' a test module ' __author__ = 'Michael Liao' import sys def test(): args =
Python本身就内置了很多非常有用的模块,只要安装完毕,这些模块就可以立刻使用。 我们以内建的sys模块为例,编写一个hello的模块: #!/usr/bin/env python3 # -*- coding: utf-8 -*- ' a test module ' __author__ = 'Michael Liao' import sys def test(): args =
问题内容: 谁能用我的2.10 Scala模块指向一个简单的Jackson序列化/反序列化示例?我正在寻找不需要逐字段注释或分配的基于反射的JSON,这似乎可以做到这一点,但是他们的文档中没有示例。 如果我有案例课: 因此,从他们的github自述文件中: 好吧,现在…?如何将p转换为JSON? 问题答案: 试一下: 编辑 只需确保将类声明为顶级即可,否则它将无法正常工作。