开发环境:jdk1.8 tomcat8.0 mysql5.7 前端Layui
大致结果图片:
说明:1,登录用户分为3种,1 管理员,2 普通用户,3 冻结用户(管理员在管理界面设置用户权限,冻结用户不能评论)。
管理员可进入管理界面,对整个博客进行管理(后面详细说明)
普通用户可以浏览,评论,留言。
用户权限通过数据库gg_user表中的 user_rights设置,通过过滤器filter进行拦截。
2,验证码通过后台动态生成,不区分大小写,验证码,用户名,密码同时正确,才能完成登录。
点击验证码,可以动态切换验证码。
说明:注册采用邮箱验证激活的方式,主要实现是 验证gg_user表中的user_action。当递交注册表单的时,服务器会发送一封邮件到用户填写的指定邮箱,当用户点击激活链接的时候user_action的值设置为1 这样才能完成注册,否则注册的用户无效。
说明:1,页面内容 是查询数据库内容然后循环输出的
2,点击展开 查询数据库此条微语的评论并且循环显示,评论后点击确定,提交评论并写入数据库。
3,有统计 此条微语 总被评论数和点赞数。
4,没有登陆的用户无法评论,被冻结用户无法评论(主要是检测session中的user_name和user_right)
5,微语的图片是可以在后台上传的,图片存在服务器,地址存在数据库。
说明:微语管理分写微语,微语管理,评论管理。
写微语,图片和文章内容在同一个form表单同时提交,在后台先做识别处理,识别出的图片存到服务器,图片地址存到数据库,识别出文字,直接存到数据库。支持一张图片上传。点击上传,上传。
后面我会详细说明我的 博客是怎么实现的:::嘻嘻
1,总目录结构
AboutDao.java :对用户信息的操作
有三个内置方法
1,public GgUser getUserInfo(String userName)
用于关于界面的用户数据查询显示
2,public GgUser updateUserInfo(GgUser user)
管理员界面修改用户数据
3,public ArrayList getUsers()
管理员界面显示全部用户信息
ActiveDao :管理用户权限
1,public boolean addUser(GgUser user)
邮箱激活时 修改user_right==2
2,public boolean forbiden(int userid)
管理员界面 冻结用户时调用
LeacotDao :留言管理
1,public boolean addLeacot(Ggcom com)
添加留言
2,public boolean delete(int id)
管理员删除留言
LeaShowDao :数据库查询留言
public ArrayList getcomInfo()
LoginDao :登录检测
public int check(String userName,String userPassword)
WisComShowDao :微语评论 查询展示
public ArrayList getcomInfo(int noteId)
WisDelDao :管理员界面 微语删除 微语评论删除
public boolean delCom(int id)
public boolean del(int id)
wisShowDao :微语查询展示
public ArrayList getcomInfo()
WisUploadDao:添加微语,添加微语评论
public boolean addwis(GgNote note)
public boolean addcom(GgNoteCom com)
AboutUpServlet :管理员界面 更新用户信息
ActiveServlet :处理邮箱点击的激活码get请求,激活用户
LeacotsServlet :留言post
LeaDelServlet :管理员界面 删除留言
LoginFilter :用户权限管理
LoginServlet :登录
PicUpServlet :管理员界面 上传微语,接受post表单包含文字和图片
RegServlet :注册时接受post表单并发送邮件
UserForbidenServlet :管理员界面 冻结用户
ValidationCodeServlet :登录验证码生成
WhiComServlet :微语评论
WhiDelComServlet :管理员界面 删除微语评论
WhiDelServlet :管理员界面 删除微语
Auth :发送邮件的工具
DbUtil :与数据库建立连接的代码,在Dao层调用
SendMail :发送邮件的工具
Upload :在微语上传时使用,微语上传时是图片和文字一起上传,不能直接使用getParameter方法,所以 先调用此方法 分离出图片和文字递交 Dao层处理
images :保存微语中上传的图片。
Page :管理员界面的 jsp页面。
Layer,res :引用的前端框架。
数据库说明:
gg_user:用户信息管理表
gg_note:微语管理表
gg_note_com:微语评论管理表
**
**
https://github.com/yanbayi/MyBlog
后续,我会不定期上传 我的gugu博客详细代码到CSDN,供大家一起学习,还有解决大家的问题,有问题请留言呦
这是不完全的 功能展示。