# xy-blog-service **Repository Path**: firelife_it/xy-blog-service ## Basic Information - **Project Name**: xy-blog-service - **Description**: 博客主页 - **Primary Language**: Java - **License**: GPL-3.0 - **Default Branch**: master - **Homepage**: http://www.xyblog.vip/ - **GVP Project**: No ## Statistics - **Stars**: 9 - **Forks**: 1 - **Created**: 2019-11-07 - **Last Updated**: 2025-08-21 ## Categories & Tags **Categories**: blog **Tags**: None ## README ![logo](https://firelife-it-images.oss-cn-hangzhou.aliyuncs.com/logo/firelife-heng.png) 后端
# XYBLOG ## 用户模块 **xy-blog-user** ### 属性字典 - 默认属性 - 邮箱 - 姓名 - 签名 - 手机号 - 昵称 - 个性LOGO - 访问量 - 点赞量 - 评论总数 ### 用户模版 - 访客模版 - 博主模版 - 管理员模版 ### 个人信息管理 ### 个人文章分类管理维护功能 ### 管理员对博主的管理 ### 用户注册 ## 文章模块 **xy-blog-article-platform** ### 文章管理 - 查询 - 发布 - 原创 - 转载 - 翻译 - 修改 - 删除 - 导入 - 富文本 - markdown - 导出 - PDF - Word - Markdown - 是否允许评论 ### 文章属性 - 标题 - 内容 - 类型 ### 文章分类 - 计算机 - 。。。 ### 回收站 - 手动永久删除 - 恢复 - 定时30天删除 ### RSS订阅 - 用户通过浏览器的RSS订阅功能,订阅本博客最新动态 ## 日志模块 **xy-blog-log** ### 用户日志 ### 系统日志 ## 评论模块 ### 文章评论 ### 开发者工具评论 ### 赞踩功能 ## 博客管理模块(管理员)TODO **xy-blog-management** ### 配置管理 - OSS地址配置 - RDS配置 ### 网站在线人数统计 ## 权限模块 **xy-blog-security** ### 用户登陆校验 ### 接口权限控制 ## 开发者工具模块 **xy-blog-developer-tools** ### 上传和下载日常开发工具 ### 检索 #======================================= # RESTFUL 规范 - GET:查询操作: ``` 分页:HTTP GET /devices?startIndex=0&size=20 HTTP GET /devices/{id}/configurations HTTP GET /devices/{id} GET /post/${post_id}/comment/${comment_index} 获取某个帖子的某个评论 ``` - POST:新增操作: ```HTTP POST /device``` - PUT 全部更新操作(代表更新一个实体的所有属性) ```HTTP PUT /devices/ application/json ``` - PATCH 部分更新(代表更新一个实体的部分属性)由于有的浏览器兼容性问题,一般推荐使用put ```HTTP PATCH /device/ application/json ``` - DELETE 删除操作 ```HTTP DELETE /devices/{id}``` - 使用连字符( - )而不是(_)来提高URI的可读性 - 在URI中使用小写字母 - 不要使用文件扩展名 # 状态码 200 - 请求成功 301 - 资源(网页等)被永久转移到其它URL 404 - 请求的资源(网页等)不存在 500 - 内部服务器错误 600 - 999 系统异常码 1000~业务共用异常码 2000~article 。。。 # 返回参数 # 验证 使用@Valid+BindingResult进行controller参数校验 # @NotNull @NotBlank@NotEmpty怎么用 - @NotBlank通常作用在String类型参数上面。下面注释得意思是,参数即使是空字符串也不行,必须要有值。 - @NotNull通常作用的是基本类型数据(除String) - @NotEmpty一般用来校验Collection,Map,Array ```$xslt success boolean用于表明本次请求成功与否 msg string用于输出本次接口结果消息,常用于表达错误消息。 code number用于输出本次请求的状态码,常用于表达错误状态码。 data any用于承载本次请求主要数据实体内容 ``` # 为什么VO BO DO分层明确,如果不分层。 - 不需要的字段也会传递到前端页面 - 某些字段需要转换,但是无法支持。 - 某些字段要展示,但是并不希望出现在数据库中 # Service/DAO 层方法命名规约 (参考阿里巴巴开发手册) 1) 获取单个对象的方法用 get 做前缀。 2) 获取多个对象的方法用 list 做前缀,复数形式结尾如:listObjects。 3) 获取统计值的方法用 count 做前缀。 4) 插入的方法用 save/insert 做前缀。 5) 删除的方法用 remove/delete 做前缀。 6) 修改的方法用 update 做前缀。 # 领域模型命名规约 1) 数据对象:xxxDO,xxx 即为数据表名。 2) 数据传输对象:xxxDTO,xxx 为业务领域相关的名称。 3) 展示对象:xxxVO,xxx 一般为网页名称。 4) POJO 是 DO/DTO/BO/VO 的统称,禁止命名成 xxxPOJO。 # 日志规范 应用中不可直接使用日志系统(Log4j、Logback)中的API,而应依赖使用日志框架 SLF4J 中的 API,使用门面模式的日志框架,有利于维护和各个类的日志处理方式统一。 import org.slf4j.Logger; import org.slf4j.LoggerFactory; private static final Logger logger = LoggerFactory.getLogger(Test.class); # xy-blog-service #### 介绍 {**以下是码云平台说明,您可以替换此简介** 码云是 OSCHINA 推出的基于 Git 的代码托管平台(同时支持 SVN)。专为开发者提供稳定、高效、安全的云端软件开发协作平台 无论是个人、团队、或是企业,都能够用码云实现代码托管、项目管理、协作开发。企业项目请看 [https://gitee.com/enterprises](https://gitee.com/enterprises)} #### 软件架构 软件架构说明 #### 安装教程 1. xxxx 2. xxxx 3. xxxx #### 使用说明 1. xxxx 2. xxxx 3. xxxx #### 参与贡献 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request # 前端 https://gitee.com/firelife_it/xy-blog-web