1、项目背景

在学习完ssm相关知识后,有了基础能力就想通过完成一个javaweb项目来巩固自己所学知识以及在具体开发过程中找出自己的不足因此便完成了书评网信息系统。

2、项目功能

手机端网站

首页

 书籍详情页

 评论区

 登陆界面

后台管理登陆界面

 书籍管理

短评管理

3、项目使用技术

开发平台: java 、idea、maven
技术栈:spring、springMvc、Mybatis、MyBatis-Plus、FreeMaker、BootStrap、LayUI

4、 主要技术点

SSM整合配置 

Mybatis-Plus配置与应用
Boostrap UI框架入门

Kaptcha验证码组件使用

package com.imooc.reader.controller;import com.google.code.kaptcha.Producer;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;import javax.annotation.Resource;
import javax.imageio.ImageIO;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.awt.image.BufferedImage;
import java.io.IOException;// 验证码
@Controller
public class KaptchaController {@Resourceprivate Producer kaptchaProducer;@GetMapping("/verify_code")public void createVerifyCode(HttpServletRequest request , HttpServletResponse response) throws IOException {//响应立即过期response.setDateHeader("Expires",0);//不缓存任何图片数据response.setHeader("Cache-Control" , "no-store,no-cache,must-revalidate");response.setHeader("Cache-Control" , "post-check=0,pre-check=0");response.setHeader("Pragma" , "no-cache");response.setContentType("image/png");//生成验证码字符文本String verifyCode = kaptchaProducer.createText();request.getSession().setAttribute("kaptchaVerifyCode",verifyCode);BufferedImage image = kaptchaProducer.createImage(verifyCode);//创建验证码图片ServletOutputStream out = response.getOutputStream();ImageIO.write(image, "png", out);//输出图片流out.flush(); //立即输出out.close(); // 关闭流}}

Spring Task任务调度

package com.imooc.reader.task;import com.imooc.reader.service.BookService;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;import javax.annotation.Resource;/*** 完成自动计算任务*/
@Component
public class ComputeTask {@Resourceprivate BookService bookService;//任务调度  cson表达式@Scheduled(cron = "0 * * * * ?")public void updateEvaluation(){bookService.updateEvaluation();System.out.println("已更新所有图书评分");}
}

拦截器的使用

package com.imooc.reader.interceptor;import com.imooc.reader.enity.Member;
import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.ModelAndView;import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;// 拦截后台管理系统页面,必须进行登陆
public class LoginInterceptor implements HandlerInterceptor {//方法执行之前拦截@Overridepublic boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {HttpSession session = request.getSession();Member member = (Member) session.getAttribute("loginManagementMember");//true 放行 false拦截if(member!=null){return true;}//如果没有登录成功,或者没有先进入拦截页面进行登录,将跳转到拦截页面response.sendRedirect("/management/login.html");return false;}//方法接收请求之后,解析视图之前拦截@Overridepublic void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {}//方法执行完毕,视图渲染结束之后执行@Overridepublic void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {}
}

5、项目难点

管理模块的分页管理

会员阅读状态变更

验证会员登陆状态

图片上传

6、存在缺陷

后台没写对应的用户管理

点赞可以无限点,没有限制次数

其他的欢迎补充。。。

7、项目源码
由于篇幅问题此处不适宜放置所有源码如有需要请从下方链接获取(包括数据库的创建以及初始化)

书评网信息系统: 在学习完SSM相关知识后,有了基础能力就想通过完成一个java项目来巩固自己所学知识以及在具体开发过程中找出自己的不足,,因此便完成了书评网信息管理系统。https://gitee.com/yang-haibo1111/reader

Java项目--书评网信息系统相关推荐

  1. java项目交友网如何实现,基于jsp的交友网站-JavaEE实现交友网站 - java项目源码

    基于jsp+servlet+pojo+mysql实现一个javaee/javaweb的交友网站, 该项目可用各类java课程设计大作业中, 交友网站的系统架构分为前后台两部分, 最终实现在线上进行交友 ...

  2. java项目校内网的描述_[导入]校内网的错误信息

