/dou-blog_BackEnd

博客系统,暨设计模式课设。Spring Boot 后端

Primary LanguageJava

dou-blog_Backend

Introduction

博客系统后端,使用spring boot框架。

前端见dou-blog_FrontEnd

Requirement Analysis

  • 用户
    • 登录
      • 登录成功后,在一段时间内,用户无须重复登录
      • 退出登录后,下次需重新登录
    • 注册
      • 创建用户名、密码
      • 密码加密传输并保存
      • 邮箱验证
    • 用户修改自己信息
    • 管理员可以删除用户
    • 分类:管理员与普通用户
  • 文章
    • 管理员才能发布文章
    • 管理员可以删除文章
    • 管理员才能更新文章
    • 不论用户是否登录,都可以浏览文章
  • 评论
    • 用户登录后,可以评论文章
    • 管理员可以删除评论
    • 文章下的评论懒加载
  • 分类
    • 管理员可以添加分类
    • 分类具有树级关系
    • 管理员可以设置文章的分类
    • 用户可以根据分类筛选文章

Usage

Add Configuration File

由于配置文件中保存了数据库账号和密码,未用git跟踪,需要自己新建。

src/main/resources目录下,新建配置文件application.properties。内容大致如下:

# Mysql
spring.datasource.url = jdbc:mysql://<数据库地址>:3306/<数据库名>?characterEncoding=UTF-8&serverTimezone=UTC
spring.datasource.username = <用户名>
spring.datasource.password = <密码>
spring.datasource.driver-class-username = com.mysql.jdbc.Driver

# Swagger
swagger.title = <Swagger页面标题>

# Http
spring.http.encoding.charset = UTF-8
spring.http.encoding.enabled = true
spring.http.encoding.force = true

# Built in web server --- Tomcat
server.tomcat.uri-encoding = UTF-8

Run

在命令行中直接运行:

mvn spring-boot:run

在命令行中编译:

mvn install

生成dou-blog-0.0.1-SNAPSHOT.jartarget/目录下,运行.jar包:

cd target
java -jar dou-blog-0.0.1-SNAPSHOT.jar

以上操作可在IDEA中进行。

Format

Git Commit

git commit -m "type: description"
  • type:
    • feat:新功能(feature)
    • fix:修补bug
    • docs:文档(documentation)
    • style:格式(不影响代码运行的变动)
    • refactor:重构(即不是新增功能,也不是修改bug的代码变动)
    • test:增加测试
    • chore:构建过程或辅助工具的变动
  • description: 详细描述

Http Response

采用json格式,json中具体内容如下:

字段名 类型 含义 可否为空
code 整型 状态码,具体要求见状态码表 不可为空
msg 字符串 请求响应的相关信息 不可为空
data json化的字符串 响应的数据 可为空

code字段对应的状态码:

状态码 含义
0 成功(如查询到该用户,成功)
1 出现错误(如插入用户信息时报错)
2 失败(如未找到该用户,失败)

示例:

{
  "code": 0,
  "msg": "success",
  "data": "{username:aaa}"
}