CMS管理系统

2020/12/25 09:37
阅读数 251

开发工具:IDEA
数据库:mysql
后端框架:ssm
前端框架:jquery,gridmanager插件,freemarker,bootstrap


前台分为轮播图显示,文章显示,图片显示,视频显示

后台分为轮播图管理,文章管理,图片管理,视频管理

用户的登陆注册注销,记住我功能

文章模块

通过数据库查询数据,封装成一个pagebean对象,因为gridmanager接收的数据格式,为total:data,

然后通过gridmanager插件进行显示,gridmanager发送请求会携带,当前页和每页数据条数,可以根据这个做出分页,当前页可以算出从第几条数据开始,然后根据limit分页

前台数据展示,有三个文章类型,所以根据文章类型查询,查询的三个list封装成一个map,回传给前台,前台通过遍历,展示数据

增加功能

通过静态页面化技术生成页面,每个页面就可以通过模板生成。这样的好处就是减少了数据库的压力,避免每次都访问数据库,以空间换时间

修改功能

通过判断是否有id来进行修改,修改创建新的页面,要删除以前的页面

删除功能

删除改条数据的静态页面

点击次数

前台传过来该页面的url,通过url查询该条数据,让点击数增加1

轮播图

里面有一个文件上传功能,

增加:判断是否有文件上传,获取输入流,创建输出流,通过IOutils长传

随机生成文件名

修改:判断是否有id,是否有文件上传,有,修改删除以前的文件,没有,修改文本内容

高级查询

通过动态sql实现

登陆

给输入框绑定失去焦点事件,通过ajax请求,前台传入用户名,在数据库查询是否有该用户,实时给前台反馈,密码也是一样。实时判断,如果有一个是错误的,不允许提交,我是通过给输入框设置隐藏域,通过后台传过来的数据,来给隐藏域设置值,如果有该用户,我给他设置true,没有,我设置false,最后点击登陆按钮时候,我判断是否两个都是true,才允许提交,否则我回显错误信息。登陆成功之后,往session域中存放该用户,保证这次会话都有效。

注销

清除session

记住我

整个判断,再登陆成功之后,前台设置的value值存在,创建cookie,往cookie中存入用户名,密码,然后设置跨域路径,生命周期,响应给前台,前台通过document获取cookie,判断是否有用户名,有就通过,截取所得一个数组,然后判断是否是用户名密码,截取用户名和密码,回显到表单

取消记住我,没有存在value值,获取cookie,判断是否存在username和password,有就设置生命周期为0,响应给前台取消记住我

总结:
了解了springmvc执行流程
附上本人丑陋画图
在这里插入图片描述


遇到的两个小问题:
1.在设计表的时候,多表对应问题,没有使用Lombok,在构造实体只设置了带参构造,没有设置无参构造,不是一个完整的javabean。
2.通过gridmanager传来的分页属性,直接通过继承查询,会空指针,因为没设置初始值

展开阅读全文
加载中
点击引领话题📣 发布并加入讨论🔥
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部