项目简介
GitEasy博客系统是基于Spring Boot框架开发的博客平台,采用前后端分离架构。前端运用Thymeleaf模板引擎,后端基于Spring Boot和Spring Data JPA开发。同时集成了Elasticsearch用于博客搜索和热门推荐,使用七牛云进行图片存储,具备丰富功能与友好界面。
项目的主要特性和功能
- 用户管理:支持用户注册、登录、修改密码和个人信息。
- 博客管理:可进行博客的创建、编辑、删除、查看、点赞及评论操作。
- 评论管理:能对博客文章进行评论与回复。
- 点赞管理:支持对博客文章点赞和取消点赞。
- 分类管理:可创建、编辑和删除博客分类。
- 标签管理:能为博客文章添加和删除标签。
- 搜索功能:可根据关键词搜索博客文章和标签。
- 热门推荐:依据博客的点击量、评论量等推荐热门博客。
- 权限管理:通过Spring Security实现用户权限控制,保障数据安全。
安装使用步骤
环境准备
确保已安装Java和Maven,并完成开发环境配置。
下载项目
用户已下载本项目的源码文件。
修改配置
- 打开配置文件
application.properties
,可根据需求修改数据库等配置。开发阶段若设置数据源则使用对应数据库,默认启用H2内存数据库且可通过http://localhost:8080/h2-console
访问控制台。 - 将MySQL数据源配置为自己的数据源。
- 开发阶段可保留
spring.jpa.hibernate.ddl-auto=create-drop
配置,生产环境需注释,此配置开启时每次重启会加载data.sql
数据到数据库。 - 配置ES数据源和七牛云存储,七牛云使用可参考官方文档。
数据库初始化
新建blog
数据库,并导入项目根目录下的blog.sql
文件。
ElasticSearch初始化
- 启动
elasticsearch-6.1.1
。 - 使用head插件创建索引,索引名称为
blog
。 - 创建mapping,使用项目根目录下的
mapping.json
文件,创建mapping的URL为http://localhost:9200/blog/_mapping/blog
。
运行项目
运行cn.giteasy.blog.Application
类中的main
方法启动项目。
访问测试
访问http://localhost:8080
,使用预置管理员账号admin|123456
或博主账号xin|123456
登录。
注意事项
- 开发阶段开启
spring.jpa.hibernate.ddl-auto=create-drop
配置会自动根据POJO类重建数据表,生产环境需注释该配置。 - 若报
java.lang.IllegalArgumentException: Fielddata is disabled on text fields by default. Set fielddata=true on [tags] in order to load fielddata in memory
异常,需在Elasticsearch中设置tags
字段和username
字段的fielddata
为true
。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】