基于SSM的“课程实验教学系统”的设计与实现(源码+数据库+文档)
-
开发语言:Java
-
数据库:MySQL
-
技术:SSM
-
工具:IDEA/Ecilpse、Navicat、Maven
系统展示
系统功能结构图
首页页面图
登录界面
实验项目
实验项目管理
用户管理
教师添加
教师查询
实验预约添加
实验预约查询
摘要
本课程实验教学管理系统是针对目前课程实验教学管理的实际需求,从实际工作出发,对过去的课程实验教学管理系统存在的问题进行分析,结合计算机系统的结构、概念、模型、原理、方法,在计算机各种优势的情况下,采用目前最流行的B/S结构和java中流行的MVC三层设计模式和eclipse编辑器、MySQL 数据库设计并实现的 。本课程实验教学管理系统主要包括系统用户管理模块、学生管理模块、教师管理、教学资料管理、登录模块、和退出模块等多个模块。它帮助课程实验教学管理实现了信息化、网络化,通过测试,实现了系统设计目标,相比传统的管理模式,本系统合理的利用了课程实验教学管理数据资源,有效的减少了课程实验教学管理的经济投入,大大提高了课程实验教学管理的效率。
开发背景
上个世纪末期,网络技术逐渐开始流行起来,互联网发展进入了起步阶段。到了新世纪初期,信息化技术开始逐渐发展,计算机应用技术逐渐体现出优势来。接着,大量的电脑进入了千家万户,企事业单位、高校、机关等部门。信息化时代逐渐来临,课程实验教学管理成为互联网时代下媒体管理的核心内容。课程实验教学管理是媒体中非常重要的一部分,然而由于其性质也致使它难以被实时衡量。长期来看,管理十分不便利,存在误差,查询难的现象,一旦数据过多,人工管理方式就很难维持。随着信息技术的应用拓展,逐渐引用了信息化技术管理,逐渐取代了人工管理模式,采用计算机系统来管理招聘信息,带来的好处是查询便利,信息准确率高,节省了开资,提高了工作的效率。本次系统开发,主要以课程实验教学管理为对象,根据需求来完成功能设计[1][2]。
开发意义
随着现代课程实验教学管理的快速发展,可以说课程实验教学管理已经逐渐成为现代课程实验教学管理过程中最为重要的部分之一。但是一直以来我国传统的课程实验教学管理并没有建立一套完善的行之有效的课程实验教学管理系统,传统的课程实验教学管理已经无法适应高速发展,无论是从效率还是从效果来看都远远的和预计相差甚多,可以断言,传统的课程实验教学管理模式已经不再适应,甚至已经拖累了发展。因此,需要一个操作方便,高效的管理体系。
系统设计的主要意义在于,一方面,对于学校来讲,系统上线后可以带来很大的便利性,课程实验教学管理属于非常细致的管理模式,要求数据量大,计算机管理可以提高精确性,更为便利的就是信息的查询,大大的提高了工作效率,改善了管理质量;另一方面,通过系统的设计,自己对软件设计有了更加深入的了解,并且产生了浓厚的学习兴趣,在对问题分析方面有了独特的方式,是进入社会之前一次很好的锻炼机会[3][4]。
研究内容
1.不同用户的登录问题:根据用户的类别(超级管理员、普通用户)实现用户操作权限的区分并显示不同的操作界面。
2.数据库的连接问题:数据库连接为系统中的关键技术。
3.数据的一致性和安全问题:本系统必须保证数据的一致性和安全,才能实现有效的管理。不能让没有权限的用户对数据进行操作并且定期对数据库进行备份。
4.界面开发:系统界面的设计很重要,要使界面具有亲和力。
5.分析招聘信息化现状;
6.研究课程实验教学管理系统的现状及存在的问题;
7.研究系统平台的总体架构、总体设计、数据库设计、数据库安全设计及功能设计;
8.研究平台各个子系统的功能及实现的方法、信息技术的融合、信息安全技术的维护;
9.进行课程实验教学管理系统的功能设计。
部分源码
@Controller
public class AllusersController {
@Resource
private AllusersServer allusersService;
//
@RequestMapping("showAllusers.do")
public String showAllusers(int id,ModelMap map,HttpSession session){
/* Map<String,Object> bmap=new HashMap<String,Object>();
bmap.put("uid", id);*/
// map.put("blist", allusersService.getAll(bmap));
map.put("allusers", allusersService.getById(id));
return "read";
}
@RequestMapping("addAllusers.do")
public String addAllusers(HttpServletRequest request,Allusers allusers,HttpSession session){
Timestamp time=new Timestamp(System.currentTimeMillis());
//Users u=(Users)session.getAttribute("user");
/*if(u==null||u.equals("")){
return "redirect:showIndex.do";
}else{*/
//bbs.setUid(u.getId());
/*bbs.setPubtime(time.toString());
bbs.setIsdel("1");*/
allusers.setAddtime(time.toString().substring(0, 19));
allusersService.add(allusers);
return "redirect:allusersList.do";
/*}*/
}
// 处理编辑
@RequestMapping("doUpdateAllusers.do")
public String doUpdateAllusers(int id,ModelMap map,Allusers allusers){
allusers=allusersService.getById(id);
map.put("allusers", allusers);
return "allusers_updt";
}
//
@RequestMapping("updateAllusers.do")
public String updateAllusers(int id,ModelMap map,Allusers allusers){
allusersService.update(allusers);
return "redirect:allusersList.do";
}
// 所有List
// @RequestMapping("allusersList.do")
// public String allusersList(ModelMap map,HttpSession session){
// map.put("list", allusersService.getAll(null));
// map.put("clist", allusersService.getAll(null));
// return "allusers";
// }
// 分页查询
@RequestMapping("allusersList.do")
public String goodList(@RequestParam(value="page",required=false)String page,
ModelMap map,HttpSession session,Allusers allusers, String username, String pwd, String cx){
/*if(session.getAttribute("user")==null){
return "login";
}*/
if(page==null||page.equals("")){
page="1";
}
PageBean pageBean=new PageBean(Integer.parseInt(page), 15);
Map<String, Object> pmap=new HashMap<String,Object>();
pmap.put("pageno", pageBean.getStart());
pmap.put("pageSize", 15);
Map<String, Object> bmap=new HashMap<String, Object>();
Map<String,Object> cmap=new HashMap<String,Object>();
/*pmap.put("uid", ((Users)session.getAttribute("user")).getId());
bmap.put("uid", ((Users)session.getAttribute("user")).getId());*/
if(username==null||username.equals("")){pmap.put("username", null);cmap.put("username", null);}else{pmap.put("username", username);cmap.put("username", username);}
if(pwd==null||pwd.equals("")){pmap.put("pwd", null);cmap.put("pwd", null);}else{pmap.put("pwd", pwd);cmap.put("pwd", pwd);}
if(cx==null||cx.equals("")){pmap.put("cx", null);cmap.put("cx", null);}else{pmap.put("cx", cx);cmap.put("cx", cx);}
int total=allusersService.getCount(bmap);
pageBean.setTotal(total);
List<Allusers> list=allusersService.getByPage(pmap);
map.put("page", pageBean);
map.put("list", list);
session.setAttribute("p", 1);
return "allusers_list";
}
// 分页模糊查询
@RequestMapping("vagueAllusersList.do")
public String vagueAllusersList(@RequestParam(value="page",required=false)String page,
ModelMap map,HttpSession session){
if(page==null||page.equals("")){
page="1";
}
PageBean pageBean=new PageBean(Integer.parseInt(page),PageBean.PAGESIZE);
Map<String, Object> pmap=new HashMap<String,Object>();
pmap.put("pageno", pageBean.getStart());
pmap.put("pageSize", pageBean.getPageSize());
Map<String, Object> bmap=new HashMap<String, Object>();
/*pmap.put("uid", ((Users)session.getAttribute("user")).getId());
bmap.put("uid", ((Users)session.getAttribute("user")).getId());*/
int total=allusersService.getCount(bmap);
pageBean.setTotal(total);
List<Allusers> list=allusersService.getByPage(pmap);
map.put("page", pageBean);
map.put("list", list);
session.setAttribute("p", 2);
return "queryallusers";
}
@RequestMapping("deleteAllusers.do")
public String deleteAllusers(int id){
allusersService.delete(id);
return "redirect:allusersList.do";
}
@RequestMapping("quchongAllusers.do")
public void quchongAllusers(Allusers allusers,HttpServletResponse response){
Map<String,Object> map=new HashMap<String,Object>();
map.put("username", allusers.getUsername());
System.out.println("username==="+allusers.getUsername());
System.out.println("username222==="+allusersService.quchongAllusers(map));
JSONObject obj=new JSONObject();
if(allusersService.quchongAllusers(map)!=null){
obj.put("info", "ng");
}else{
obj.put("info", "username可以用!");
}
response.setContentType("text/html;charset=utf-8");
PrintWriter out=null;
try {
out=response.getWriter();
out.print(obj);
out.flush();
} catch (IOException e) {
e.printStackTrace();
}finally{
out.close();
}
}
@RequestMapping("Alluserslogin.do")
public String checkAllusersLogin(Allusers allusers, HttpSession session) {
Map<String,Object> u=new HashMap<String,Object>();
System.out.println("name===" + allusers.getUsername());
u.put("username",allusers.getUsername());
//u.put("utype", "用户");
//Md5.MD5HexEncode(user.getPassword())
u.put("pwd",allusers.getPwd());
allusers = allusersService.allusersLogin(u);
if (allusers != null) {
session.setAttribute("username", allusers);
System.out.println("username=" + allusers);
session.removeAttribute("suc");
return "redirect:index.do";
} else {
System.out.println("usernafwfwwme=");
session.setAttribute("suc", "登录失败!用户名或密码错误!");
return "login";
}
}
}
结论
经过几个月的努力还坚持,课程实验教学管理系统终于完成了,程序功能模块能按照需求来运行,能实现多用户的迸发使用,但是系统由于设计经验以及专业知识的局限性,在本系统的开发过程中,在一些功能方面和业务逻辑方面做得不是很完善,系统还存在一些缺陷。界面的设计从布局到外观,受限于自身的设计功底较低,没能达到自己所要设计的界面要求,另一方面,系统存在一些没有考虑的问题和模块。
在学习的过程中首次进行独立设计工作,编码过程出现了许多问题和困难,原以为正确无误的程序运行过程中不会遇到问题,但是在运行过程中也总会出现各种各样的问题,在调试过程中找不出运行出错的原因。而这些基本问题却都是一些简单的问题,例如标点符号应该是英文状态下的,却因为不好的编程习惯造成了一些中文的符号输入,经过仔细观察和老师的帮组下,还是将问题解决了。