0
点赞
收藏
分享

微信扫一扫

Jackson解析自定义json到实体类

单调先生 2022-08-18 阅读 67

json文本

{
"status": 0,
"result": {
"final": true,
"hypotheses": [{
"likelihood": 333.86676025390625,
"transcript": "温格你家,",
"word-alignment": [{
"word": "温",
"start": 3.4799999222159386,
"length": 0.20999999530613422
},
{
"word": "格",
"start": 3.689999917522073,
"length": 0.29999999329447746
},
{
"word": "你家",
"start": 4.229999905452132,
"length": 0.3899999912828207
}]
}]
},
"segment-start": 0,
"segment-length": 5.6099998746067286,
"total-length": 5.9658750000000005,
"segment": 0,
"id": "d5e52f52-3d18-4f3e-9379-902183f3ac25"
}
{
"status": 0,
"result": {
"final": true,
"hypotheses": [{
"likelihood": 179.34283447265625,
"transcript": "温格你家小朋友今年上。",
"word-alignment": [{
"word": "温",
"start": 0.6899999845772982,
"length": 0.20999999530613422
},
{
"word": "格",
"start": 0.8999999798834324,
"length": 0.2699999939650297
},
{
"word": "你家",
"start": 1.4399999678134918,
"length": 0.3899999912828207
},
{
"word": "小朋友",
"start": 1.8299999590963125,
"length": 0.6299999859184027
},
{
"word": "今年",
"start": 2.5199999436736107,
"length": 0.41999999061226845
},
{
"word": "上",
"start": 2.969999933615327,
"length": 0.47999998927116394
}]
}]
},
"segment-start": 5.9658750000000005,
"segment-length": 4.0799999088048935,
"total-length": 10.215875,
"segment": 1,
"id": "d5e52f52-3d18-4f3e-9379-902183f3ac25"
}

 

解析方法:

import com.fasterxml.jackson.databind.ObjectMapper;
import java.io.IOException;

ObjectMapper objectMapper = new ObjectMapper();
try {

ASRRecognizedResponse response = objectMapper.readValue(json, ASRRecognizedResponse.class);
System.out.println(response);
} catch (IOException e) {
e.printStackTrace();
}

相关实体类

import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data
@NoArgsConstructor
public class ASRRecognizedResponse
{
private String status;
private String message;

private Result result;

@JsonProperty("segment-start")
private String segmentStart;

@JsonProperty("segment-length")
private Float segmentLength;

@JsonProperty("total-length")
private Float totalLength;

private short segment;

private String id;
}

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data
@NoArgsConstructor
@JsonIgnoreProperties("word-alignment")
public class Hypotheses
{
private Float likelihood;
private String transcript;
}

import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

@Data
@NoArgsConstructor
public class Result{

@JsonProperty("final")
private Boolean finished;

private List<Hypotheses> hypotheses;
}

 

举报

相关推荐

0 条评论