    本人在发表日志时的错误信息.... 刚开始说是有非法字符,点击多了,就直接给我错误信息了!汗! 500 Servlet Exception java.lang.NoClassDefFoundError ...

  3. Java项目-大学生兼职信息系统(附源码+论文)

    大家好!我是职场程序猿,感谢您阅读本文,欢迎一键三连哦.

  4. Java牛客网社区项目——知识点面试题

    Java牛客网社区项目--知识点&面试题 持续更新中(ง •̀_•́)ง 文章目录 Java牛客网社区项目--知识点&面试题 请简要介绍一下你的项目? 什么是Spring框架? 对Sp ...

  5. Java高级-云课堂后端项目实战 网易云课堂

    Java高级-云课堂后端项目实战 网易云课堂 课程概述 <Java高级开发工程师>课程包含六大专题,分别是高性能编程专题.中间件专题.容器化技术专题.分布式系统开发技术.后端项目实战及网易 ...

  6. JAVA毕设项目众筹网(Vue+Mybatis+Maven+Mysql+sprnig+SpringMVC)

    JAVA毕设项目众筹网(Vue+Mybatis+Maven+Mysql+sprnig+SpringMVC) 项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuild ...

  7. SSM开发书评网9:项目准备与SSM整合七:项目分析与数据库建表;

    说明: (1)本篇博客主要目的:根据项目情况,在分析后,创建数据表: (2)本篇博客介绍的内容虽然不难,但是[当一个新项目过来的时候,要想独立完成本篇的内容,虽然能够完成,但完成质量估计够呛]:所以, ...

  8. ssm毕设项目病房管理信息系统o45h4(java+VUE+Mybatis+Maven+Mysql+sprnig)

    ssm毕设项目病房管理信息系统o45h4(java+VUE+Mybatis+Maven+Mysql+sprnig) 项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HB ...

  9. java项目-第55期基于ssm项目爱人旅行网

    java项目-第55期基于ssm项目爱人旅行网 1.项目简述 该项目是一款针对旅行社开发的旅游管理系统,该系统包含前台和后台两部分. 前台主要向客户展示酒店预订.旅游线路.景点预订 后台主要是相关的维 ...

最新文章

  1. jQuery的Growl插件
  2. ArcMap中的名称冲突问题
  3. LeetCode 1286. 字母组合迭代器(回溯/位运算)
  4. 高,低电平复位电路原理及加电容的作用
  5. Facebook 开源 M2M-100,不依赖英语互译百种语言
  6. 为什么学前端不先学框架?
  7. I/O重定向的原理和实现
  8. 怎么设置ep4ce6e22b8n引脚_引脚输出的隐藏BUG
  9. 苹果:我们从未向中国政府透露源代码
  10. mysql绘制er图教程_使用MySQLWorkBench绘制ER图
  11. word文档可以压缩大小吗,详细压缩步骤
  12. MATLAB中minDiff,findpeaks,diff, intersect等函数详解
  13. 华为运营商级路由器配置示例 | 配置OptionB方式跨域BGP VPLS示例(ASBR兼做PE)
  14. lenet5跑cifar_基于PaddlePaddle2.0-构建卷积网络模型LeNet-5
  15. 电路结构原理_零基础学电工之常用电气符号和举例认识电路图
  16. 1.Java基础_Java入门--001
  17. java 监听jtextfield_java JTextField之监听器
  18. 教你用故事打造个人ip人设
  19. 自动安装Windows2000系统
  20. 【深度学习】入门理解ResNet和他的小姨子们(一)---ResNet

热门文章

  1. 【论文解析】Run, Don’t Walk: Chasing Higher FLOPS for Faster Neural Networks
  2. 梦幻春晚服务器找不到,《梦幻西游2》春晚即将开启 网易CC全程直播
  3. SpringBoot入门Hello Wrod
  4. 三星安卓5.0设备WifiCredService 远程代码执行
  5. 【推荐系统】YoutubeDNN召回
  6. [转]Unity3D 唤醒微信 打开微信(非微信登录、微信分享)
  7. 【k8s错误解决系列】kubelet报错too many open files
  8. 用mkisofs制作iso文件
  9. spark版本bug总结
  10. URi和URL和URN之间的关系?