——————————DescriptionStart——————————
运行环境
Java≥8、MySQL≥5.7
开发工具
eclipse/idea/myeclipse/sts等均可配置运行
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
基于javaweb的SpringBoot家校信息共享系统(java+springboot+mybatis+jquery+mysql)
项目介绍
本项目包含管理员、教师、家长用户三种角色;
管理员角色包含以下功能:
管理员登录,用户注册申请,学校用户账号管理,学校管理员管理,网站介绍管理,系统公告管理,网站新闻发布,新闻审核管理,公告审核管理等功能。
教师角色包含以下功能:
教师登录,学生管理,考试管理,沟通交流管理,布置作业等功能。
家长用户角色包含以下功能:
用户首页,网站新闻,公告信息,用户登录,家长互动等功能。
环境需要
1.运行环境:jdk必须使用JDK7,其它版本暂不支持。
2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;
4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS;
5.数据库:MySql 5.7版本;
技术栈
后端:SpringBoot+Mybatis
前端:mysql+css+javascript+jQuery
使用说明
使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;
若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行;
将项目中jdbc.properties配置文件中的数据库配置改为自己的配置;
运行项目,在浏览器中输入地址 登录
首页展示:
注册界面展示:
课程安排展示:
个人信息管理展示:
校园资讯管理展示:
学生管理展示:
模块管理展示:
留言信息展示:
课程信息展示:
校园资讯展示:
——————————CodeStart——————————
用户管理控制层:
@Controller
@RequestMapping(“UsersServlet”)
public class UsersController {
private UsersDao usersDao = new UsersDao();
@Autowired
private 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
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
request.setAttribute(“list”, list);
return “listusers”;
@RequestMapping(“/del”)
public String del(Integer id) {
usersDao.del(id);
List
request.setAttribute(“list”, list);
return “listusers”;
新闻管理控制层:
@Controller
@RequestMapping(“NewsServlet”)
public class NewsController {
@Autowired
private 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
request.setAttribute(“list”, newsList);
return “listnews”;
@RequestMapping(“/toaddnews”)
public String toaddnews(){
List
request.setAttribute(“list”, newsList);
List
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
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
request.setAttribute(“categoryList”, categoryList);
return “editnews”;
@RequestMapping(“/queryByType”)
public String queryByType(){
String categoryid = request.getParameter(“categoryid”);
List
request.setAttribute(“list”, newsList.stream()
.filter(x -> x.getCategoryid().equals(Integer.parseInt(categoryid))).collect(Collectors.toList()));
List
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
List
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
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]+”“+search+”“+split[i+1];
}else{
title=split[0]+”“+search+”“;
}*/
title=title.replace(search, ““+search+”“);
System.out.println(title);
x.setTitle(title);
return x;
}).collect(Collectors.toList());
request.setAttribute(“list”,newsList
);
List
request.setAttribute(“categoryList”,
categoryList.stream().filter(x -> x.getState().equals(“1”)).collect(Collectors.toList()));
return “searchnews”;
公告管理控制层:
@Controller
@RequestMapping(“CategoryServlet”)
public class CategoryController {
@Autowired
private HttpServletRequest request;
private CategoryDao categoryDao=new CategoryDao();
@RequestMapping(“/listforadmin”)
public String listforadmin(){
List
request.setAttribute(“list”, categoryList);
return “listcategory”;
@RequestMapping(“/show”)
public String show(){
List
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”;
——————————PayStart——————————
项目链接:
https://javayms.github.io?id=501524512608201nu
https://javayms.pages.dev?id=501524512608201nu