当学习完一种技术后,将所有知识点串联起来最好的方法就是以此为基础做一个完整的项目。最近心血来潮打算以SpringBoot为基础从零开始开发一款全栈的论坛博客网站。
# (一)前序 {#一-前序}
对本人来说开发这个项目最难的反而是前端的部分,作为一个以后端开发为主的程序员,前端知识只到基本了解的程度,因此我选择了BootStrap框架,他的好处在于官方提供了许多的组件、布局等,要用的时候只需要去官网找到自己需要的组件,然后修改即可,如果还是遇到不明白的属性百度查,程序员就要有永不言弃的探索精神。对于BootStrap如何使用,我尽量也会专门写一章博客来介绍,方便大家能看懂前端代码。最终的代码我会在做完整个项目后公开,毕竟现在是个开源的时代,大家互相学习。下面是BootStrap的官网:https://v3.bootcss.com/components/
# (二)使用工具 {#二-使用工具}
- 编程IDE:idea
- 后端:SpringBoot,MyBatis
- 前端:BootStrap,Thymeleaf
- 数据库:Mysql
- JDK版本:1.8
# (三)整体流程 {#三-整体流程}
整个项目主要包括用户管理模块,文章问题发布模块,首页展示模块,后台管理模块。如果进行过程中有其他想法了,会再做修改。
用户管理模块:在登陆和注册过程中加入Cookie和Session来保证用户不用多次输入登陆信息,整个流程图如下
文章问题发布模块:作为一个论坛,文章或者问题的发布是很重要的,文章问题发布模块的流程图如下:
首页展示模块:在这个模块中主要是文章和问题的展示以及个人信息的展示,如果后期有时间的话还能加上个性化推荐等功能。
用户管理模块主要是给整个论坛管理员使用,目前先做一个打算。
# (四)项目结构 {#四-项目结构}
项目的结构采用基本的SpringBoot项目结构:
- controller层用于控制转发
- entity层存放实体层代码
- service层用于业务处理
- mapper里是对数据库的操作
- static存放一些静态的资源,如css,js等
- templates存放html代码
# (五)关于时间 {#五-关于时间}
本人目前也比较忙,但是尽量在两个星期的时间内把第一版做出来,然后再花长时间去修改,如果到时候有什么问题欢迎大家留言讨论。