作者主页:夜未央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

运行截图
管理员

用户角色

代码相关

BookFileController

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 {@Autowiredprivate 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<BookFile> 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<BookFile> 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<BookFile> 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 {@Autowiredprivate 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<Gongao> 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<Gongao> 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 {@Autowiredprivate JieHuanshuMapper jieHuanshuMapper;@Autowiredprivate UserMapper userMapper;@Autowiredprivate BookFileMapper bookFileMapper;@Autowiredprivate YnMapper ynMapper;@RequestMapping(value = "/initUtil.do")public String initUtil(HttpServletRequest request, Model model) {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);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<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);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<JieHuanshu> list = jieHuanshuMapper.getObjectList(field, fieldValue);List<JieHuanshu> listJieHuanshu = new ArrayList<JieHuanshu>();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<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;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 {@Autowiredprivate 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<User> 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<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")+ 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

Java项目:SSM图书馆图书管理借阅书籍管理系统相关推荐

  1. 基于javaweb的图书馆图书管理借阅书籍管理系统(java+ssm+jsp+html+mysql)

    基于javaweb的图书馆图书管理借阅书籍管理系统(java+ssm+jsp+html+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/idea/ ...

  2. 基于ssm的图书(借阅)管理系统

    基于ssm的图书(借阅)管理系统 项目获取 文章结构 一.开发框架及业务方向 1.开发环境 2.开发框架 3.整体业务 二.项目结构及页面展示 项目获取 前往获取源码:码农源码 文章结构 一.开发框架 ...

  3. 程序逸的Java项目之旅-图书管理系统之数据库设计(1)

    程序逸的Java项目之旅-图书管理系统之环境的搭建 1.前言 上篇博客我们介绍了一下环境的搭建,我相信很多小伙伴这点应该问题不大,可能就是idea破解和mysql数据库和redis数据库的安装吧,我其 ...

  4. 基于java项目ssm二手书交易平台设计与实现(论文+程序设计源码+数据库文件)

    1 绪论 4 1.1 项目开发背景 4 1.2 项目开发意义 5 1.3 项目主要的内容 5 2 相关技术介绍及系统环境开发条件 6 2.1相关技术介绍 6 2.2系统环境开发条件 7 3 系统的需求 ...

  5. 程序逸的Java项目之旅-图书管理系统之数据库设计(2-完)

    紧接上篇博客>>>>>>程序逸的Java项目之旅-图书管理系统之数据库设计(1) 4.数据库表的创建 对于数据库表,我们可以通过cmd窗口进行创建,但那种方法有点麻 ...

  6. C语言图书管理借阅系统——ncurses库的使用

    一.前言 作为一只大四狗,最近还跟着大二同学修了一门课(当然不是之前没通过啦),课程是高级语言课程设计,高级语言指的是C语言 :),内容是做一个XX管理系统,我选择了图书管理系统,先介绍下我做的系统: ...

  7. 程序逸的Java项目之旅-图书管理系统之验证码和用户数据的后台获取(1)

    通过上篇博客>>>>>程序逸的Java项目之旅-图书管理系统之后端接口的快速实现,我们就可以快速搭建出基础的项目代码了,今天我们就先来实现一个验证码和后台获取管理员的账号 ...

  8. JAVA项目中的事务管理

    **JAVA项目中的事务管理 事务:保证一组对数据库操作动作的完整性(一致性, 安全性),也就是说:这一组动作要么都成功,要么都失败 1.JDBC对事务的支持 Java应用传统上使用JDBC(Java ...

  9. Java项目:SpringBoot图书管理系统

    作者主页:夜未央5788 简介:Java领域优质创作者.Java项目.学习资料.技术互助 文末获取源码 项目介绍 本系统分为管理员与普通用户两种角色: 管理员角色包含以下功能: 借书管理,图书信息管理 ...

最新文章

  1. ngnix服务器搭建
  2. 034_jQuery Ajax的getJSON和getScript方法
  3. 《数据结构》知识点Day_04
  4. .NET正则表达式使用高级技巧之替换类
  5. java 面向对象继承的思想_Java面向对象思想
  6. 团队管理中的每日站立会
  7. python添加自定义模块_Python中添加自定义模块的方法
  8. 【汇编语言与计算机系统结构笔记11】程序格式与伪操作:段定义、堆栈 #简洁笔记形式
  9. js 加密url java_js 对 URL 参数进行 加密 解密
  10. Swing 100行画图示例
  11. 微服务架构实战篇(四):Spring boot2.0 + Mybatis +Druid监控数据库访问性能
  12. ds—at1000s说明书_DS-1000操作手册.pdf
  13. H3CIERS+(H3C认证路由交换互联网专家介绍)
  14. [高通MSM8953_64][Android10]新增并挂载custom分区
  15. 《 iOS 应用逆向工程》作者沙梓社专访:运用逆向工程思维来优化自己的产品
  16. Google将IP标记为中国,影响表现以及解决方案
  17. [$injector:unpr] Unknown provider:--angular.module()函数解答
  18. 银行存管java 对接_Jay su-华正商务旅行社-4年中级java工程师-猿急送
  19. 沈阳网赛1003 HDU 5894 hannnnah_j’s Biological Test
  20. 首个室温超导体问世,为了发现它,科学家用废了几十颗钻石 | Nature封面

热门文章

  1. 如何优雅地给妹子优化电脑?
  2. 速学堂 JAVA 300集 第四章练习
  3. QT的中文显示乱码问题解决
  4. [FPGA系列] 扩展知识 --- QPSK调制解调器
  5. 极致视觉追求 六款热门高清屏笔记本推荐
  6. JQ QQ表情插件
  7. OpenCV二值化后 按面积选区域 填充孔洞 排序
  8. python爬虫小案例_从豆瓣爬取《哪吒之魔童降世》的剧照
  9. 常见咳嗽种类、治疗方法和忌食大全
  10. 【烂笔头】android 左上角三角形 右上角三角形