Слияние кода завершено, страница обновится автоматически
Описание Maven-компонентов oschina:
<dependency>
<groupId>com.tcshuo</groupId>
<artifactId>json-config</artifactId>
<version>1.0.0</version>
</dependency>
{ignore:'c'}
— игнорировать сложные поля; {ignore:'n'}
— не игнорировать поля; {ignore:'na'}
— игнорировать поля, отсутствующие в списке разрешённых (allows
).{ignores:['dept','post']}
— все поля, указанные в ignores
, будут игнорированы, что гарантирует отсутствие полей dept
и post
.{allows:['id','name']}
— все поля, указанные в allows
, будут выведены, что гарантирует наличие полей id
и name
.{allows:['id','name'],ignore:'na'}
— выводятся только поля id
и name
; {}
— по умолчанию игнорируются сложные поля и массивы.{ignore:'c',allows:['dept']}
— все сложные объекты, кроме dept
, будут игнорированы.{alias:{id:'value'}}
— альтернативное имя для поля id
.{
"allows": ["id", "name", "date", "dept"],
"childs": {
"date": {"format": "yyyy-MM-dd"},
"dept": {"allows": ["name"]}
}
}
Этот пример выводит поля id
, name
, date
и dept
. Поле date
форматируется как yyyy-MM-dd
.
public void test1() {
HashMap<Object, Object> map = new HashMap<>();
map.put("maptype", BeanType.A);
Bean beana = new Bean("bean a", BeanType.A);
Bean beanb = new Bean("bean b", BeanType.B);
map.put("beana", beana);
map.put("beanb", beanb);
ArrayList<Bean> beanList = new ArrayList<>();
beanList.add(beana);
beanList.add(beanb);
map.put("beanList", beanList);
int[] intArray = new int[]{1, 2, 3};
map.put("intArray", intArray);
Bean[] beanArray = new Bean[]{beana, beanb};
map.put("beanArray", beanArray);
}
private void toJson(String config, Object target) {
System.out.println(JsonConfigParser.parser(config, target).toJson());
}
Запуск тестового случая SimpleTestCase
:
Running com.tcshuo.json.config.SimpleTestCase
{"intArray":[1,2,3]}
{"beanb":{"name":"bean b"},"beanArray":[{"name":"bean a"},{"name":"bean b"}],"beana":{"name":"bean a"},"beanList":[{"name":"bean a"},{"name":"bean b"}],"intArray":[1,2,3],"maptype":{"declaringClass":"com.tcshuo.json.config.BeanType","name":"a","value":0,"javaEnumName":"A"}}
[{"name":"bean a","type":{"declaringClass":"com.tcshuo.json.config.BeanType","name":"a","value":0,"javaEnumName":"A"},"date":"2015-05-06 18:57:15"},{"name":"bean b","type":{"declaringClass":"com.tcshuo.json.config.BeanType","name":"b","value":1,"javaEnumName":"B"},"date":"2015-05-06 18:57:15"}]
[{"name":"bean a","date":"2015年05月"},{"name":"bean b","date":"2015年05月"}]
[{"name":"bean a","type":{"javaEnumName":"A"}},{"name":"bean b","type":{"javaEnumName":"B"}}]
[{"name":"bean a","type":{"NAME":"A"}},{"name":"bean b","type":{"NAME":"B"}}]
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )