项目主题

WeBlog项目结构分析

这是一个基于Spring Boot的博客系统项目,采用了模块化的架构设计。项目分为四个主要模块,每个模块有其特定的职责:

项目整体结构

  • weblog-springboot :项目根目录,包含了整体的Maven配置和模块管理
    • 使用Spring Boot 2.6.3版本
    • 采用Java 1.8版本
    • 统一管理了各个依赖的版本

核心模块

1. weblog-module-common(通用模块)

作为基础模块,被其他模块依赖,包含:

  • domain/dos :数据对象,如ArticleDO、UserDO等,对应数据库表结构
  • domain/mapper :MyBatis数据访问接口
  • aspect :AOP切面,用于日志记录等横切关注点
  • config :配置类,包括MyBatis-Plus、事件总线等配置
  • exception :全局异常处理
  • utils :工具类
  • Response/PageResponse :统一响应对象

2. weblog-module-admin(管理模块)

负责博客后台管理功能:

  • controller :管理接口控制器,如文章、分类、标签管理
  • service :业务逻辑层
  • dao :数据访问层
  • config :安全配置、Minio配置等
  • model/vo :视图对象模型

3. weblog-module-jwt(JWT认证模块)

处理用户认证和授权:

  • JwtTokenHelper :JWT令牌生成和验证
  • 认证过滤器 :登录认证、Token验证
  • 处理器 :认证成功/失败处理

4. weblog-web(入口模块)

作为应用程序入口,整合其他模块:

  • WeblogWebApplication :应用程序启动类
  • controller :前台展示接口
  • service :前台业务逻辑
  • config :跨域配置等
  • resources :配置文件
    • application.yaml:主配置文件
    • application-dev.yaml:开发环境配置
    • application-prod.yaml:生产环境配置

技术栈

  • Spring Boot :应用框架
  • Spring Security :安全框架
  • MyBatis-Plus :ORM框架
  • JWT :用户认证
  • Minio :对象存储(图片上传)
  • MySQL :数据库
  • Lombok :简化代码

1. weblog-module-common模块:

  • 这是基础模块,包含了Response和PageResponse等基础响应类
  • 包含了aspect、config、constant等通用配置和工具类

创建Spring Boot的多模块项目

如何创建SpringBoot多模块_springboot多模块项目搭建-CSDN博客

项目目录如下:

2. weblog-module-jwt模块:

  • 负责用户认证相关功能
  • 集成了Spring Security和JWT实现安全认证

3. weblog-module-admin模块(核心业务模块):

  • controller层:如AdminArticleController,实现文章的发布、修改、查询等接口
  • service层:如AdminArticleService,包含了核心业务逻辑
  • 包含了文章管理、分类管理等主要功能

4. weblog-web模块:

  • 作为项目的入口模块
  • 整合了其他所有模块
相关推荐
洗澡水加冰27 分钟前
n8n搭建多阶段交互式工作流
后端·llm
陈随易29 分钟前
Univer v0.8.0 发布,开源免费版 Google Sheets
前端·后端·程序员
六月的雨在掘金34 分钟前
通义灵码 2.5 | 一个更懂开发者的 AI 编程助手
后端
朱龙凯1 小时前
MySQL那些事
后端
Re2751 小时前
剖析 MyBatis 延迟加载底层原理(1)
后端·面试
Victor3561 小时前
MySQL(63)如何进行数据库读写分离?
后端
Cache技术分享1 小时前
99. Java 继承(Inheritance)
前端·后端
M1A11 小时前
Python数据结构操作:全面解析与实践
后端·python
程序员蜗牛1 小时前
Controller层代码瘦身70%!5招打通任督二脉,效率飙升
后端
程序员岳焱1 小时前
Java高级反射实战:15个场景化编程技巧与底层原理解析
java·后端·编程语言