SpringBoot+Vue前后端分离项目实战:个人博客系统

myblog

基于 SpringBoot + Vue 前后端分离开发的一款动态个人博客系统。

项目开源地址:Github | Gitee

项目预览地址:MyBlog

前言

学习Java也有一段时间,期间更多的是理论的学习和一些Demo代码编写,知识还比较分散、浅薄,所以做了这么一个实战项目,把已学的知识应用到实践中,通过从零实现一个完整项目,建立一个Java Web应用开发的基本认知,同时也能更加深入的理解各个技术的细节。除此之外,也是为了锻炼自己的编码能力和遇到问题的解决能力。

这是笔者在学习Java Web过程中写的第一个较为完整的练手项目,在各方面可能都还很稚嫩,欢迎大家多多指教。如果本项目对您有帮助,点个赞鼓励一下就是对我的最好支持,谢谢。

项目简介

MyBlog主要是基于 SpringBoot + Vue 前后端分离开发的一款动态个人博客系统,后台和前台均通过JSON数据做交互,主要功能有文章管理、分类管理、标签管理、附件管理、评论管理、友链管理、个人资料/博客信息管理等。

使用到的一些规范或实现:

  • 统一请求响应
  • 统一异常处理
  • Java Bean Validation参数校验
  • 面向AOP编程:通过自定义注解实现接口限流、操作日志记录等
  • ……

技术栈

开发环境

  • 工具:IntelliJ IDEA
  • JDK 1.8
  • 数据库:MySQL 8.0.15
  • 项目构建:后端Maven、前端 Webpack

后端

  • Web框架:Spring Boot
  • 安全框架:Spring Security
  • 字段校验:Spring Validation
  • 持久层:MyBatis-Plus
  • 接口文档:Swagger2
  • Lombok:请确保您的 IDE 安装了此插件
  • 使用简单的自定义缓存,可更换成 Redis
  • 其他:Thumbnailatorwordfilter、等等

前端

项目结构

.|--src.main.java
    |---xyz.snwjas.blog //源码
        |---annotation //注解
        |---aspect //aop切入点
        |---config //配置
        |---constant //常量
        |---controller //控制器
        |	|---admin //后台控制器
        |	|---app //前台控制器
        |---exception //自定义异常
        |---handler //处理器
        |---interceptor //拦截器
        |---mapper //MyBatis mapper接口
        |	|---xml //MyBatis mapper xml 文件
        |---model //模型
        |	|---base //基本接口/类
        |	|---entity //实体类
        |	|---enums //枚举常量
        |	|---params //查询参数
        |	|---vo //视图对象
        |---schedule //定时任务
        |---service //业务接口
        |	|---impl //业务接口实现类
        |---support //其他的一些支持类
        |	|---cache //自定义缓存
        |	|---security //Spring Security 认证逻辑
        |	|---wordfilter //敏感词过滤器
        |---utils //工具包
    |---resources //资源
        |---admin //后台web资源
        |---app //前台web资源
        |---static //静态资源
        |---wordfilter //敏感词文件

效果图

具体效果请至:项目预览地址

MyBlog

总结

虽然项目不大,但从零到完成也花费了一些精力,总的来说是学到了很多东西。做项目的过程中,更多时候是边学边做的,频繁地试错,翻阅技术文档,慢慢疏通了知识脉络,更深入地了解到技术。而且会遇到各种问题,有时候网上找不到答案,往往需要从问题源头深入源码慢慢找,这个过程中也培养了阅读源码的习惯,提高了自己解决问题的能力。

独立完成了一个项目,技术上的提升不可忽视,但我觉得更重要的是带给自己技术自信心,让虽然目前技术力还是相形见绌,但这种微不足道的成就感正是我持续学习、不断进步的原动力。

共勉!!!

评论 29
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值