这是一个基于Spring Boot开发的个人博客管理系统,具备完整的CRUD功能。该项目展示了我对Java Web开发核心技术的理解和实践能力,包括Spring Boot、MyBatis、Thymeleaf等主流框架的应用。
- Spring Boot - 核心框架,简化配置和部署
- MyBatis - 数据持久层框架,通过XML映射实现数据库操作
- MySQL - 关系型数据库,存储文章数据
- Lombok - 减少样板代码,提高开发效率
- Jakarta Validation - 数据校验,保证数据完整性
- Maven - 项目构建和依赖管理工具
- Thymeleaf - 服务端模板引擎,渲染动态页面
- HTML/CSS/JavaScript - 页面结构、样式和交互
- Font Awesome - 图标库,提升界面美观度
- MVC架构模式 - 分离关注点,提高代码可维护性
- 分层架构 - Controller、Service、DAO三层架构
- RESTful API设计风格 - 清晰的URL设计规范
-
文章管理:
- 创建文章 (ArticleController.createArticle)
- 查看文章列表 (ArticleController.list)
- 查看文章详情 (ArticleController.viewArticle)
- 编辑文章 (ArticleController.updateArticle)
- 删除文章 (ArticleController.deleteArticle)
-
数据验证:
- 使用
CreateArticleDTO和 Jakarta Validation 进行表单数据校验 - 前端友好的错误提示机制
- 使用
-
用户体验优化:
- 响应式设计,适配移动端
- 美观的UI界面设计
- Flash消息提示(成功/错误提示)
// Controller层采用函数式编程处理Optional结果
@GetMapping("/{id}")
public String viewArticle(@PathVariable("id") Long id, Model model) {
return articleService.getById(id)
.map(article -> {
model.addAttribute("article", article);
return "admin/article/detail";
})
.orElseGet(() -> {
model.addAttribute("msg", "文章不存在或已被删除");
return "admin/article/not_exists_error";
});
}- 严格按照分层架构组织代码,层次清晰
- 使用Lombok减少冗余代码,提高开发效率
- 统一的命名规范和代码风格
- 全局异常捕获和友好的错误页面展示
- 数据验证和业务逻辑异常处理分离
- 接口与实现分离(如 ArticleService 接口和 ArticleServiceImpl 实现)
- 易于替换和扩展各层组件
- 使用现代CSS特性实现响应式布局
- 丰富的交互效果和视觉反馈
- 用户认证和权限管理
- 文章分类和标签功能
- 评论系统
- 文件上传和图片管理
- 搜索功能
- 引入Spring Security实现安全控制
- 使用Redis缓存热点数据
- 前后端分离改造(Vue/React + REST API)
- 单元测试和集成测试覆盖
- 数据库查询优化(分页、索引等)
- 页面静态化处理
- CDN加速静态资源加载
- Docker容器化部署
- CI/CD流水线建设
- 监控和日志系统集成
- JDK 17+
- MySQL 8.0+
- Maven 3.6+
-
创建数据库:
CREATE DATABASE blog; -
创建用户并授权:
CREATE USER 'blog_user'@'localhost' IDENTIFIED BY 'Blog123!@#'; GRANT ALL PRIVILEGES ON blog.* TO 'blog_user'@'localhost';
-
初始化表结构(参考 ArticleMapper.xml 中的SQL语句)
mvn spring-boot:run本项目充分体现了我在Java Web开发方面的技术能力和工程实践经验。通过合理的架构设计和现代化的技术选型,实现了功能完整且具有良好用户体验的博客系统。未来将持续优化和完善,打造成一个生产级别的博客平台。




