——————————DescriptionStart——————————
运行环境
Java≥8、MySQL≥5.7、Tomcat≥8
开发工具
eclipse/idea/myeclipse/sts等均可配置运行
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明






基于javaweb的SSM图书馆图书管理借阅书籍管理系统(java+ssm+jsp+mysql)
项目介绍
管理员角色包含以下功能: 管理员登录,修改个人资料,读者管理,图书管理,借还书管理,公告管理等功能。
用户角色包含以下功能: 用户登录与注册,修改个人资料,修改密码,查询图书,借还书管理,公告查询等功能。
环境需要
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版本;
技术栈
- 后端:Spring+SpringMVC+Mybatis 2. 前端:HTML+CSS+JavaScript+jsp
使用说明
- 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件; 2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行; 3. 将项目中application.yml配置文件中的数据库配置改为自己的配置; 4. 运行项目,输入localhost:8080/ 登录
——————————CodeStart——————————
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
| @SuppressWarnings("serial") public class ImageServlet extends HttpServlet { protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("image/jpeg"); int w = 85; int h = 20; java.util.Random random = new java.util.Random(); BufferedImage img = new BufferedImage(w, h, BufferedImage.TYPE_INT_RGB); Graphics pen = img.getGraphics(); pen.setColor(Color.WHITE); pen.fillRect(0, 0, w, h); for (int i = 0; i < 50; i++) { pen.setColor(new Color(random.nextInt(255), random.nextInt(255), random.nextInt(255))); int x1 = random.nextInt(w); int y1 = random.nextInt(h); int x2 = random.nextInt(10) + x1; int y2 = random.nextInt(10) + y1; pen.drawLine(x1, y1, x2, y2); } StringBuffer sb = new StringBuffer(); pen.setFont(new Font("黑体", Font.BOLD, 16)); for (int i = 0; i < 4; i++) { pen.setColor(new Color(random.nextInt(100), random.nextInt(100), random.nextInt(100))); String num = String.valueOf(random.nextInt(10)); pen.drawString(num, i * 20 + 10, 15); sb.append(num); } request.getSession().setAttribute("code", sb.toString()); response.setHeader("Pragma", "no-store"); response.setDateHeader("Expires", 0); response.setHeader("Pragma", "no-cache"); ImageIO.write(img, "jpeg", response.getOutputStream()); } } package com.baidu.ueditor.upload;
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
| 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;
@Controller @RequestMapping(value = "JieHuanshu") public class JieHuanshuController { @Autowired private JieHuanshuMapper jieHuanshuMapper; @Autowired private UserMapper userMapper; @Autowired
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
| 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"; }
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
| 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<User> 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")
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
| public String saveOrUpdateObject(HttpServletRequest request, JieHuanshu util, Model model) { List<JieHuanshu> list = jieHuanshuMapper.getObjectList("s_0", util.getS_0()); List<User> listUser = userMapper.getObjectList(null, null); model.addAttribute("listUser", listUser); List<BookFile> listBookFile = bookFileMapper.getObjectList(null, null); model.addAttribute("listBookFile", listBookFile); List<Yn> 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;
@Controller @RequestMapping(value = "Gongao") public class GongaoController { @Autowired private GongaoMapper gongaoMapper;
|
——————————PayStart——————————
项目链接:
https://javayms.github.io?id=241122522008200ok
https://javayms.pages.dev?id=241122522008200ok