网站设计学校分销平台官网
一、源码特点
     java SSM水质历史数据可视化设计是一套完善的web设计系统(系统采用SSM框架进行设计开发,spring+springMVC+mybatis),对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0,使用java语言开发。
ssm 水质历史数据可视化设计
 二、功能介绍
 主要内容包括数据的按时间段查询、表格化分页显示、趋势图显示等功能。完成课题的条件需要熟悉Java web开发,以及web前端设计技术。实现检测站点历史数据的表格化分页显示、根据查询时间区间查询历史数据、历史数据折线图显示等功能,不同的用户角色所能浏览的权限不同
 (1)用户管理:对用户信息进行添加、删除、修改和查看
 (2)管理员管理:对管理员信息进行添加、删除、修改和查看
 (3)地区管理:对地区信息进行添加、删除、修改和查看
 (4)站点管理:对站点信息进行添加、删除、修改和查看
 (5)水质管理:对水质信息进行添加、删除、修改和查看 折线图查看
 (6)个人信息修改
数据库设计
(1)用户信息表如表3.1所示:
表3.1 用户信息表
|   序号  |   字段名称  |   数据类型  |   长度  |   主键  |   描述  | 
|   1  |   yhid  |   INTEGER  |   11  |   是  |   用户编号  | 
|   2  |   yhm  |   VARCHAR  |   40  |   否  |   用户名  | 
|   3  |   mm  |   VARCHAR  |   40  |   否  |   密码  | 
|   4  |   xm  |   VARCHAR  |   40  |   否  |   姓名  | 
|   5  |   lxdh  |   VARCHAR  |   40  |   否  |   联系电话  | 
|   6  |   lxdz  |   VARCHAR  |   40  |   否  |   联系地址  | 
(2)管理员信息表如表3.2所示:
表3.2 管理员信息表
|   序号  |   字段名称  |   数据类型  |   长度  |   主键  |   描述  | 
|   1  |   glyid  |   INTEGER  |   11  |   是  |   管理员编号  | 
|   2  |   yhm  |   VARCHAR  |   40  |   否  |   用户名  | 
|   3  |   mm  |   VARCHAR  |   40  |   否  |   密码  | 
|   4  |   xm  |   VARCHAR  |   40  |   否  |   姓名  | 
(3)地区信息表如表3.3所示:
表3.3 地区信息表
|   序号  |   字段名称  |   数据类型  |   长度  |   主键  |   描述  | 
|   1  |   dqid  |   INTEGER  |   11  |   是  |   地区编号  | 
|   2  |   dq  |   VARCHAR  |   40  |   否  |   地区  | 
(4)站点信息表如表3.4所示:
表3.4 站点信息表
|   序号  |   字段名称  |   数据类型  |   长度  |   主键  |   描述  | 
|   1  |   zdid  |   INTEGER  |   11  |   是  |   站点编号  | 
|   2  |   zdmc  |   VARCHAR  |   40  |   否  |   站点名称  | 
|   3  |   dq  |   VARCHAR  |   40  |   否  |   地区  | 
(5)水质信息表如表3.5所示:
表3.5 水质信息表
|   序号  |   字段名称  |   数据类型  |   长度  |   主键  |   描述  | 
|   1  |   szid  |   INTEGER  |   11  |   是  |   水质编号  | 
|   2  |   zhd  |   VARCHAR  |   40  |   否  |   站点  | 
|   3  |   sj  |   VARCHAR  |   40  |   否  |   时间  | 
|   4  |   zd  |   VARCHAR  |   40  |   否  |   浊度  | 
|   5  |   yd  |   VARCHAR  |   40  |   否  |   盐度  | 
|   6  |   sjd  |   VARCHAR  |   40  |   否  |   酸碱度  | 
|   7  |   sw  |   VARCHAR  |   40  |   否  |   水温  | 
|   8  |   rjy  |   VARCHAR  |   40  |   否  |   溶解氧  | 
|   9  |   ddl  |   VARCHAR  |   40  |   否  |   电导率  | 
系统ER 图

