需求:
空气质量表中有大量空气数据的字段,入二氧化硫,二氧化氮,等;对于这些数据我们需要根据小时数据求出每一天的平均数据.
解决方案:
贴出部分字段
private double value_4472 = -99;
private double value_4474 = -99;
private double value_4482 = -99;
private double value_4485 = -99;
private double value_4486 = -99;
private double value_4487 = -99;
private double value_4488 = -99;
private double value_4489 = -99;
private double value_448A = -99;
private double value_448B = -99;
//Javabean中添加setValue()方法
import org.apache.commons.beanutils.BeanUtils;//apache提供的工具类
//参数pollcode为字段名
public void setValue(String pollcode, Double value) {
try {
BeanUtils.setProperty(this, String.format("value_%s", pollcode), value);
} catch (Exception e) {
e.printStackTrace();
}
}
//同理也可以添加对应的getValue方法
public Double getValue(String proerty) {
try {
String property = BeanUtils.getProperty(this, proerty);
return new Double(property);
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
//贴一个遍历添加的方式
Map<String, StationAirData> map = new HashMap<>();
for (PollValue pollValue : result) {
String ptid = pollValue.getPtid();
StationAirData sad = map.get(ptid);
if(sad == null) {
sad = new StationAirData();
sad.setDatatime(datatime);
sad.setPtid(ptid);
sad.setDataType(AirDataType.HOUR);
sad.setUploadtime(new Date());
map.put(ptid, sad);
}
sad.setValue(pollValue.getPollcode(), pollValue.getValue());
}
第一次写博客,假装很老练很潇洒的结束^!^;