public class EchoThread implements Runnable{
private Socket client;
InputStream inputStream;
private TestUtils testUtils;
// @Autowired
// private EquipmentMapper equipmentMapper = SpringContextUtil.getBean(EquipmentMapper.class);
@Autowired
private EquipmentMapper equipmentMapper;
public EchoThread(Socket client){
this.client=client;
}
@PostConstruct
@Override
public void run() {
//this.equipmentMapper= BeanContext.getApplicationContext().getBean(EquipmentMapper.class);
try {
while (true){
inputStream=client.getInputStream();
byte[] bytes = new byte[1024];
inputStream.read(bytes);
String string = new String(bytes);
System.out.println("我是传过来的数"+string);
String[] str = string.split("AAAA");
StringBuffer sb = new StringBuffer();
List<Equipment> equipmentList = new ArrayList<>();
List storage = new ArrayList();
Equipment equipment = new Equipment();
System.out.println("我是str"+str);
//String sql = "INSERT INTO TABLE_NAME VALUES (?,?,?)";//插入sql
for (int i=0; i<str.length;i++){
String dd =str[i].toString();
System.out.println("我是dd分隔后的数"+dd);
String ee=dd.substring(0,6);
System.out.println("我是ee分隔后的数"+ee);
if(ee.equals("040302") ){
String ee1=dd.substring(6,10);
// System.out.println("我是最新测试"+ee1);
long put_Vlue = Long.parseLong(ee1, 16);//Long.parseLong(字符串,该字符串为几进制)
storage.add("溶解氧:"+put_Vlue*0.001);
// System.out.println(put_Vlue);//输出结果
//System.out.println("我我我我我我我我"+storage);
System.out.println("溶解氧:"+put_Vlue);
equipment.setDissolvedName("溶解氧");
equipment.setDissolvedValue(put_Vlue*0.001);
equipmentList.add(equipment);
System.out.println("我是是是是"+equipmentList);
}else if(ee.equals("050404")){
String ee1=dd.substring(6,10);
String ee2=dd.substring(10,14);
//System.out.println("我是最新测试"+ee2);
long put_Vlue = Long.parseLong(ee1, 16);//Long.parseLong(字符串,该字符串为几进制)
long put_Vlue2 = Long.parseLong(ee2, 16);
storage.add("土壤温湿度:"+put_Vlue*0.1+","+put_Vlue2*0.1);
System.out.println("土壤温湿度");
equipment.setSoilName("土壤温湿度");
equipment.setSoilValue(put_Vlue*0.1);
// equipment.setSoilValue(String.valueOf(put_Vlue2*0.1));
equipmentList.add(equipment);
}else if(ee.equals("070302")){
String ee1=dd.substring(6,10);
long put_Vlue = Long.parseLong(ee1, 16);
storage.add("浊度:"+put_Vlue*0.01);
System.out.println("浊度");
equipment.setTurbidityName("浊度");
equipment.setTurbidityValue(put_Vlue*0.01);
equipmentList.add(equipment);
}else if(ee.equals("030302")){
String ee1=dd.substring(6,10);
long put_Vlue = Long.parseLong(ee1, 16);
storage.add("水质PH:"+put_Vlue*0.01);
System.out.println("水质PH");
equipment.setWaterName("水质PH");
equipment.setWaterValue(put_Vlue*0.01);
equipmentList.add(equipment);
}else if(ee.equals("060302")){
String ee1=dd.substring(6,10);
long put_Vlue = Long.parseLong(ee1, 16);
storage.add("土壤PH:"+put_Vlue*0.01);
System.out.println("土壤PH");
equipment.setSoilPHName("土壤PH");
equipment.setSoilPHValue(put_Vlue*0.01);
equipmentList.add(equipment);
}else if(ee.equals("010302")){
String ee1=dd.substring(6,10);
long put_Vlue = Long.parseLong(ee1, 16);
storage.add("水温:"+put_Vlue*1);
System.out.println("水温");
equipment.setTemperatureName("水温");
equipment.setTemperatureValue(put_Vlue*1);
equipmentList.add(equipment);
}else if(ee.equals("080304")){
String ee1=dd.substring(6,14);
System.out.println("明渠流量计");
equipment.setChannelName("明渠流量计");
equipment.setChannelValue(30.2);
equipmentList.add(equipment);
}else if(ee.equals("020302")){
String ee1=dd.substring(6,10);
long put_Vlue = Long.parseLong(ee1, 16);
// storage.add("水位:"+put_Vlue0.001);
System.out.println("水位");
equipment.setWaterlevelNmae("水位");
equipment.setWaterlevelValue(put_Vlue0.001);
equipmentList.add(equipment);
}else{
System.out.println("没有数据");
}
}
System.out.println("我是最后传递的list"+equipmentList);
equipmentMapper.equipserter(equipmentList);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
我想调用mapper把数据存入数据库中,但是调用一直是null,这个要怎么解决有知道的牛人