package flow; import org.apache.hadoop.io.Writable; import java.io.DataInput; import java.io.DataOutput; import java.io.IOException; //hadoop 序列化 //三个属性:手机号.上行流量.下行流量 public class FlowBean implements Writable{ private String phone; private Long upFlow; private Long downFlow; public FlowBean(String phone, Long upFlow, Long downFlow) { this.phone = phone; this.upFlow = upFlow; this.downFlow = downFlow; } //定义get/set方法 public String getPhone() { return phone; } public void setPhone(String phone) { this.phone = phone; } public Long getUpFlow() { return upFlow; } public void setUpFlow(Long upFlow) { this.upFlow = upFlow; } public Long getDownFlow() { return downFlow; } public void setDownFlow(Long downFlow) { this.downFlow = downFlow; } //定义无参构造 public FlowBean() {} //定义一个获取总流量的方法 public Long getSumFlow(){ return upFlow+downFlow; } @Override public void write(DataOutput dataOutput) throws IOException { dataOutput.writeUTF(phone); dataOutput.writeLong(upFlow); dataOutput.writeLong(downFlow); } @Override public void readFields(DataInput dataInput) throws IOException { phone = dataInput.readUTF(); upFlow = dataInput.readLong(); downFlow = dataInput.readLong(); } }