使用spring boot 开发一个个人博客系统(管理系统)

写这篇文章的目的是为了交流与学习的,本人目前大四在读,本科阶段最后一门课程要求开发一个可以实际应用的软件,我和队友一致表示想开发一个个人博客系统,实际上在大一学习了web 前后端之后,我一直酝酿着想开发一个博客系统,用于写自己的博客(装逼)用,但是奈何学业繁忙,实在无暇开发这个娱乐项目,转而在CSDN博客上写作,现在有这么个机会,我准备好好的把握,高质量的完成课程的设计,同时开源代码,编写使用教程,方便有需要的人。

开源这个系统的初衷
  • 给需要的人提供帮助
  • 与大家一起交流,一起获得技术上的进步
  • 给我的github 和 csdn 博客增加点人气和访问量,方便找工作的时候可以写在简历上
  • 如果这个项目真的帮助了您,请您点赞,留言,或者给github 项目点个star ,鼓励我开源更多的项目,写更多的教程博客!谢谢啦~

如有问题,欢迎评论告知或者在 github 上面 发 issue。

开发环境设置

  • 开发语言:Java ,JDK 1.8 (后端) JavaScript 前端
  • 使用框架: Spring Boot 2.1.3 ,MyBatis ,Jquery,Themlef 模板引擎
  • 数据库: mysql 8.0
  • IDE: JetBrains Intelij IDEA 2019
  • 开发系统要求,Windows 和 Linux 均可,但是出于兼容性和方便性的考虑,强烈建议使用Linux 系统。
  • 部署系统环境: Tomcat9, Centos 7 ,MySql 8.0 .

需求说明

本项目是北京化工大学应用软件实践课程的项目,项目总周期为3周,包括写文档的时间。实际开发总时间为2周,因为时间仓0促,所以项目功能可能不太完善,但是可以满足一般的展示和学习需要,同时本项目注释清晰,代码整洁,是学习 Spring Boot 的良好学习资料,欢迎参考。

目前本项目完成的功能包括:博客文章的发布,删除,修改,展示。 专栏的新增,删除,修改,展示,作者个人简历的维护与修改等,其中文章的编写使用广受欢迎的 markdown 的语法。

界面展示

截图展示如下:

  • 首页:
    首页轮播文章展示,最新文章列表展示,分类专栏列表展示,推荐文章列表展示以及导航菜单使用spring boot 开发一个个人博客系统(管理系统)_第1张图片
  • 文章列表页面
    专栏文章列表页面,推荐文章列表页面,最新文章列表页均使用统一模板
    使用spring boot 开发一个个人博客系统(管理系统)_第2张图片
  • 专栏列表页面
    展示所有的专栏的列表
    使用spring boot 开发一个个人博客系统(管理系统)_第3张图片
  • 文章详情页面
    从后后台数据库中读取数据展示到前台界面
    使用spring boot 开发一个个人博客系统(管理系统)_第4张图片
  • 关于作者界面
    后台编辑出一篇简历文章,在个人信息管理界面设置简历文章的id,下面的内容可以通过修改简历文章来进行维护。使用spring boot 开发一个个人博客系统(管理系统)_第5张图片
  • 后台相关界面

    管理员登录界面
    使用spring boot 开发一个个人博客系统(管理系统)_第6张图片
    博主信息维护界面: 包括头像修改,基本信息维护,第三方账号信息维护
    使用spring boot 开发一个个人博客系统(管理系统)_第7张图片
    文章管理界面:
    使用spring boot 开发一个个人博客系统(管理系统)_第8张图片
    专栏管理界面
    使用spring boot 开发一个个人博客系统(管理系统)_第9张图片
    写文章界面:(像不像CSDN 啊)
    使用spring boot 开发一个个人博客系统(管理系统)_第10张图片
    轮播管理界面
    使用spring boot 开发一个个人博客系统(管理系统)_第11张图片
    留言管理界面
    使用spring boot 开发一个个人博客系统(管理系统)_第12张图片

项目部署

将项目clone 下来 : 项目地址
在maven 菜单中双击package ,如图所示
使用spring boot 开发一个个人博客系统(管理系统)_第13张图片
得到如下输出表示打包成功:

/usr/local/jdk8/bin/java -Dmaven.multiModuleProjectDirectory=/home/qianqianjun/CODE/Java/blog -Dmaven.home=/opt/idea2019/plugins/maven/lib/maven3 -Dclassworlds.conf=/opt/idea2019/plugins/maven/lib/maven3/bin/m2.conf -Dmaven.ext.class.path=/opt/idea2019/plugins/maven/lib/maven-event-listener.jar -javaagent:/opt/idea2019/lib/idea_rt.jar=34759:/opt/idea2019/bin -Dfile.encoding=UTF-8 -classpath /opt/idea2019/plugins/maven/lib/maven3/boot/plexus-classworlds-2.6.0.jar org.codehaus.classworlds.Launcher -Didea.version2019.2.3 package
[INFO] Scanning for projects...
[INFO] 
[INFO] ------------------------------< com:buct >------------------------------
[INFO] Building blog 0.0.1-SNAPSHOT
[INFO] --------------------------------[ war ]---------------------------------
[INFO] 
[INFO] --- maven-resources-plugin:3.1.0:resources (default-resources) @ buct ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 1 resource
[INFO] Copying 127 resources
[INFO] 
[INFO] --- maven-compiler-plugin:3.8.0:compile (default-compile) @ buct ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 31 source files to /home/qianqianjun/CODE/Java/blog/target/classes
[INFO] 
[INFO] --- maven-resources-plugin:3.1.0:testResources (default-testResources) @ buct ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory /home/qianqianjun/CODE/Java/blog/src/test/resources
[INFO] 
[INFO] --- maven-compiler-plugin:3.8.0:testCompile (default-testCompile) @ buct ---
[INFO] No sources to compile
[INFO] 
[INFO] --- maven-surefire-plugin:2.22.1:test (default-test) @ buct ---
[INFO] No tests to run.
[INFO] 
[INFO] --- maven-war-plugin:3.2.2:war (default-war) @ buct ---
[INFO] Packaging webapp
[INFO] Assembling webapp [buct] in [/home/qianqianjun/CODE/Java/blog/target/buct-0.0.1-SNAPSHOT]
[INFO] Processing war project
[INFO] Webapp assembled in [176 msecs]
[INFO] Building war: /home/qianqianjun/CODE/Java/blog/target/buct-0.0.1-SNAPSHOT.war
[INFO] 
[INFO] --- spring-boot-maven-plugin:2.1.3.RELEASE:repackage (repackage) @ buct ---
[INFO] Replacing main artifact with repackaged archive
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  7.300 s
[INFO] Finished at: 2020-01-07T11:19:31+08:00
[INFO] ------------------------------------------------------------------------

此时target 下面会生成一个 war 包,如图所示
使用spring boot 开发一个个人博客系统(管理系统)_第14张图片

将这个 war 包重命名为 ROOT.war 并上传到服务器 tomcat 目录的 webapps 目录下面即可自动解包加载。

使用终端执行如下命令:(或者使用windows 10 的 cmd,win7 用户可以下载xshell 或者 git 来进行操作)
使用spring boot 开发一个个人博客系统(管理系统)_第15张图片
安装配置数据库,新建一个 blog 的数据库,粘贴 readme 中的数据库结构 sql 语句,执行即可创建数据库的结构
在数据库 user 表中 添加一个 用户,填写用户名和密码用于登录后台系统。

至此,项目导入成功,其它内容就可以使用后台系统进行添加导入了。

你可能感兴趣的:(#,Java)