我正在调用一个声纳web服务并以json格式获得低于输出。
[
{
"id":10252,
"uuid":"ca49aeed-de29-41a1-b0e2-e2b7c7d1b6c5",
"key":"UTILITY",
"name":"UTILITY",
"scope":"PRJ",
"qualifier":"VW",
"date":"2012-05-02T05:07:04-0400",
"creationDate":"2009-03-12T09:03:35-0400",
"lname":"UTILITY",
"msr":[
{
"key":"ncloc",
"val":253603.0,
"frmt_val":"253,603"
},
{
"key":"test_success_density",
"val":85.5,
"frmt_val":"85.5%"
},
{
"key":"coverage",
"val":96.0,
"frmt_val":"96.0%"
}
]
}
]
现在我想在java中解析这个输出并获取date,ncloc,test_success_density和coverage的值。我该怎么做?我尝试了很多java apis,但在获取上述字段的值时遇到了麻烦。
答案 0 :(得分:0)
同样,
注意:包括合适的Jackson Jar(我使用的是jackson-core-2.2.3.jar)
您的主要课程应该是......
import java.util.Date;
import java.util.List;
public class Bean {
private long id;
private String uuid;
private String key;
private String name;
private String scope;
private String qualifier;
private Date date;
private Date creationDate;
private String lname;
private List<Msr> msr;
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
public String getUuid() {
return uuid;
}
public void setUuid(String uuid) {
this.uuid = uuid;
}
public String getKey() {
return key;
}
public void setKey(String key) {
this.key = key;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getScope() {
return scope;
}
public void setScope(String scope) {
this.scope = scope;
}
public String getQualifier() {
return qualifier;
}
public void setQualifier(String qualifier) {
this.qualifier = qualifier;
}
public Date getDate() {
return date;
}
public void setDate(Date date) {
this.date = date;
}
public Date getCreationDate() {
return creationDate;
}
public void setCreationDate(Date creationDate) {
this.creationDate = creationDate;
}
public String getLname() {
return lname;
}
public void setLname(String lname) {
this.lname = lname;
}
public List<Msr> getMsr() {
return msr;
}
public void setMsr(List<Msr> msr) {
this.msr = msr;
}
@Override
public String toString() {
return this.id + " : " +
this.uuid + " : " +
this.key + " : " +
this.name + " : " +
this.scope + " : " +
this.qualifier + " : " +
this.date + " : " +
this.creationDate + " : " +
this.lname + " : " +
this.msr ;
}
}
class Msr{
private String key;
private String val;
private String frmt_val;
public String getKey() {
return key;
}
public void setKey(String key) {
this.key = key;
}
public String getVal() {
return val;
}
public void setVal(String val) {
this.val = val;
}
public String getFrmt_val() {
return frmt_val;
}
public void setFrmt_val(String frmt_val) {
this.frmt_val = frmt_val;
}
@Override
public String toString() {
return this.key + " : " + this.val + " : " + this.frmt_val;
}
}
让我们说你的Bean.java会是,
<div id="bar">
<table class = "BarTable" style="width:100%;height: 100%">
<tr>
<td style="width: 35%">
<img src="131AZE.jpg" style="height:100%;width: 100%">
</td>
<td>Everyone</td>
</tr>
</table>
</div>
做上述事情,完美运作...... !!