一、源码特点
SSM 志愿者服务网站系统是一套完善的信息系统,结合springMVC框架完成本系统,对理解JSP java编程开发语言有帮助系统采用SSM框架(MVC模式开发),系统具有完整的源代码和数据库
,系统主要采用B/S模式开发。
ssm志愿者服务网站系统
前段主要技术 html.css javascript
后端主要技术 SSM
数据库 mysql
开发工具 eclipse JDK1.8 TOMCAT 8.5
二、功能介绍
(1)用户管理:对用户信息进行添加、删除、修改和查看
(2)志愿者管理:对志愿者信息进行添加、删除、修改和查看
(3)志愿活动管理:对志愿活动信息进行添加、删除、修改和查看
(4)成绩评定管理:对成绩评定信息进行添加、删除、修改和查看
(5)用户注册、登录、个人信息修改
数据库设计
[表yonghu] 用户列属性表格 | |||||
序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
1 | yhid | INTEGER | 11 | 是 | 用户编号 |
2 | yhm | VARCHAR | 40 | 否 | 用户名 |
3 | mm | VARCHAR | 40 | 否 | 密码 |
4 | xm | VARCHAR | 40 | 否 | 姓名 |
5 | qx | VARCHAR | 40 | 否 | 权限 |
6 | lxdh | VARCHAR | 40 | 否 | 联系电话 |
7 | lxdz | VARCHAR | 40 | 否 | 联系地址 |
[表zyz] 志愿者列属性表格 | |||||
序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
1 | zyzid | INTEGER | 11 | 是 | 志愿者编号 |
2 | yhm | VARCHAR | 40 | 否 | 用户名 |
3 | mm | VARCHAR | 40 | 否 | 密码 |
4 | xm | VARCHAR | 40 | 否 | 姓名 |
5 | lxdh | VARCHAR | 40 | 否 | 联系电话 |
6 | lxdz | VARCHAR | 40 | 否 | 联系地址 |
7 | xb | VARCHAR | 40 | 否 | 性别 |
8 | nl | VARCHAR | 40 | 否 | 年龄 |
[表zyhd] 志愿活动列属性表格 | |||||
序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
1 | zyhdid | INTEGER | 11 | 是 | 志愿活动编号 |
2 | bt | VARCHAR | 40 | 否 | 标题 |
3 | nr | VARCHAR | 40 | 否 | 内容 |
4 | fbr | VARCHAR | 40 | 否 | 发布人 |
5 | fbsj | VARCHAR | 40 | 否 | 发布时间 |
6 | sm | VARCHAR | 40 | 否 | 说明 |
[表cjpd] 成绩评定列属性表格 | |||||
序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
1 | cjpdid | INTEGER | 11 | 是 | 成绩评定编号 |
2 | zyz | VARCHAR | 40 | 否 | 志愿者 |
3 | hd | VARCHAR | 40 | 否 | 活动 |
4 | cj | VARCHAR | 40 | 否 | 成绩 |
5 | fbsj | VARCHAR | 40 | 否 | 发布时间 |
6 | tjr | VARCHAR | 40 | 否 | 提交人 |
代码设计
@RequestMapping(value="/add")public String add(zyz zyz,HttpServletRequest request){Map<String,Object> map= new HashMap<String,Object>();//String name=(String)request.getParameter("name");map.put("zyzid", zyz.getZyzid());//志愿者编号map.put("yhm", zyz.getYhm());//用户名map.put("mm", zyz.getMm());//密码map.put("xm", zyz.getXm());//姓名map.put("lxdh", zyz.getLxdh());//联系电话map.put("lxdz", zyz.getLxdz());//联系地址map.put("xb", zyz.getXb());//性别map.put("nl", zyz.getNl());//年龄String zyzid=(String)zyz.getZyzid();//志愿者编号String yhm=(String)zyz.getYhm();//用户名String mm=(String)zyz.getMm();//密码String xm=(String)zyz.getXm();//姓名String lxdh=(String)zyz.getLxdh();//联系电话String lxdz=(String)zyz.getLxdz();//联系地址String xb=(String)zyz.getXb();//性别String nl=(String)zyz.getNl();//年龄DBO db=new DBO();String sql="";ResultSet rs=null;int num=0;try{sql="select count(1) as num from zyz where yhm='"+yhm+"'";rs=db.query(sql);if(rs.next()){num=rs.getInt("num");}if(num>0){request.setAttribute("msg", "<script>alert('添加失败、用户名重复');</script>");}else{zyzdao.save(map);request.setAttribute("msg", "<script>alert('添加成功');</script>");}}catch(Exception e){e.printStackTrace();}finally{db.close();}//request.setAttribute("msg", "<script>alert('添加成功');</script>");System.out.println("addok");return "zyz/zyzadd";}@RequestMapping(value="/zc")public String zc(zyz zyz,HttpServletRequest request){Map<String,Object> map= new HashMap<String,Object>();//String name=(String)request.getParameter("name");map.put("zyzid", zyz.getZyzid());//志愿者编号map.put("yhm", zyz.getYhm());//用户名map.put("mm", zyz.getMm());//密码map.put("xm", zyz.getXm());//姓名map.put("lxdh", zyz.getLxdh());//联系电话map.put("lxdz", zyz.getLxdz());//联系地址map.put("xb", zyz.getXb());//性别map.put("nl", zyz.getNl());//年龄String zyzid=(String)zyz.getZyzid();//志愿者编号String yhm=(String)zyz.getYhm();//用户名String mm=(String)zyz.getMm();//密码String xm=(String)zyz.getXm();//姓名String lxdh=(String)zyz.getLxdh();//联系电话String lxdz=(String)zyz.getLxdz();//联系地址String xb=(String)zyz.getXb();//性别String nl=(String)zyz.getNl();//年龄DBO db=new DBO();String sql="";ResultSet rs=null;int num=0;try{sql="select count(1) as num from zyz where yhm='"+yhm+"'";rs=db.query(sql);if(rs.next()){num=rs.getInt("num");}if(num>0){request.setAttribute("msg", "<script>alert('添加失败、用户名重复');</script>");}else{zyzdao.save(map);request.setAttribute("msg", "<script>alert('添加成功');</script>");}}catch(Exception e){e.printStackTrace();}finally{db.close();}//request.setAttribute("msg", "<script>alert('添加成功');</script>");System.out.println("addok");return "login";}/**删除 * */@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>");zyzdao.del(id);return selectall(null,map,request);}
mybatis 配置
<!-- 添加用户信息 -->
<insert id="insertzyz" parameterType="java.util.Map">insert into zyz(yhm,mm,xm,lxdh,lxdz,xb,nl) values(#{yhm},#{mm},#{xm},#{lxdh},#{lxdz},#{xb},#{nl})
</insert><delete id="delzyz" parameterType="int">delete from zyz where zyzid=#{zyzid}
</delete><update id="updatezyz" parameterType="java.util.Map">
update zyz set yhm=#{yhm},mm=#{mm},xm=#{xm},lxdh=#{lxdh},lxdz=#{lxdz},xb=#{xb},nl=#{nl} where zyzid=#{zyzid}
</update><!-- 查询返回的是 list<map> -->
<!-- resultType 就是返回查询结果的类型,而如果是resultMap=则返回的就是你定义的javabean -->
<select id="selectzyz" parameterType="int" resultType="java.util.Map">select * from zyz where zyzid=#{zyzid}
</select><!-- resultType 就是返回查询结果的类型,而如果是resultMap=则返回的就是你定义的javabean -->
<select id="selectall" parameterType="java.util.Map" resultType="java.util.Map">select * from zyz where 1=1
<if test=" null != yhm and yhm!=''" >and yhm = #{yhm}
</if>
<if test=" null != mm and mm!=''" >and mm = #{mm}
</if>
<if test=" null != xm and xm!=''" >and xm = #{xm}
</if>
<if test=" null != lxdh and lxdh!=''" >and lxdh = #{lxdh}
</if>
<if test=" null != lxdz and lxdz!=''" >and lxdz = #{lxdz}
</if>
<if test=" null != xb and xb!=''" >and xb = #{xb}
</if>
<if test=" null != nl and nl!=''" >and nl = #{nl}
</if></select>
jsp页面展现设计
<table width="100%" border="0" cellspacing="0" cellpadding="0" id="main-tab"><tr><th align="center" valign="middle" class="borderright">用户名</th><th align="center" valign="middle" class="borderright">密码</th><th align="center" valign="middle" class="borderright">姓名</th><th align="center" valign="middle" class="borderright">联系电话</th><th align="center" valign="middle" class="borderright">联系地址</th><th align="center" valign="middle" class="borderright">性别</th><th align="center" valign="middle" class="borderright">年龄</th><th align="center" valign="middle" class="borderright">操作</th></tr><tbody id="table2"><c:forEach items="${mylist}" var="mymap" varStatus="status"> <tr onMouseOut="this.style.backgroundColor='#ffffff'" onMouseOver="this.style.backgroundColor='#edf5ff'"><td align="center" height="28" class="borderright borderbottom" >${mymap.yhm}</td><td align="center" height="28" class="borderright borderbottom" >${mymap.mm}</td><td align="center" height="28" class="borderright borderbottom" >${mymap.xm}</td><td align="center" height="28" class="borderright borderbottom" >${mymap.lxdh}</td><td align="center" height="28" class="borderright borderbottom" >${mymap.lxdz}</td><td align="center" height="28" class="borderright borderbottom" >${mymap.xb}</td><td align="center" height="28" class="borderright borderbottom" >${mymap.nl}</td><td align="center" class="borderbottom" ><a href="<%= request.getContextPath()%>/zyz/del?keyid=${mymap.zyzid}" onClick="javascript:if(confirm('是否删除')){return true;} else{return false;}">删除</a>|
<a href="<%= request.getContextPath()%>/zyz/modify?keyid=${mymap.zyzid}" >修改</a>|<a href="<%= request.getContextPath()%>/zyz/detail?keyid=${mymap.zyzid}" >详情</a></td></tr></c:forEach> </tbody></table>
三、注意事项
1、管理员账号:admin密码:admin 数据库配置文件datasource.properties
2、开发环境为eclipse开发,数据库为mysql,使用java语言开发。
3、数据库文件名是jspssmzyz.sql 系统名称ssmzyz
4、地址:http://127.0.0.1:8080/ssmzyz/login.jsp
四 系统实现
源码获取 下方联系卡片↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