package com.fgkj.dao.impl; import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; import java.util.List; import com.fgkj.dao.BaseDAO; import com.fgkj.dao.CallBack; import com.fgkj.dao.DAOHelper; import com.fgkj.db.DBUtil; import com.fgkj.dto.Sensor_inf; import com.fgkj.dto.Sensor_mapinfo; import com.fgkj.dto.Sensor_state; public class Sensor_mapinfoImpl implements BaseDAO,CallBack{ @Override public List getResults(ResultSet rs) { // TODO Auto-generated method stub return null; } @Override public boolean add(Object obj) { // TODO Auto-generated method stub return false; } //修改定位信息 @Override public boolean update(Object obj) { Sensor_mapinfo sinfo=(Sensor_mapinfo) obj; String sql=" repalce into db_sensor.tb_sensor_mapinfo(sensor_dev_id,longitude,latitude,address)" + " values(?,?,?,?)"; boolean bl=DAOHelper.executeUpdate(DBUtil.getConn(), sql, new Object[]{sinfo.getSensor_dev_id(),sinfo.getLongitude(),sinfo.getLatitude(),sinfo.getAddress()}); return bl; } //删除定位信息 @Override public boolean del(Object obj) { Sensor_mapinfo sinfo=(Sensor_mapinfo) obj; String sql=" delete from db_sensor.tb_sensor_mapinfo where sensor_dev_id=? "; boolean bl=DAOHelper.executeUpdate(DBUtil.getConn(), sql, new Object[]{sinfo.getSensor_dev_id()}); return bl; } //查询所有传感器的定位信息 @Override public List searchAll() { String sql=" select distinct db_sensor.tb_sensor_mapinfo.num,db_sensor.tb_sensor_mapinfo.sensor_dev_id,longitude,latitude,address " + " ,record_time,airtmp,airhum,smoke,water,lightintensity " + " ,province,city,county,device_name,airtmp_alarm,airhum_alarm,smoke_alarm " + " ,CO2concentration,COconcentration,CH4concentration,O2concentration,dev_commcount,dev_errcommcount " + " from db_sensor.tb_sensor_mapinfo,db_sensor.tb_sensor_state,db_sensor.tb_sensor_inf " + " where db_sensor.tb_sensor_mapinfo.sensor_dev_id=db_sensor.tb_sensor_state.sensor_dev_id " + " and db_sensor.tb_sensor_mapinfo.sensor_dev_id=db_sensor.tb_sensor_inf.sensor_dev_id "; List list= DAOHelper.executeQuery(sql, DBUtil.getConn(), null, new CallBack() { @Override public List getResults(ResultSet rs) { List list=new ArrayList(); try { while(rs.next()){ Sensor_mapinfo sinfo=new Sensor_mapinfo(); sinfo.setNum(rs.getInt("num")); sinfo.setSensor_dev_id(rs.getInt("sensor_dev_id")); sinfo.setLongitude(rs.getDouble("longitude")); sinfo.setLatitude(rs.getDouble("latitude")); sinfo.setAddress(rs.getString("address")); Sensor_inf sinf=new Sensor_inf(); sinf.setProvince(rs.getString("province")); sinf.setCity(rs.getString("city")); sinf.setCounty(rs.getString("county")); sinf.setDevice_name(rs.getString("device_name")); sinf.setAirtmp_alarm(rs.getFloat("airtmp_alarm")); sinf.setAirhum_alarm(rs.getFloat("airhum_alarm")); sinf.setSmoke_alarm(rs.getInt("smoke_alarm")); sinfo.setSinf(sinf); Sensor_state s=new Sensor_state(); s.setRecord_time(rs.getTimestamp("record_time")); s.setAirtmp(rs.getFloat("airtmp")); s.setAirhum(rs.getFloat("airhum")); s.setSmoke(rs.getInt("smoke")); s.setWater(rs.getInt("water")); s.setLightintensity(rs.getInt("lightintensity")); s.setCO2concentration(rs.getInt("cO2concentration")); s.setCOconcentration(rs.getInt("cOconcentration")); s.setCH4concentration(rs.getInt("cH4concentration")); s.setO2concentration(rs.getInt("o2concentration")); s.setDev_commcount(rs.getInt("dev_commcount")); s.setDev_errcommcount(rs.getInt("dev_errcommcount")); sinfo.setState(s); list.add(sinfo); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } return list; } }); return list; } @Override public List serchByCondition(Object obj) { // TODO Auto-generated method stub return null; } @Override public List serchByInfo(Object obj) { // TODO Auto-generated method stub return null; } public static void main(String[] args) { Sensor_mapinfoImpl simpl=new Sensor_mapinfoImpl(); List list=simpl.searchAll(); for (Sensor_mapinfo s : list) { System.out.println(s); } } }