代码设计
	public String addPage(yonghu yonghu,HttpServletRequest request){Map<String,Object> map= new HashMap<String,Object>();System.out.println("addPageok");return "yonghu/yonghuadd";}@RequestMapping(value="/add")public String add(yonghu yonghu,HttpServletRequest request){Map<String,Object> map= new HashMap<String,Object>();//String name=(String)request.getParameter("name");map.put("yhid", yonghu.getYhid());//用户编号map.put("yhm", yonghu.getYhm());//用户名map.put("mm", yonghu.getMm());//密码map.put("xm", yonghu.getXm());//姓名map.put("lxdh", yonghu.getLxdh());//联系电话map.put("lxdz", yonghu.getLxdz());//联系地址map.put("zd", yonghu.getZd());//联系地址String yhid=(String)yonghu.getYhid();//用户编号String yhm=(String)yonghu.getYhm();//用户名String mm=(String)yonghu.getMm();//密码String xm=(String)yonghu.getXm();//姓名String lxdh=(String)yonghu.getLxdh();//联系电话String lxdz=(String)yonghu.getLxdz();//联系地址String sql="select count(1) as num from yonghu where yhm='"+yhm+"'";ResultSet rs=null;int num=0;DBO db=new DBO();try{rs=db.query(sql);if(rs.next()){num=rs.getInt("num");}if(num>0){request.setAttribute("msg", "<script>alert('添加失败、用户名重复');</script>");}else{yonghudao.save(map);request.setAttribute("msg", "<script>alert('添加成功');</script>");}}catch(Exception e){e.printStackTrace();}System.out.println("addok");return "yonghu/yonghuadd";}/**删除 * */@RequestMapping(value="/del")public String  del(Integer id,HttpServletRequest request,Map<String,Object> map){//	Map<String,Object> map= new HashMap<String,Object>();String a=(String)request.getParameter("keyid");id=Integer.parseInt(a);request.setAttribute("msg", "<script>alert('删除成功');</script>");yonghudao.del(id);return selectall(null,map,request);}/*** 修改yonghu信息*/@RequestMapping(value="/update")public String update(yonghu yonghu,HttpServletRequest request,Map<String,Object> map1){Map<String,Object> map= new HashMap<String,Object>();map.put("yhid", yonghu.getYhid());//用户编号map.put("yhm", yonghu.getYhm());//用户名map.put("mm", yonghu.getMm());//密码map.put("xm", yonghu.getXm());//姓名map.put("lxdh", yonghu.getLxdh());//联系电话map.put("lxdz", yonghu.getLxdz());//联系地址String yhid=(String)yonghu.getYhid();//用户编号String yhm=(String)yonghu.getYhm();//用户名String mm=(String)yonghu.getMm();//密码String xm=(String)yonghu.getXm();//姓名String lxdh=(String)yonghu.getLxdh();//联系电话String lxdz=(String)yonghu.getLxdz();//联系地址request.setAttribute("msg", "<script>alert('修改成功');</script>");yonghudao.update(map);return selectall(null,map1,request);}/*** 修改yonghu信息*/@RequestMapping(value="/upd")public String upd(yonghu yonghu,HttpServletRequest request,Map<String,Object> map1){Map<String,Object> map= new HashMap<String,Object>();map.put("yhid", yonghu.getYhid());//用户编号map.put("yhm", yonghu.getYhm());//用户名map.put("mm", yonghu.getMm());//密码map.put("xm", yonghu.getXm());//姓名map.put("lxdh", yonghu.getLxdh());//联系电话map.put("lxdz", yonghu.getLxdz());//联系地址String yhid=(String)yonghu.getYhid();//用户编号String yhm=(String)yonghu.getYhm();//用户名String mm=(String)yonghu.getMm();//密码String xm=(String)yonghu.getXm();//姓名String lxdh=(String)yonghu.getLxdh();//联系电话String lxdz=(String)yonghu.getLxdz();//联系地址request.setAttribute("msg", "<script>alert('修改成功');</script>");yonghudao.update(map);return mod(null,map1,request);} 
mybatis配置
<insert id="insertshuizhi"  parameterType="java.util.Map">insert  into  shuizhi(zhd,sj,zd,yd,sjd,sw,rjy,ddl)  values(#{zhd},#{sj},#{zd},#{yd},#{sjd},#{sw},#{rjy},#{ddl})
</insert><delete id="delshuizhi" parameterType="int">delete  from  shuizhi where szid=#{szid}
</delete><update id="updateshuizhi" parameterType="java.util.Map">
update shuizhi set zhd=#{zhd},sj=#{sj},zd=#{zd},yd=#{yd},sjd=#{sjd},sw=#{sw},rjy=#{rjy},ddl=#{ddl} where szid=#{szid}
</update><!--  查询返回的是 list<map> -->
<!-- resultType 就是返回查询结果的类型,而如果是resultMap=则返回的就是你定义的javabean  -->
<select  id="selectshuizhi"  parameterType="int" resultType="java.util.Map">select  * from shuizhi where szid=#{szid}
</select><!-- resultType 就是返回查询结果的类型,而如果是resultMap=则返回的就是你定义的javabean  -->
<select  id="selectall"  parameterType="java.util.Map" resultType="java.util.Map">select  a.*,b.zdmc,b.dq from shuizhi a,zhandian b where 1=1 and a.zhd=b.zdid
<if test=" null != zhd and zhd!=''" >and a.zhd = #{zhd}
</if>
<if test=" null != kssj and kssj!=''" >and a.sj >= #{kssj}
</if>
<if test=" null != jssj and jssj!=''" >and  #{jssj}>=a.sj</if></select> 
   
 三、注意事项
     1、管理员账号:admin 密码:admin 数据库配置文件datasource.properties
      2、开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0,使用java语言开发。
     3、数据库文件名是jspssmwater.sql,系统名称ssmwater
     4、系统首页地址:http://127.0.0.1:8080/ssmwater/login.jsp
四 系统实现




源码获取 下方联系卡片↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
