Skip to content

Commit 44119ca

Browse files
committed
add jsonschema doc
1 parent 95baa75 commit 44119ca

File tree

1 file changed

+35
-0
lines changed

1 file changed

+35
-0
lines changed

docs/json_schema_cn.md

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -139,3 +139,38 @@ public void test2() {
139139
);
140140
}
141141
```
142+
143+
# 4. 通过类型构造JSONSchema
144+
在后端和前端交互时,需要将java类型转换成JSONSchema返回给客户端。
145+
```java
146+
@Test
147+
public void test() {
148+
JSONSchema schema = JSONSchema.of(Bean.class);
149+
String string = schema.toString();
150+
assertEquals(
151+
"{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"integer\"},\"name\":{\"type\":\"string\"}},\"required\":[\"id\"]}",
152+
string
153+
);
154+
JSONSchema pased = JSONSchema.of(JSON.parseObject(string));
155+
assertTrue(Differ.diff(schema, pased));
156+
157+
Bean bean = new Bean();
158+
JSONSchema valueSchema = JSONSchema.ofValue(bean);
159+
assertTrue(Differ.diff(schema, valueSchema));
160+
}
161+
162+
public static class Bean {
163+
public int id;
164+
public String name;
165+
}
166+
```
167+
168+
# 5. 通过值对象构造JSONSchema
169+
```java
170+
@Test
171+
public void fromValueMap() {
172+
Map map = new HashMap();
173+
map.put("id", 123);
174+
assertEquals("{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"integer\"}}}", JSONSchema.ofValue(map).toString());
175+
}
176+
```

0 commit comments

Comments
 (0)