Skip to content

Commit

Permalink
3.2.44
Browse files Browse the repository at this point in the history
  • Loading branch information
noear committed Oct 12, 2022
1 parent cc48303 commit 978604e
Showing 1 changed file with 39 additions and 10 deletions.
49 changes: 39 additions & 10 deletions snack3_demo/src/test/java/features/StringTest.java
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package features;

import com.alibaba.fastjson.JSONObject;
import org.junit.Test;
import org.noear.snack.ONode;
import org.noear.snack.core.Feature;
Expand Down Expand Up @@ -39,27 +40,55 @@ public void test1() {
}

@Test
public void test2(){
public void test2() {
String tmp = ONode.stringify(UUID.randomUUID());
assert tmp.contains("-");
System.out.println(tmp);
}

@Test
public void test3(){
Map<String,Object> map = new HashMap<>();
public void test3() {
Map<String, Object> map = new HashMap<>();

map.put("a",1);
map.put("b","2");
map.put("c","{d:'3'}");
map.put("a", 1);
map.put("b", "2");
map.put("c", "{d:'3'}");


String json = ONode.loadObj(map).toJson();
System.out.println(json);
assert ONode.loadStr(json).get("c").isValue();
String json = ONode.loadObj(map).toJson();
System.out.println(json);
assert ONode.loadStr(json).get("c").isValue();

json = ONode.loadObj(map, Feature.StringJsonToNode).toJson();
System.out.println(json);
assert ONode.loadStr(json).get("c").isObject();
assert ONode.loadStr(json).get("c").isObject();
}

@Test
public void test4() {
//测试前台json字符串
String str = "{\n" +
" \"id\": 20,\n" +
" \"key\": \"MACHINERY_TYPE_QUIP_TSQZJ_01\",\n" +
" \"tenantId\": \"5a920f536428050edddcce5212f36a97\",\n" +
" \"moduleLevel\": \"机械管理:电子档案\",\n" +
" \"describe\": \"塔吊关联IOT设备类别\",\n" +
" \"createTime\": 1659678000000,\n" +
" \"modifyTime\": 1659678000000,\n" +
" \"value\": \"[{\\\"unitTypeName\\\":\\\"塔机安全监管系统\\\",\\\"iotType\\\":\\\"main\\\"},{\\\"unitTypeName\\\":\\\"吊钩可视化系统\\\",\\\"iotType\\\":\\\"video\\\"}]\",\n" +
" \"example\": \"[{\\\"unitTypeName\\\":\\\"塔机安全监管系统\\\",\\\"iotType\\\":\\\"main\\\"},{\\\"unitTypeName\\\":\\\"吊钩可视化系统\\\",\\\"iotType\\\":\\\"video\\\"}]\"\n" +
"}";
JSONObject json = (JSONObject) JSONObject.parse(str); //故意转成对象,下面用loadObj
ONode jsonNode = ONode.loadObj(json, Feature.StringJsonToNode);

System.out.println(jsonNode.toJson());

String typeName = jsonNode.select("$.value[?(iotType == 'main')]").get(0).get("unitTypeName").getString();
System.out.println("------Feature.StringJsonToNode typeName:{}" + typeName);

String jsonStr = ONode.loadObj(json, Feature.StringJsonToNode).toJson();
ONode jsonNode2 = ONode.loadStr(jsonStr);
String typeName2 = jsonNode2.select("$.value[?(iotType == 'main')]").get(0).get("unitTypeName").getString();
System.out.println("------ typeName:{}" + typeName2);
}
}

0 comments on commit 978604e

Please sign in to comment.