作者主页:夜未央5788
简介:Java领域优质创作者、Java项目、学习资料、技术互助
文末获取源码
本项目包含管理员与用户两种角色;
管理员角色包含以下功能:
管理员登录,修改个人资料,读者管理,图书管理,借还书管理,公告管理等功能。
用户角色包含以下功能:
用户登录与注册,修改个人资料,修改密码,查询图书,借还书管理,公告查询等功能。
1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。
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项目:否;
1. 后端:Spring+SpringMVC+Mybatis
2. 前端:JSP+CSS+JavaScript+jquery+echarts
1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;
若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行;
3. 将项目中application.yml配置文件中的数据库配置改为自己的配置;
4. 运行项目,输入localhost:8080/ssm_libbook_sys/ 登录
管理员账号/密码:admin/admin
用户账号/密码:user/123456


- package graduation.design.controller;
-
- import java.io.File;
- import java.io.IOException;
- import java.text.SimpleDateFormat;
- import java.util.Date;
- import org.springframework.web.bind.annotation.RequestParam;
- import org.springframework.web.multipart.MultipartFile;
- import java.util.List;
- import javax.servlet.http.HttpServletRequest;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Controller;
- import org.springframework.ui.Model;
- import org.springframework.web.bind.annotation.RequestMapping;
- import graduation.design.model.*;
- import graduation.design.mapper.*;
-
- import system.common.util.PageModel;
-
- @Controller
- @RequestMapping(value = "BookFile")
- public class BookFileController {
- @Autowired
- private BookFileMapper bookFileMapper;
-
- @RequestMapping(value = "/initUtil.do")
- public String initUtil(HttpServletRequest request, Model model) {
- return "BookFile/saveOrUpdate";
- }
-
- @RequestMapping(value = "/selectUtil.do")
- public String selectUtil(HttpServletRequest request, BookFile util, Model model) {
- util = bookFileMapper.selectObject(util.getId());
- model.addAttribute("util", util);
- return "BookFile/saveOrUpdate";
- }
-
- @SuppressWarnings({ "rawtypes", "unchecked" })
- @RequestMapping(value = "/getAllUtil.do")
- public String getAllUtil(HttpServletRequest request, Model model) {
- String field = request.getParameter("field");
- String fieldValue = request.getParameter("fieldValue");
- try {
- fieldValue = new String(fieldValue.getBytes("UTF-8"), "UTF-8");
- } catch (Exception e) {}
- String pageNo = request.getParameter("pageModel.currentPageNo");
- int currentPageNo = 1;
- try{
- currentPageNo = Integer.parseInt(pageNo);
- }catch(Exception e){
- }
- List
list = bookFileMapper.getObjectList(field, fieldValue); - PageModel pageModel = new PageModel();
- pageModel = pageModel.getUtilByController(list, currentPageNo);
- model.addAttribute("pageModel", pageModel);
- model.addAttribute("fieldValue", fieldValue);
- model.addAttribute("field", field);
- return "BookFile/find";
- }
-
- @RequestMapping(value = "/deleteUtil.do")
- public String deleteUtil(HttpServletRequest request, BookFile util, Model model) {
- try{
- bookFileMapper.deleteObject(util.getId());
- }catch(Exception e){
- }
- return this.getAllUtil(request, model);
- }
-
- @RequestMapping(value = "/deleteManyUtil.do")
- public String deleteManyUtil(HttpServletRequest request, User util,
- Model model) {
- String ids[] = request.getParameterValues("id");
- for (String id : ids) {
- util = new User();
- util.setId(Integer.parseInt(id));
- try{
- bookFileMapper.deleteObject(util.getId());
- }catch(Exception e){}
- }
- return this.getAllUtil(request, model);
- }
-
- @RequestMapping(value = "/saveOrUpdateObject.do")
- public String saveOrUpdateObject(HttpServletRequest request, BookFile util, Model model) {
- List
list = bookFileMapper.getObjectList("s_0", util.getS_0()); - if (0 == util.getId()) {
- if (list.size() > 0) {
- model.addAttribute("util", util);
- model.addAttribute("errMsg", "该信息已存在!");
- return "BookFile/saveOrUpdate";
- }
- bookFileMapper.insertObject(util);
- } else {
- if (list.size() > 1) {
- model.addAttribute("util", util);
- model.addAttribute("errMsg", "该信息已存在!");
- return "BookFile/saveOrUpdate";
- }
- bookFileMapper.updateObject(util);
- }
- return this.getAllUtil(request, model);
- }
-
- @RequestMapping(value = "/upload.do")
- public String upload(@RequestParam MultipartFile[] myfiles, HttpServletRequest request, BookFile util, Model model) throws IOException{
- for (MultipartFile file : myfiles) {
- if (!file.isEmpty()) {
- String fileName = file.getOriginalFilename();
- String path = request.getSession().getServletContext()
- .getRealPath("upload")
- + File.separator;
- String uploadName = new SimpleDateFormat("yyyyMMddHHmmss").format(new Date())
- + fileName;
- File localFile = new File(path + uploadName);
- file.transferTo(localFile);
- util.setS_0(uploadName);
- util.setS_1(fileName);
- util.setS_2(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
- }else{
- List
list = bookFileMapper.getObjectList("s_3", util.getS_3()); - if (0 == util.getId()) {
- if (list.size() > 0) {
- model.addAttribute("util", util);
- model.addAttribute("errMsg", "该信息已存在!");
- return "BookFile/saveOrUpdate";
- }
- util.setS_0("None");
- util.setS_1("None");
- util.setS_2(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
- } else {
- if (list.size() > 1) {
- model.addAttribute("util", util);
- model.addAttribute("errMsg", "该信息已存在!");
- return "BookFile/saveOrUpdate";
- }
- BookFile utilTmp = bookFileMapper.selectObject(util
- .getId());
- util.setS_0(utilTmp.getS_0());
- util.setS_1(utilTmp.getS_1());
- util.setS_2(utilTmp.getS_2());
- }
- }
-
- if (0 == util.getId()) {
- bookFileMapper.insertObject(util);
- } else {
- bookFileMapper.updateObject(util);
- }
- return "BookFile/ok";
-
- }
-
- return "BookFile/ok";
- }
- }
- package graduation.design.controller;
-
- import java.util.List;
- import javax.servlet.http.HttpServletRequest;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Controller;
- import org.springframework.ui.Model;
- import org.springframework.web.bind.annotation.RequestMapping;
- import graduation.design.model.*;
- import graduation.design.mapper.*;
-
- import system.common.util.PageModel;
-
- @Controller
- @RequestMapping(value = "Gongao")
- public class GongaoController {
- @Autowired
- private GongaoMapper gongaoMapper;
-
- @RequestMapping(value = "/initUtil.do")
- public String initUtil(HttpServletRequest request, Model model) {
- return "Gongao/saveOrUpdate";
- }
-
- @RequestMapping(value = "/selectUtil.do")
- public String selectUtil(HttpServletRequest request, Gongao util, Model model) {
- util = gongaoMapper.selectObject(util.getId());
- model.addAttribute("util", util);
- return "Gongao/saveOrUpdate";
- }
-
- @SuppressWarnings({ "rawtypes", "unchecked" })
- @RequestMapping(value = "/getAllUtil.do")
- public String getAllUtil(HttpServletRequest request, Model model) {
- String field = request.getParameter("field");
- String fieldValue = request.getParameter("fieldValue");
- try {
- fieldValue = new String(fieldValue.getBytes("UTF-8"), "UTF-8");
- } catch (Exception e) {}
- String pageNo = request.getParameter("pageModel.currentPageNo");
- int currentPageNo = 1;
- try{
- currentPageNo = Integer.parseInt(pageNo);
- }catch(Exception e){
- }
- List
list = gongaoMapper.getObjectList(field, fieldValue); - PageModel pageModel = new PageModel();
- pageModel = pageModel.getUtilByController(list, currentPageNo);
- model.addAttribute("pageModel", pageModel);
- model.addAttribute("fieldValue", fieldValue);
- model.addAttribute("field", field);
- return "Gongao/find";
- }
-
- @RequestMapping(value = "/deleteUtil.do")
- public String deleteUtil(HttpServletRequest request, Gongao util, Model model) {
- try{
- gongaoMapper.deleteObject(util.getId());
- }catch(Exception e){
- }
- return this.getAllUtil(request, model);
- }
-
- @RequestMapping(value = "/deleteManyUtil.do")
- public String deleteManyUtil(HttpServletRequest request, User util,
- Model model) {
- String ids[] = request.getParameterValues("id");
- for (String id : ids) {
- util = new User();
- util.setId(Integer.parseInt(id));
- try{
- gongaoMapper.deleteObject(util.getId());
- }catch(Exception e){}
- }
- return this.getAllUtil(request, model);
- }
-
- @RequestMapping(value = "/saveOrUpdateObject.do")
- public String saveOrUpdateObject(HttpServletRequest request, Gongao util, Model model) {
- List
list = gongaoMapper.getObjectList("s_0", util.getS_0()); - if (0 == util.getId()) {
- if (list.size() > 0) {
- model.addAttribute("util", util);
- model.addAttribute("errMsg", "该信息已存在!");
- return "Gongao/saveOrUpdate";
- }
- gongaoMapper.insertObject(util);
- } else {
- if (list.size() > 1) {
- model.addAttribute("util", util);
- model.addAttribute("errMsg", "该信息已存在!");
- return "Gongao/saveOrUpdate";
- }
- gongaoMapper.updateObject(util);
- }
- return this.getAllUtil(request, model);
- }
- }
- package graduation.design.controller;
-
- import java.util.List;
- import java.util.ArrayList;
- import javax.servlet.http.HttpSession;
- import javax.servlet.http.HttpServletRequest;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Controller;
- import org.springframework.ui.Model;
- import org.springframework.web.bind.annotation.RequestMapping;
- import graduation.design.model.*;
- import graduation.design.mapper.*;
-
- import system.common.util.PageModel;
-
- @Controller
- @RequestMapping(value = "JieHuanshu")
- public class JieHuanshuController {
- @Autowired
- private JieHuanshuMapper jieHuanshuMapper;
- @Autowired
- private UserMapper userMapper;
- @Autowired
- private BookFileMapper bookFileMapper;
- @Autowired
- private YnMapper ynMapper;
-
- @RequestMapping(value = "/initUtil.do")
- public String initUtil(HttpServletRequest request, Model model) {
- List
listUser = userMapper.getObjectList(null, null); - model.addAttribute("listUser", listUser);
- List
listBookFile = bookFileMapper.getObjectList(null, null); - model.addAttribute("listBookFile", listBookFile);
- List
listYn = ynMapper.getObjectList(null, null); - model.addAttribute("listYn", listYn);
- return "JieHuanshu/saveOrUpdate";
- }
-
- @RequestMapping(value = "/selectUtil.do")
- public String selectUtil(HttpServletRequest request, JieHuanshu util, Model model) {
- util = jieHuanshuMapper.selectObject(util.getId());
- model.addAttribute("util", util);
- List
listUser = userMapper.getObjectList(null, null); - model.addAttribute("listUser", listUser);
- List
listBookFile = bookFileMapper.getObjectList(null, null); - model.addAttribute("listBookFile", listBookFile);
- List
listYn = ynMapper.getObjectList(null, null); - model.addAttribute("listYn", listYn);
- return "JieHuanshu/saveOrUpdate";
- }
-
- @SuppressWarnings({ "rawtypes", "unchecked" })
- @RequestMapping(value = "/getAllUtil.do")
- public String getAllUtil(HttpServletRequest request, Model model) {
- String field = request.getParameter("field");
- String fieldValue = request.getParameter("fieldValue");
- try {
- fieldValue = new String(fieldValue.getBytes("UTF-8"), "UTF-8");
- } catch (Exception e) {}
- String pageNo = request.getParameter("pageModel.currentPageNo");
- int currentPageNo = 1;
- try{
- currentPageNo = Integer.parseInt(pageNo);
- }catch(Exception e){
- }
- List
list = jieHuanshuMapper.getObjectList(field, fieldValue); - List
listJieHuanshu = new ArrayList(); - HttpSession session = request.getSession();
- int user_id = (Integer) session.getAttribute("user_id");
- String user_type = (String) session.getAttribute("user_type");
- for (JieHuanshu temp : list) {
- if (user_id == temp.getUser().getId()) {
- listJieHuanshu.add(temp);
- }
- }
- if (!"admin".equals(user_type)) {
- //list = listJieHuanshu;
- }
-
- PageModel pageModel = new PageModel();
- pageModel = pageModel.getUtilByController(list, currentPageNo);
- model.addAttribute("pageModel", pageModel);
- model.addAttribute("fieldValue", fieldValue);
- model.addAttribute("field", field);
- return "JieHuanshu/find";
- }
-
- @RequestMapping(value = "/deleteUtil.do")
- public String deleteUtil(HttpServletRequest request, JieHuanshu util, Model model) {
- try{
- jieHuanshuMapper.deleteObject(util.getId());
- }catch(Exception e){
- }
- return this.getAllUtil(request, model);
- }
-
- @RequestMapping(value = "/deleteManyUtil.do")
- public String deleteManyUtil(HttpServletRequest request, User util,
- Model model) {
- String ids[] = request.getParameterValues("id");
- for (String id : ids) {
- util = new User();
- util.setId(Integer.parseInt(id));
- try{
- jieHuanshuMapper.deleteObject(util.getId());
- }catch(Exception e){}
- }
- return this.getAllUtil(request, model);
- }
-
- @RequestMapping(value = "/saveOrUpdateObject.do")
- public String saveOrUpdateObject(HttpServletRequest request, JieHuanshu util, Model model) {
- List
list = jieHuanshuMapper.getObjectList("s_0", util.getS_0()); - List
listUser = userMapper.getObjectList(null, null); - model.addAttribute("listUser", listUser);
- List
listBookFile = bookFileMapper.getObjectList(null, null); - model.addAttribute("listBookFile", listBookFile);
- List
listYn = ynMapper.getObjectList(null, null); - model.addAttribute("listYn", listYn);
- if (0 == util.getId()) {
- if (list.size() > 0) {
- model.addAttribute("util", util);
- model.addAttribute("errMsg", "该信息已存在!");
- return "JieHuanshu/saveOrUpdate";
- }
- jieHuanshuMapper.insertObject(util);
- } else {
- if (list.size() > 1) {
- model.addAttribute("util", util);
- model.addAttribute("errMsg", "该信息已存在!");
- return "JieHuanshu/saveOrUpdate";
- }
- jieHuanshuMapper.updateObject(util);
- }
- return this.getAllUtil(request, model);
- }
- }
- package graduation.design.controller;
-
- import graduation.design.mapper.UserMapper;
- import graduation.design.model.User;
-
- import java.io.File;
- import java.io.IOException;
- import java.text.SimpleDateFormat;
- import java.util.Date;
- import java.util.List;
-
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpSession;
-
- import org.apache.tools.util.SysUtil;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Controller;
- import org.springframework.ui.Model;
- import org.springframework.web.bind.annotation.RequestMapping;
- import org.springframework.web.bind.annotation.RequestParam;
- import org.springframework.web.multipart.MultipartFile;
-
- import system.common.util.PageModel;
-
- @Controller
- @RequestMapping(value = "User")
- public class UserController {
- @Autowired
- private UserMapper userMapper;
-
- @RequestMapping(value = "/login.do")
- public String login(HttpServletRequest request, User util, Model model) {
-
- HttpSession session = request.getSession();
- String code = (String) session.getAttribute("code");
- String userCode = request.getParameter("code");
-
- if (!code.equals(userCode)) {
- model.addAttribute("errMsg", "验证码错误");
- return "../login";
- }
- User user = userMapper.getObjectByName(util);
- if (null == user) {
- model.addAttribute("errMsg", "登录失败");
- return "../login";
- }
- boolean flag = user.getS_1().equals(util.getS_1());
- if (!flag) {
- model.addAttribute("errMsg", "登录失败");
- return "../login";
- }
-
- if (flag && !SysUtil.getSysFlag()) {
- model.addAttribute("errMsg", "无法登陆,请联系管理员");
- return "../login";
- }
-
- session.setAttribute("user_id", user.getId());
- session.setAttribute("user_type", user.getS_11());
- session.setAttribute("type1", "admin");
- session.setAttribute("type2", "admin");
- session.setAttribute("name", user.getS_2());
- session.setAttribute("username", user.getS_0());
- return "../index";
- }
-
- @RequestMapping(value = "/updatepwd.do")
- public String updatepwd(HttpServletRequest request, User util, Model model) {
-
- HttpSession session = request.getSession();
- int user_id = (Integer) session.getAttribute("user_id");
- User userTmp = userMapper.selectObject(user_id);
-
- String oldPwd = util.getS_3();
- String newPwd = util.getS_4();
- String rePwd = util.getS_5();
- if (null == oldPwd || "".equals(oldPwd) || null == newPwd
- || "".equals(newPwd) || null == rePwd || "".equals(rePwd)) {
- model.addAttribute("errMsg", "密码信息不能为空");
- model.addAttribute("util", userTmp);
- return "User/updatepwd";
- }
-
- if (!newPwd.equals(rePwd)) {
- model.addAttribute("errMsg", "确认密码不一致");
- model.addAttribute("util", userTmp);
- return "User/updatepwd";
- }
-
- if (newPwd.equals(oldPwd)) {
- model.addAttribute("errMsg", "旧密码不能与新密码一致");
- model.addAttribute("util", userTmp);
- return "User/updatepwd";
- }
-
- if (!oldPwd.equals(userTmp.getS_1())) {
- model.addAttribute("errMsg", "旧密码错误");
- model.addAttribute("util", userTmp);
- return "User/updatepwd";
- }
- userTmp.setS_1(newPwd);
- userMapper.updateObject(userTmp);
- return "User/uppwdok";
- }
-
- @RequestMapping(value = "/updateinfo.do")
- public String updateinfo(HttpServletRequest request, User util, Model model) {
- userMapper.updateObject(util);
- model.addAttribute("util", util);
- model.addAttribute("errMsg", "个人信息修改成功");
- return "User/updateinfo";
- }
-
- @RequestMapping(value = "/beforepass.do")
- public String beforepass(HttpServletRequest request, User util, Model model) {
- HttpSession session = request.getSession();
- int user_id = (Integer) session.getAttribute("user_id");
- util = userMapper.selectObject(user_id);
- model.addAttribute("util", util);
- return "User/updatepwd";
- }
-
- @RequestMapping(value = "/beforeinfo.do")
- public String beforeinfo(HttpServletRequest request, User util, Model model) {
- HttpSession session = request.getSession();
- int user_id = (Integer) session.getAttribute("user_id");
- util = userMapper.selectObject(user_id);
- model.addAttribute("util", util);
- return "User/updateinfo";
- }
-
- @RequestMapping(value = "/register.do")
- public String register(HttpServletRequest request, User util, Model model) {
- HttpSession session = request.getSession();
- String code = (String) session.getAttribute("code");
- String userCode = request.getParameter("code");
- if (!code.equals(userCode)) {
- model.addAttribute("errMsg", "验证码错误");
- return "../register";
- }
- User user = userMapper.getObjectByName(util);
- if (null != user) {
- model.addAttribute("errMsg", "该用户名已经存在");
- return "../register";
- }
- userMapper.insertObject(util);
- model.addAttribute("registerMsg", "恭喜您,注册成功!");
- return "../login";
- }
-
- @RequestMapping(value = "/initUtil.do")
- public String initUtil(HttpServletRequest request, Model model) {
- return "User/saveOrUpdate";
- }
-
- @RequestMapping(value = "/selectUtil.do")
- public String selectUtil(HttpServletRequest request, User util, Model model) {
- util = userMapper.selectObject(util.getId());
- model.addAttribute("util", util);
- return "User/saveOrUpdate";
- }
-
- @SuppressWarnings({ "rawtypes", "unchecked" })
- @RequestMapping(value = "/getAllUtil.do")
- public String getAllUtil(HttpServletRequest request, User util, Model model) {
- String field = request.getParameter("field");
- String fieldValue = request.getParameter("fieldValue");
- String pageNo = request.getParameter("pageModel.currentPageNo");
- int currentPageNo = 1;
- try {
- fieldValue = new String(fieldValue.getBytes("UTF-8"), "UTF-8");
- currentPageNo = Integer.parseInt(pageNo);
- } catch (Exception e) {
- }
- List
list = userMapper.getObjectList(field, fieldValue); - PageModel pageModel = new PageModel();
- pageModel = pageModel.getUtilByController(list, currentPageNo);
- model.addAttribute("pageModel", pageModel);
- model.addAttribute("fieldValue", fieldValue);
- model.addAttribute("field", field);
- return "User/find";
- }
-
- @RequestMapping(value = "/deleteManyUtil.do")
- public String deleteManyUtil(HttpServletRequest request, User util,
- Model model) {
- String ids[] = request.getParameterValues("id");
- for (String id : ids) {
- util = new User();
- util.setId(Integer.parseInt(id));
- try {
- userMapper.deleteObject(util.getId());
- } catch (Exception e) {
- }
- }
- return this.getAllUtil(request, util, model);
- }
-
- @RequestMapping(value = "/deleteUtil.do")
- public String deleteUtil(HttpServletRequest request, User util, Model model) {
- try {
- userMapper.deleteObject(util.getId());
- } catch (Exception e) {
- }
- return this.getAllUtil(request, util, model);
- }
-
- @RequestMapping(value = "/saveOrUpdateObject.do")
- public String saveOrUpdateObject(HttpServletRequest request, User util,
- Model model) {
- List
list = userMapper.getObjectList("s_0", util.getS_0()); - if (0 == util.getId()) {
- if (list.size() > 0) {
- model.addAttribute("util", util);
- model.addAttribute("errMsg", "该信息已存在!");
- return "User/saveOrUpdate";
- }
- userMapper.insertObject(util);
- } else {
- if (list.size() > 1) {
- model.addAttribute("util", util);
- model.addAttribute("errMsg", "该信息已存在!");
- return "User/saveOrUpdate";
- }
- userMapper.updateObject(util);
- }
- return this.getAllUtil(request, util, model);
- }
-
- @RequestMapping(value = "/upload.do")
- public String upload(@RequestParam MultipartFile[] myfiles,
- HttpServletRequest request, User util, Model model)
- throws IOException {
- for (MultipartFile file : myfiles) {
- if (!file.isEmpty()) {
- String fileName = file.getOriginalFilename();
- String path = request.getSession().getServletContext()
- .getRealPath("image")
- + File.separator;
- String uploadName = new SimpleDateFormat("yyyyMMddHHmmss")
- .format(new Date()) + fileName;
- File localFile = new File(path + uploadName);
- file.transferTo(localFile);
- util.setS_0(uploadName);
- util.setS_1(fileName);
- util.setS_2(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")
- .format(new Date()));
- }
-
- if (0 == util.getId()) {
- userMapper.insertObject(util);
- } else {
- userMapper.updateObject(util);
- }
- return this.getAllUtil(request, util, model);
- }
-
- return this.getAllUtil(request, util, model);
- }
- }
如果也想学习本系统,下面领取。关注并回复:153ssm