源码获取:俺的博客首页 "资源" 里下载!

项目介绍

本项目包含管理员、教师、家长用户三种角色;
管理员角色包含以下功能:
管理员登录,用户注册申请,学校用户账号管理,学校管理员管理,网站介绍管理,系统公告管理,网站新闻发布,新闻审核管理,公告审核管理等功能。

教师角色包含以下功能:
教师登录,学生管理,考试管理,沟通交流管理,布置作业等功能。

家长用户角色包含以下功能:
用户首页,网站新闻,公告信息,用户登录,家长互动等功能。

环境需要

1.运行环境:jdk必须使用JDK7,其它版本暂不支持。
2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;
3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可
4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS; 
5.数据库:MySql 5.7版本;
6.是否Maven项目: 否;查看源码目录中是否包含pom.xml;若包含,则为maven项目,否则为非maven项目

技术栈

1. 后端:Spring SpringMVC MyBatis
2. 前端:JSP+css+javascript+bootstrap+jQuery+echarts

使用说明

1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;
若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行;
3. 将项目中jdbc.properties配置文件中的数据库配置改为自己的配置;
4. 运行项目,在浏览器中输入地址 登录

用户管理控制层:

@Controller
@RequestMapping("UsersServlet")
public class UsersController {private UsersDao usersDao = new UsersDao();@Autowiredprivate HttpServletRequest request;@RequestMapping("/loginadmin")public String loginadmin() {String username = request.getParameter("username");String password = request.getParameter("password");Users users = usersDao.login(username, password);if (users != null) {request.getSession().setAttribute("loginUsers", users);return "admin_index";} else {request.setAttribute("msg", "登录失败,账号密码不匹配");return "admin_login";}}@RequestMapping("/userlogin")public String userlogin() {String userName = request.getParameter("username");String password = request.getParameter("password");String clientCheckcode = request.getParameter("validateCode");String serverCheckcode = (String) request.getSession().getAttribute("checkcode");if (clientCheckcode.equals(serverCheckcode)) {// 2. 去访问dao , 看看是否满足登录。Users Users = usersDao.userlogin(userName, password);// 3. 针对dao的返回结果,做出响应if (Users != null) {request.getSession().setAttribute("usersLogin", Users);CategoryDao categoryDao = new CategoryDao();List<Category> categoryList = categoryDao.queryAll();request.setAttribute("categoryList", categoryList.stream().filter(x -> x.getState().equals("1")).collect(Collectors.toList()));return "index";} else {request.setAttribute("error", "用户名或密码错误!");return "login";}} else {request.setAttribute("error", "登录失败,验证码不正确!");return "login";}}@RequestMapping("/userreg")public String userreg() {String username = request.getParameter("username");String password = request.getParameter("password");String account = request.getParameter("account");String email = request.getParameter("email");String password2 = request.getParameter("password2");if (!password.equals(password2)) {request.setAttribute("error", "注册失败,密码与确认密码不一致!");return "reg";} else {boolean isSuccess = usersDao.isReg(account);if (!isSuccess) {request.setAttribute("error", "注册失败,该用户名已存在!");return "reg";} else {usersDao.reg(username, account, password, email);request.setAttribute("error", "注册成功!");return "reg";}}}@RequestMapping("/listforadmin")public String listforadmin() {List<Users> list = usersDao.getUsers();request.setAttribute("list", list);return "listusers";}@RequestMapping("/del")public String del(Integer id) {usersDao.del(id);List<Users> list = usersDao.getUsers();request.setAttribute("list", list);return "listusers";}
}

新闻管理控制层:

@Controller
@RequestMapping("NewsServlet")
public class NewsController {@Autowiredprivate HttpServletRequest request;private NewsDao newsDao = new NewsDao();private CategoryDao categoryDao = new CategoryDao();private CommentsDao commentsDao = new CommentsDao();@RequestMapping("/publish")public String publish(){String title = request.getParameter("title");String content = request.getParameter("content");String categoryid = request.getParameter("categoryid");Users users = (Users) request.getSession().getAttribute("loginUsers");Integer usersId = users.getId();Integer deptid = users.getDeptid();News news = new News();news.setCategoryid(Integer.parseInt(categoryid));news.setClicks(0);news.setContent(content);news.setPbdate(new Date());news.setPbdeptid(deptid);news.setPublisher(usersId);news.setCategoryid(Integer.parseInt(categoryid));news.setTitle(title);newsDao.save(news);return "redirect:listforadmin";}@RequestMapping("/listforadmin")public String listforadmin(){List<News> newsList = newsDao.queryAll();request.setAttribute("list", newsList);return "listnews";}@RequestMapping("/toaddnews")public String toaddnews(){List<News> newsList = newsDao.queryAll();request.setAttribute("list", newsList);List<Category> categoryList = categoryDao.queryAll();request.setAttribute("categoryList", categoryList);return "addnews";}@RequestMapping("/edit")public String edit(){String title = request.getParameter("title");String content = request.getParameter("content");String categoryid = request.getParameter("categoryid");News news = new News();news.setCategoryid(Integer.parseInt(categoryid));news.setContent(content);news.setPbdate(new Date());news.setId(Integer.parseInt(request.getParameter("id")));news.setTitle(title);newsDao.edit(news);return "redirect:listforadmin";}@RequestMapping("/del")public String del(){newsDao.deleteById(Integer.parseInt(request.getParameter("id")));List<News> newsList = newsDao.queryAll();request.setAttribute("list", newsList);return "listnews";}@RequestMapping("/toeditnews")public String toeditnews(){News news = newsDao.queryByid(Integer.parseInt(request.getParameter("id")));request.setAttribute("v", news);List<Category> categoryList = categoryDao.queryAll();request.setAttribute("categoryList", categoryList);return "editnews";}@RequestMapping("/queryByType")public String queryByType(){String categoryid = request.getParameter("categoryid");List<News> newsList = newsDao.queryAll();request.setAttribute("list", newsList.stream().filter(x -> x.getCategoryid().equals(Integer.parseInt(categoryid))).collect(Collectors.toList()));List<Category> categoryList = categoryDao.queryAll();request.setAttribute("categoryList",categoryList.stream().filter(x -> x.getState().equals("1")).collect(Collectors.toList()));return "typenews";}@RequestMapping("/detail")public String detail(){//测试String id =  request.getParameter("id");if(id.contains(".jsp")){id= request.getParameter("id").replaceAll(".jsp","");}News news = newsDao.queryByid(Integer.parseInt(id));news.setClicks(news.getClicks() + 1);newsDao.setClicksIncrement(news);NewsDetail detail = new NewsDetail();detail.setNews(news);Category category = categoryDao.queryById(news.getCategoryid());detail.setCategory(category);String content = news.getContent();int length = content.length();length = length / 60;length = length * 27 + 10;request.setAttribute("length", length);request.setAttribute("v", detail);List<Category> categoryList = categoryDao.queryAll();List<Comments> commentsList = commentsDao.getByNewsId(news.getId());request.setAttribute("commentsList", commentsList);request.setAttribute("contentstr", content);request.setAttribute("categoryList",categoryList.stream().filter(x -> x.getState().equals("1")).collect(Collectors.toList()));return "detailnews";}@RequestMapping("/search")public String search(){String search = request.getParameter("search");request.setAttribute("searchStr", search);List<News> newsList = newsDao.queryAll();newsList=newsList.stream().filter(x -> x.getTitle().contains(search)).collect(Collectors.toList());newsList=    newsList.stream().map(x->{String title = x.getTitle();/*            String[] split = title.split(search);*//*if(split.length>=2){for(int i=0;i<split.length-1;i++){title=split[i]+"<font color='red'>"+search+"</font>"+split[i+1];}}else{title=split[0]+"<font color='red'>"+search+"</font>";}*/title=title.replace(search, "<font color='red'>"+search+"</font>");System.out.println(title);x.setTitle(title);return x;}).collect(Collectors.toList());request.setAttribute("list",newsList);List<Category> categoryList = categoryDao.queryAll();request.setAttribute("categoryList",categoryList.stream().filter(x -> x.getState().equals("1")).collect(Collectors.toList()));return "searchnews";}}

公告管理控制层:

@Controller
@RequestMapping("CategoryServlet")
public class CategoryController {@Autowiredprivate HttpServletRequest request;private CategoryDao categoryDao=new CategoryDao();@RequestMapping("/listforadmin")public String listforadmin(){List<Category> categoryList = categoryDao.queryAll();request.setAttribute("list", categoryList);return "listcategory";}@RequestMapping("/show")public String show(){List<Category> categoryList = categoryDao.queryAll();categoryList=categoryList.stream().filter(x->x.getState().equals("1")).collect(Collectors.toList());if(categoryList.size()>=5){request.setAttribute("list", categoryDao.queryAll());request.setAttribute("msg","设置栏目显示失败,前台栏目最多显示5个");return "listcategory";}else {categoryDao.show(Integer.parseInt(request.getParameter("id")));return "redirect:listforadmin";}}@RequestMapping("/hidden")public String hidden(){categoryDao.hidden(Integer.parseInt(request.getParameter("id")));return "redirect:listforadmin";}@RequestMapping("/add")public String add(){String name=request.getParameter("name");String state=request.getParameter("state");Category category=new Category();category.setName(name);category.setState(state);categoryDao.save(category);return "redirect:listforadmin";}}

源码获取:俺的博客首页 "资源" 里下载!

Java项目:家校通管理系统(java+SSM+JSP+bootstrap+echarts+Mysql)相关推荐

