package dao.impl;
import dao.WaterQualityStationDao;
import domain.StationAndQuality;
import domain.WaterQuality;
import domain.WaterQualityStation;
import org.springframework.dao.DataAccessException;
import org.springframework.jdbc.core.BeanPropertyRowMapper;
import org.springframework.jdbc.core.JdbcTemplate;
import util.JDBCUtils;
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
public class WaterQualityStationDaoImpl implements WaterQualityStationDao
{
private JdbcTemplate template=new JdbcTemplate(JDBCUtils.getDataSource());
@Override
public List<WaterQualityStation> findAll()
{
//定义sql
String sql="select * from water_quality_station";
//执行sql
List<WaterQualityStation> station = template.query(sql, new BeanPropertyRowMapper<WaterQualityStation>(WaterQualityStation.class));
return station;
}
@Override
public WaterQualityStation findByName(String stationName)
{
WaterQualityStation station = null;
try
{
String sql="select * from water_quality_station where stationName=?";
station = template.queryForObject(sql, new BeanPropertyRowMapper<WaterQualityStation>(WaterQualityStation.class), stationName);
} catch (DataAccessException e)
{
System.out.println(e);
}
return station;
}
@Override
public WaterQualityStation findIntroByName(String name) {
String sql="select * from water_quality_station where stationName=?";
WaterQualityStation waterQualityStation = template.queryForObject(sql, new BeanPropertyRowMapper<WaterQualityStation>(WaterQualityStation.class),name);
return waterQualityStation;
}
@Override
public boolean addWaterQualityStation(WaterQualityStation station)
{
int update = 0;
try {
String sql="insert into water_quality_station values(null,?,?,?,?,?)";
update = template.update(sql,station.getStationName(),station.getLongitude(),station.getLatitude(),station.getSection(),station.getIntroduction());
} catch (DataAccessException e) {
System.out.println(e);;
}
System.out.println(update);
if(update!=0)
{
return true;
}
else
{
return false;
}
}
@Override
public List<WaterQualityStation> findByPage(int start, int pageSize)
{
List<WaterQualityStation> list=null;
try {
String sql="select * from water_quality_station limit ?,?";
list = template.query(sql,
new BeanPropertyRowMapper<WaterQualityStation>(WaterQualityStation.class), start, pageSize);
} catch (DataAccessException e) {
System.out.println(e);
}
return list;
}
@Override
public int findTotalCount()
{
String sql="select count(*) from water_quality_station";
Integer integer = template.queryForObject(sql, Integer.class);
return integer;
}
@Override
public WaterQualityStation findIntroById(int id)
{
WaterQualityStation station = null;
try {
String sql="select * from water_quality_station where id=?";
station = template.queryForObject(sql, new BeanPropertyRowMapper<WaterQualityStation>(WaterQualityStation.class), id);
} catch (DataAccessException e) {
System.out.println(e);
}
return station;
}
@Override
public List<WaterQualityStation> conditonalQueryByPage(int start, int pageSize, Map<String, String[]> condition)
{
StringBuilder builder=new StringBuilder();//代表整个sql语句
String starStr="select * from water_quality_station where 1=1 ";
builder.append(starStr);
List<Object> valueList=new ArrayList<>();
//遍历map集合
for(String key:condition.keySet())
{
//排除分页条件参数
if("currentPage".equals(key) || "pageSize".equals(key))
{
continue;
}
String value = condition.get(key)[0];
if(value!=null&&!"".equals(value))
{
builder.append(" and "+key+" like ? ");
valueList.add("%"+value+"%");
}
}
builder.append(" limit ?,? ");
valueList.add(start);
valueList.add(pageSize);
String sql = builder.toString();
System.out.println(sql);
System.out.println(valueList);
//执行sql
List<WaterQualityStation> objList = null;
try {
objList = template.query(sql, new BeanPropertyRowMapper<WaterQualityStation>(WaterQualityStation.class), valueList.toArray());
} catch (DataAccessException e) {
System.out.println(e);
}
return objList;
}
@Override
public int conditionalFindAllCount(Map<String, String[]> condition)
{
StringBuilder builder=new StringBuilder();//代表整个sql语句
String starStr="select count(*) from water_quality_station where 1=1 ";
builder.append(starStr);
List<Object> valueList=new ArrayList<>();
//遍历map集合
for(String key:condition.keySet())
{
//排除分页条件参数
if("currentPage".equals(key) || "pageSize".equals(key))
{
continue;
}
String value = condition.get(key)[0];
if(value!=null&&!"".equals(value))
{
builder.append(" and "+key+" like ? ");
valueList.add("%"+value+"%");
}
}
String sql = builder.toString();
System.out.println(sql);
System.out.println(valueList);
int integer = 0;
try {
integer = template.queryForObject(sql, Integer.class, valueList.toArray());
} catch (DataAccessException e)
{
System.out.println(e);
}
return integer;
}
@Override
public boolean update(WaterQualityStation station)
{
int update=0;
try {
String sql="update water_quality_station set stationName=?,longitude=?,latitude=?,section=?,introduction=? where id=?";
update = template.update(sql,
station.getStationName(),
station.getLongitude(),
station.getLatitude(),
station.getSection(),
station.getIntroduction(),
station.getId());
} catch (DataAccessException e) {
System.out.println(e);
}
if(update!=0)
{
return true;
}
else
{
return false;
}
}
@Override
public boolean delete(int id)
{
int update=0;
try {
String sql="delete from water_quality_station where id=?";
update = template.update(sql, id);
} catch (DataAccessException e)
{
System.out.println(e);
}
if(update!=0)
{
return true;
}
else
{
return false;
}
}
@Override
public List<WaterQualityStation> findPollutedSite()
{
List<WaterQualityStation> list=null;
try
{
String sql="SELECT * FROM water_quality_station WHERE stationName IN\n" +
"(SELECT DISTINCT belongStation FROM water_quality WHERE (LEVEL='IV' OR LEVEL='V' OR LEVEL='劣V') \n" +
"AND TO_DAYS(NOW())-TO_DAYS(DATETIME)<=1)";
list = template.query(sql, new BeanPropertyRowMapper<WaterQualityStation>(WaterQualityStation.class));
} catch (Exception e)
{
System.out.println(e);
}
ret
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
基于WebGIS的淮河水量水质监测系统项目是一个结合了地理信息系统(GIS)与互联网技术的综合性项目,旨在实现对淮河水量和水质的实时监测、数据分析和辅助决策。 项目背景 淮河位于中国东部地区,是中国的重要河流之一,其水量和水质状况直接关系到沿岸地区的生态环境、经济发展和居民生活。随着工业化和城镇化的快速发展,淮河面临着日益严峻的水污染问题。因此,建立一套高效、准确的水量水质监测系统显得尤为重要。 二、项目目标 实时监测:通过分布在淮河流域的监测站点,实时采集水量和水质数据。 数据分析:对采集到的数据进行处理和分析,评估水质状况,预测变化趋势。 辅助决策:为政府部门、环保机构和企业提供决策支持,帮助制定科学的水资源管理和水污染防治措施。 【说明】 【1】项目代码完整且功能都验证ok,确保稳定可靠运行后才上传。欢迎下载使用!在使用过程中,如有问题或建议,请及时私信沟通,帮助解答。 【2】项目主要针对各个计算机相关专业,包括计科、信息安全、数据科学与大数据技术、人工智能、通信、物联网等领域的在校学生、专业教师或企业员工使用。 【3】项目具有较高的学习借鉴价值,不仅适用于小白学习入门进阶。也可作为毕设项目、课程设计、大作业、初期项目立项演示等。 【4】如果基础还行,或热爱钻研,可基于此项目进行二次开发,DIY其他不同功能,欢迎交流学习。 【注意】 项目下载解压后,项目名字和项目路径不要用中文,建议解压重命名为英文名字后再运行!有问题私信沟通,祝顺利!
资源推荐
资源详情
资源评论
收起资源包目录
基于WebGIS的淮河水量水质监测系统项目源码+项目说明.zip (1092个子文件)
WaterQualityStationDaoImpl.class 10KB
WaterQualityStationDaoImpl.class 10KB
WaterQualityStationDaoImpl.class 10KB
WaterQualityStationDaoImpl.class 10KB
AddWaterQualityServlet.class 7KB
AddWaterQualityServlet.class 7KB
AddWaterQualityServlet.class 7KB
AddWaterQualityServlet.class 7KB
WaterLevelDaoImpl.class 7KB
WaterLevelDaoImpl.class 7KB
WaterLevelDaoImpl.class 7KB
WaterLevelDaoImpl.class 7KB
ViewCurrentWaterQualityServlet.class 7KB
ViewCurrentWaterQualityServlet.class 7KB
ViewCurrentWaterQualityServlet.class 7KB
ViewCurrentWaterQualityServlet.class 7KB
WaterQualityDaoImpl.class 6KB
WaterQualityDaoImpl.class 6KB
WaterQualityDaoImpl.class 6KB
WaterQualityDaoImpl.class 6KB
UserDaoImpl.class 6KB
UserDaoImpl.class 6KB
UserDaoImpl.class 6KB
UserDaoImpl.class 6KB
UploadServlet.class 6KB
UploadServlet.class 6KB
UploadServlet.class 6KB
UploadServlet.class 6KB
UploadServlet2.class 6KB
UploadServlet2.class 6KB
UploadServlet2.class 6KB
UploadServlet2.class 6KB
RainFallDaoImpl.class 5KB
RainFallDaoImpl.class 5KB
RainFallDaoImpl.class 5KB
RainFallDaoImpl.class 5KB
ExampleServiceImpl.class 4KB
ExampleServiceImpl.class 4KB
ExampleServiceImpl.class 4KB
ExampleServiceImpl.class 4KB
AddManyWaterLevelServlet.class 4KB
AddManyWaterLevelServlet.class 4KB
AddManyWaterLevelServlet.class 4KB
AddManyWaterLevelServlet.class 4KB
AddOneWaterQualityServlet.class 4KB
AddOneWaterQualityServlet.class 4KB
AddOneWaterQualityServlet.class 4KB
AddOneWaterQualityServlet.class 4KB
Example.class 4KB
Example.class 4KB
Example.class 4KB
Example.class 4KB
WaterQualityStationServiceImpl.class 4KB
WaterQualityStationServiceImpl.class 4KB
WaterQualityStationServiceImpl.class 4KB
WaterQualityStationServiceImpl.class 4KB
DownloadFileServlet2.class 4KB
DownloadFileServlet2.class 4KB
DownloadFileServlet2.class 4KB
DownloadFileServlet2.class 4KB
CurrentWaterLevelServlet.class 4KB
CurrentWaterLevelServlet.class 4KB
CurrentWaterLevelServlet.class 4KB
CurrentWaterLevelServlet.class 4KB
DownloadFileServlet.class 4KB
DownloadFileServlet.class 4KB
DownloadFileServlet.class 4KB
DownloadFileServlet.class 4KB
WaterQualityServiceImpl.class 4KB
WaterQualityServiceImpl.class 4KB
WaterQualityServiceImpl.class 4KB
WaterQualityServiceImpl.class 4KB
WaterLevelServiceImpl.class 4KB
WaterLevelServiceImpl.class 4KB
WaterLevelServiceImpl.class 4KB
WaterLevelServiceImpl.class 4KB
UpdateWaterQualityInfoServlet.class 4KB
UpdateWaterQualityInfoServlet.class 4KB
UpdateWaterQualityInfoServlet.class 4KB
UpdateWaterQualityInfoServlet.class 4KB
AddWaterLevelDataServlet.class 4KB
AddWaterLevelDataServlet.class 4KB
AddWaterLevelDataServlet.class 4KB
AddWaterLevelDataServlet.class 4KB
UserServiceImpl.class 3KB
UserServiceImpl.class 3KB
UserServiceImpl.class 3KB
UserServiceImpl.class 3KB
ViewRainByPageServlet.class 3KB
ViewRainByPageServlet.class 3KB
ViewRainByPageServlet.class 3KB
ViewRainByPageServlet.class 3KB
UpdateWaterLevelData.class 3KB
UpdateWaterLevelData.class 3KB
UpdateWaterLevelData.class 3KB
UpdateWaterLevelData.class 3KB
LoginServlet.class 3KB
LoginServlet.class 3KB
LoginServlet.class 3KB
LoginServlet.class 3KB
共 1092 条
- 1
- 2
- 3
- 4
- 5
- 6
- 11
资源评论
.whl
- 粉丝: 3960
- 资源: 4908
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于微信小程序的捷邻小程序答辩PPT.ppt
- 自动化控制领域的直流电机校正装置设计及其MATLAB-SIMULINK仿真验证
- 自动化领域的自动控制原理课程设计任务-MATLAB仿真及系统性能分析
- 全球电荷适调器行业发展趋势:年复合增长率(CAGR)为6.2%(2025-2031)
- Greenplum Clients for RHEL 7 gp client
- 基于微信小程序的电影交流平台设计与实现.docx
- 基于微信小程序的党员之家服务系统小程序设计与实现.docx
- 基于微信小程序的“健康早知道”微信小程序设计与实现.docx
- 基于微信小程序的高校课堂教学管理系统设计与实现.docx
- 基于微信小程序的驾校报名小程序设计与实现.docx
- 基于微信小程序的高校毕业论文管理系统小程序设计与实现.docx
- 基于微信小程序的捷邻小程序设计与实现.docx
- arpg大乱斗游戏带原生非引擎源码
- 资产管理系统需求:涵盖人事、资产管理与采购流程的功能设计
- 自动化专业2024年自动控制原理课程设计-MATLAB根轨迹、频域法与串联校正的应用
- 数据库全景图(史上最全版)
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功