Java|Java 实战项目锤炼之网上图书馆管理系统的实现流程
一、项目简述
【Java|Java 实战项目锤炼之网上图书馆管理系统的实现流程】功能: 区分为管理员用户和普通用户,普通用户:用户登录,个 人信息修改,图书查询,用户借阅,用户归还,管理员用 户:图书馆里,归还管理,借阅信息查询,图书维护,分 类管理,读者管理等等功能。
二、项目运行
环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe (IntelliJ IDEA,Eclispe,MyEclispe,Sts 都支持)
项目技术: JSP + Servlert + html+ css + JavaScript + JQuery + Ajax等等。
文章图片
文章图片
文章图片
文章图片
用户登陆模块代码:
用户登陆模块: @Controllerpublic class LoginController { private LoginService loginService; @Autowiredpublic void setLoginService(LoginService loginService) {this.loginService = loginService; } @RequestMapping(value = https://www.it610.com/article/{"/", "/login.html"})public String toLogin(HttpServletRequest request) {request.getSession().invalidate(); return "index"; } @RequestMapping("/logout.html")public String logout(HttpServletRequest request) {request.getSession().invalidate(); return "redirect:/login.html"; } //负责处理loginCheck.html请求//请求参数会根据参数名称默认契约自动绑定到相应方法的入参中@RequestMapping(value = "https://www.it610.com/api/loginCheck", method = RequestMethod.POST)public @ResponseBodyObject loginCheck(HttpServletRequest request) {long id = Long.parseLong(request.getParameter("id")); String passwd = request.getParameter("passwd"); boolean isReader = loginService.hasMatchReader(id, passwd); boolean isAdmin = loginService.hasMatchAdmin(id, passwd); HashMap res = new HashMap<>(); if (isAdmin) {Admin admin = new Admin(); admin.setAdminId(id); admin.setPassword(passwd); String username = loginService.getAdminUsername(id); admin.setUsername(username); request.getSession().setAttribute("admin", admin); res.put("stateCode", "1"); res.put("msg", "管理员登陆成功!"); } else if (isReader) {ReaderCard readerCard = loginService.findReaderCardByReaderId(id); request.getSession().setAttribute("readercard", readerCard); res.put("stateCode", "2"); res.put("msg", "读者登陆成功!"); } else {res.put("stateCode", "0"); res.put("msg", "账号或密码错误!"); }return res; } @RequestMapping("/admin_main.html")public ModelAndView toAdminMain(HttpServletResponse response) {return new ModelAndView("admin_main"); } @RequestMapping("/reader_main.html")public ModelAndView toReaderMain(HttpServletResponse response) {return new ModelAndView("reader_main"); } @RequestMapping("/admin_repasswd.html")public ModelAndView reAdminPasswd() {return new ModelAndView("admin_repasswd"); } @RequestMapping("/admin_repasswd_do")public String reAdminPasswdDo(HttpServletRequest request, String oldPasswd, String newPasswd, String reNewPasswd, RedirectAttributes redirectAttributes) {Admin admin = (Admin) request.getSession().getAttribute("admin"); long id = admin.getAdminId(); String password = loginService.getAdminPassword(id); if (password.equals(oldPasswd)) {if (loginService.adminRePassword(id, newPasswd)) {redirectAttributes.addFlashAttribute("succ", "密码修改成功!"); return "redirect:/admin_repasswd.html"; } else {redirectAttributes.addFlashAttribute("error", "密码修改失败!"); return "redirect:/admin_repasswd.html"; }} else {redirectAttributes.addFlashAttribute("error", "旧密码错误!"); return "redirect:/admin_repasswd.html"; }} @RequestMapping("/reader_repasswd.html")public ModelAndView reReaderPasswd() {return new ModelAndView("reader_repasswd"); } @RequestMapping("/reader_repasswd_do")public String reReaderPasswdDo(HttpServletRequest request, String oldPasswd, String newPasswd, String reNewPasswd, RedirectAttributes redirectAttributes) {ReaderCard reader = (ReaderCard) request.getSession().getAttribute("readercard"); long id = reader.getReaderId(); String password = loginService.getReaderPassword(id); if (password.equals(oldPasswd)) {if (loginService.readerRePassword(id, newPasswd)) {redirectAttributes.addFlashAttribute("succ", "密码修改成功!"); return "redirect:/reader_repasswd.html"; } else {redirectAttributes.addFlashAttribute("error", "密码修改失败!"); return "redirect:/reader_repasswd.html"; }} else {redirectAttributes.addFlashAttribute("error", "旧密码错误!"); return "redirect:/reader_repasswd.html"; }} //配置404页面@RequestMapping("*")public String notFind() {return "404"; } }
静态资源和拦截器配置代码:
静态资源和拦截器配置: @Configuration@EnableWebMvc@ComponentScan("com.library.controller")public class WebConfig extends WebMvcConfigurerAdapter { @Beanpublic ViewResolver viewResolver() {InternalResourceViewResolver resolver = new InternalResourceViewResolver(); resolver.setSuffix(".jsp"); return resolver; } @Overridepublic void configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer) {configurer.enable(); } @Overridepublic void addResourceHandlers(ResourceHandlerRegistry registry) {registry.addResourceHandler("/img/**").addResourceLocations("/static/img/"); registry.addResourceHandler("/js/**").addResourceLocations("/static/js/"); registry.addResourceHandler("/css/**").addResourceLocations("/static/css/"); }}
以上就是Java 实战项目锤炼之网上图书馆管理系统的实现流程的详细内容,更多关于Java 图书馆管理系统的资料请关注脚本之家其它相关文章!
推荐阅读
- JAVA(抽象类与接口的区别&重载与重写&内存泄漏)
- 事件代理
- Java|Java OpenCV图像处理之SIFT角点检测详解
- java中如何实现重建二叉树
- 数组常用方法一
- 【Hadoop踩雷】Mac下安装Hadoop3以及Java版本问题
- Java|Java基础——数组
- 17|17 关山松 第二课作业#公众号项目# D20
- RxJava|RxJava 在Android项目中的使用(一)
- java之static、static|java之static、static final、final的区别与应用