  1. 基于javaweb的家校通管理系统(java+ssm+jsp+bootstrap+echarts+mysql)

    基于javaweb的家校通管理系统(java+ssm+jsp+bootstrap+echarts+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/ ...

  2. Java毕设项目家校通管理系统(java+VUE+Mybatis+Maven+Mysql)

    Java毕设项目家校通管理系统(java+VUE+Mybatis+Maven+Mysql) 项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webs ...

  3. Springboot毕设项目家校通管理系统678bojava+VUE+Mybatis+Maven+Mysql+sprnig)

    Springboot毕设项目家校通管理系统678bojava+VUE+Mybatis+Maven+Mysql+sprnig) 项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql ...

  4. java毕业设计家校通管理系统mybatis+源码+调试部署+系统+数据库+lw

    java毕业设计家校通管理系统mybatis+源码+调试部署+系统+数据库+lw java毕业设计家校通管理系统mybatis+源码+调试部署+系统+数据库+lw 本源码技术栈: 项目架构:B/S架构 ...

  5. 基于javaweb的医院病历信息管理系统(java+ssm+jsp+bootstrap+easyui+mysql)

    基于javaweb的医院病历信息管理系统(java+ssm+jsp+bootstrap+easyui+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclips ...

  6. 基于javaweb的业务代办帮跑腿管理系统(java+ssm+jsp+bootstrap+jquery+mysql)

    基于javaweb的业务代办帮跑腿管理系统(java+ssm+jsp+bootstrap+jquery+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclip ...

  7. 基于javaweb的超市进销存管理系统(java+ssm+jsp+bootstrap+jquery+mysql)

    基于javaweb的超市进销存管理系统(java+ssm+jsp+bootstrap+jquery+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse ...

  8. 基于javaweb的汽车维修管理系统(java+ssm+jsp+easyui+echarts+mysql)

    基于javaweb的汽车维修管理系统(java+ssm+jsp+easyui+echarts+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/id ...

  9. 基于javaweb的企业绩效考核管理系统(java+ssm+jsp+bootstrap+jquery+mysql)

    基于javaweb的企业绩效考核管理系统(java+ssm+jsp+bootstrap+jquery+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclips ...

最新文章

  1. 字节码编辑器JClassLIb下载教程
  2. 电脑显示器闪屏_Win7系统电脑显示器屏幕闪屏的解决办法
  3. Android 系统(219)---Android O上networkAttributes的说明
  4. C语言骚操作:结构体初始化方法
  5. python 与或非_Python的阶乘求和
  6. java定义子类_java定义类和子类中的方法
  7. 微信云控开发SDK使用教程--手机回传朋友圈点赞数量通知服务端
  8. Smart3D-安装教程
  9. 代码审计工具学习之RISP(安装以及初步操作)
  10. Redis官方中文翻译系列 - Redis文档
  11. 适合于图像处理方向的SCI期刊杂志列表【部分转载】
  12. LiveQing私有云流媒体-云端录像时间轴视频及列表视图
  13. 如何才是一名优秀的好员工
  14. yapi-404-接口字段验证不通过, 错误信息:shema 验证请求参数 schema is invalid: data.properties[‘otherParams‘].required sho
  15. [转]oracle EBS 基础100问
  16. 彩色图直方图均衡化matlab
  17. 上海市一级计算机ps,上海市计算机一级考试ps部分练习题.docx
  18. vue接口总是请求超时_vue-resource请求超时timeout设置
  19. 技术分享| 视频监控融合方案
  20. 地球罕见的九大自然现象

热门文章

  1. java毕业设计成品基于SSM框架实现的驾校管理系统
  2. 揭穿3个开发者和云计算神话
  3. 该置顶的文章还是要置顶
  4. 无法通过“控制面板”卸载 Office 2003、Office 2007 或 Office 2010 套件的情况下,如何才能将其卸载?...
  5. Flutter TextField示例
  6. 降本升效-能耗监测物联网解决方案
  7. 解决计算机的一些小问题,电脑故障怎么办?排除法解决电脑的一些小问题
  8. 南京林业大学c语言选修题库,南京林业大学计算机正版题库(参考).doc
  9. rollup 压缩插件 rollup-plugin-terser 在 rollup 3.x 不能使用了吗? 跳坑记
  10. 利用三层判断sql数据库中编码是否已经存在(个人拙作,不喜勿喷)