项目主题

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模块:

  • 作为项目的入口模块
  • 整合了其他所有模块
相关推荐
汪子熙8 分钟前
理解 git checkout 与 git reset 的联系和区别
后端
程序员爱钓鱼14 分钟前
Go 语言泛型 — 泛型语法与示例
后端·面试·go
coding and coffee20 分钟前
狂神说 - Mybatis 学习笔记 --下
java·后端·mybatis
程序员张34 小时前
SpringBoot计时一次请求耗时
java·spring boot·后端
程序员岳焱10 小时前
Java 与 MySQL 性能优化:Java 实现百万数据分批次插入的最佳实践
后端·mysql·性能优化
麦兜*11 小时前
Spring Boot启动优化7板斧(延迟初始化、组件扫描精准打击、JVM参数调优):砍掉70%启动时间的魔鬼实践
java·jvm·spring boot·后端·spring·spring cloud·系统架构
大只鹅11 小时前
解决 Spring Boot 对 Elasticsearch 字段没有小驼峰映射的问题
spring boot·后端·elasticsearch
ai小鬼头11 小时前
AIStarter如何快速部署Stable Diffusion?**新手也能轻松上手的AI绘图
前端·后端·github
IT_102412 小时前
Spring Boot项目开发实战销售管理系统——数据库设计!
java·开发语言·数据库·spring boot·后端·oracle
bobz96512 小时前
动态规划
后端