我正在为我的春季启动项目评估gradle.一切似乎都有效,但这里是我被困的地方.我有2个属性文件.一个用于刺激,即:
application_prod.properties
和另一个为qa ie:
application_qa.properties
我的要求是,当我从gradle构建(创建jar文件)项目时,我要将属性文件重命名为
application.properties
然后构建jar文件.据我所知,gradle有一个默认的构建任务.所以在这里我要覆盖它,以便它只考虑所需的属性文件并重命名它,然后根据环境进行构建.
我怎样才能做到这一点?
我编写了一个自定义反序列化器来使用jackson仅映射所需的字段.开始.
public class GeneralDeserializer extends JsonDeserializer<GeneralDomain> {
@Override
public GeneralDomain deserialize(JsonParser jp, DeserializationContext ctxt)
throws IOException, JsonProcessingException {
final JsonNode jsonNode = jp.getCodec().readTree(jp);
final Map<String, String> map = new ObjectMapper().convertValue(jsonNode, Map.class);
final String event = "Proxy";
return new GeneralDomain(map.get("id"), event, map.get("name"), map.get("lastLogin"));
}
@Override
public Class<GeneralDomain> handledType() {
return GeneralDomain.class;
}
}
Run Code Online (Sandbox Code Playgroud)
我也有一个mixin类,可以添加额外的注释.
@JsonDeserialize(using = GeneralDeserializer.class)
public class GeneralDomainMixIn{}
Run Code Online (Sandbox Code Playgroud)
我以这种方式获取对象,
ObjectMapper mapper = new ObjectMapper();
mapper.addMixIn(GeneralDomain.class, SimpleRevealPublicEventMixIn.class);
String json = "{\"id\": 111, \"name\": David, \"lastLogin\": \"02-10-2016 10:32:00 AM\"}";
GeneralDomain readValue …Run Code Online (Sandbox Code Playgroud) 我一直在尝试使用nifi,并想知道如何通过属性对json数组进行排序.我有这样的Json
[{"name":"Backham","createdDate":"2018-05-07 06:30:09"},{"name":"鲁尼","createdDate":"2016-05-12 19:50 :03"},{"name":"Ronaldo","createdDate":"2019-01-07 06:30:09"}]
我必须按createdDate asc/desc排序.
我知道我可以编写一个自定义处理器来对数据进行排序并将其发回.还有其他更好的方法吗?任何人都可以告诉我如何做到这一点?