fastjson解析json字符串
需要的依赖:
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.57</version>
</dependency>
解析json套json的格式:
{"842":{"useranswer":"3407|3408","score":0},"846":{"useranswer":"3414","score":0},"847":{"useranswer":"3499","score":2}}
import com.alibaba.fastjson.JSONObject;
import java.util.Iterator;
import java.util.Set;
public class JsonAndJson {
public static void main(String[] args) {
String jsonStr="{\"842\":{\"useranswer\":\"3407|3408\",\"score\":0},\"846\":{\"useranswer\":\"3414\",\"score\":0},\"847\":{\"useranswer\":\"3499\",\"score\":2}}";
//先将这条数据解析为JSONObject
JSONObject outJson = JSONObject.parseObject(jsonStr);
//因为外部的JSON的key为三位数字的编号,我们需要得到编号,才能得到它对应的内部json
Set<String> jsonSet = outJson.keySet();
Iterator<String> iterator = jsonSet.iterator();
while (iterator.hasNext()){
//通过迭代器可以取到外部json的key
String json = iterator.next();
//取得内部json字符串
String string = outJson.getString(json);
//将内部json字符串解析为object对象
JSONObject inJson = JSONObject.parseObject(string);
//通过score,得到value值
String score = inJson.getString("score");
System.out.println(score);
}
}
}
解析Json数组
[{"id":50,"name":"Python","pId":0},{"id":77,"name":"web前端","pId":50},{"id":78,"name":"Linux&数据库","pId":50}]
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
public class JsonArray {
public static void main(String[] args) {
String jsonArray="[{\"id\":50,\"name\":\"Python\",\"pId\":0},{\"id\":77,\"name\":\"web前端\",\"pId\":50},{\"id\":78,\"name\":\"Linux&数据库\",\"pId\":50}]\n";
StringBuffer sb=new StringBuffer();
//需要使用的JSON的parseArray方法,将jsonArray解析为object类型的数组
JSONArray objects = JSON.parseArray(jsonArray);
for(int i=0;i<objects.size();i++){
//通过数组下标取到object,使用强转转为JSONObject,之后进行操作
JSONObject object = (JSONObject) objects.get(i);
if(!object.getString("pId").equals("0")){
sb.append(object.getString("name")+",") ;
}
}
//这个方法是去掉stringbuffer的最后一位的字符
sb.deleteCharAt(sb.length()-1);
System.out.println(sb);
}
}
写代码记得要测试
使用快捷键
docker的使用
安装教程:
docker安装教程
centos安装mysql的教程
linux操作指令
查看进程的端口:netstat -nap | grep 8080(查看8080端口)
杀死进程: kill -9 76559(这个是进程号)
rasa相关的资料
window安装:
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
pip install rasa==2.8.0
rasa init
#输入了这个命令后,rasa会创建一个初始化的项目,rasa会让你选择初始项目的地址,还会让你选择是否训练模型,你选择训练模型,然后rasa会询问你是否开始和对话助手进行交谈,你选择NO,会退出。
pip3 install -i https://pypi.rasa.com/simple rasa-x==0.42.0 --extra-index-url https://pypi.tuna.tsinghua.edu.cn/simple --use-deprecated=legacy-resolver
docker安装:
rasa/rasax Dockerhub资源