6 Star 14 Fork 6

chen / UT-APP

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
README.md 5.11 KB
一键复制 编辑 原始数据 按行查看 历史
chenwenjie.star 提交于 2021-10-09 15:43 . ✍: 增加test日志开关

UT-APP

特别说明

  • 公司各种事忙,进度比较随缘

介绍 & 各种杂图

参考我的博客链接:介绍文档

实现选型

  • 考虑到数据的量级只是一个学校,同时为了降低软件部署的成本,目前仅打算使用MySQL、redis实现后端,最终目标是希望一台2G的服务器+七牛cdn就能流畅运行应用(之后会考虑兼容其它cdn,如阿里oss等)
  • 日后等熟悉更多开源组件的原理后,会增加不同的框架,开不同的分支来学习。

开发者须知

  • 统一使用Gitee:https://gitee.com/wenjie2018/UT-APP (集成了CI/CD)
  • 代码风格:风格约束配置请参考 -> https://halo.run/archives/code-style 不懂的也可以问我。
  • 提交PR: 提交的PR后都会经过jenkins的编译、打包测试、代码风格检查,通过了会自动在PR下留言测试结果, 请务必保证测试结果通过 (现阶段PR里面一个失败一个成功,可以参考下)。
  • 自定义环境:如果你因为某种原因,需要更改application.yml的一些配置,比如开启debug,那么你完全可以在本地的{user.home}/.ut目录下创建application.yml文件,它可以有选择性地覆盖项目中默认的配置项。

包结构

run.ut.app
├── api -- controller层的接口抽象层,主要用于分离Swagger2文档
├── cache -- 跟缓存有关的业务
├── config -- 项目相关的配置类
├── controller -- 存放controller
├── core -- 目前是放对返回对象的增强的逻辑
├── event -- 自定义各种时间
├── exception -- 异常定义、处理相关。
├── handler -- 一些处理器
├── listener -- 监听事件并处理
├── run.ut.mail -- 邮件相关代码
├── mapper -- MyBaits的mapper
├── model -- 存放DOMAIN、DTO、VO、Param等实体
├── netty -- netty的一些代码,目前只用于搭建WebSocket服务
├── schedule -- 存放定时任务,目前的定时任务大多都是测试用
├── security -- 自定义认证拦截逻辑
├── service -- 业务层代码
└── utils -- 工具类

计划实现

  • ✅ websocket实时推送消息(Netty实现)
  • ✅ 组队
  • ✅ bbs
  • ✅ 校园活动发布/订阅
  • ✅ 用户个人信息的完善(绑定邮箱等)
  • ✅ 后台管理可动态修改一些配置,如oss配置等
  • ✅ 用搜索引擎替代部分sql查询(在re-build分支完成了)
  • ✅ 活动添加分类
  • ✅ CI/CD 代码风格检查
  • ⏰ 聊天(文字传输✅,其余⏰)
  • ⏰ 增加接口测试用例,便于后续测试迭代(目前进行ing⏰)

因为未来打算重构前端,所以初步估计半年内应该是不会更新后端了,对IM实现有兴趣的可以参考学习下野火IM或者tio的开源,以后我也是打算像他们学习的。

  • 队伍要半数或以上同意才解散
  • 已zookeeper+dubbo为辅助,将消息推送拆出来(在这个分支不打算拆)

(到此再稳定下现有的功能后就相当于第一个Release版本了,大概~)


  • 校园活动内容支持markdown...ing(待讨论)
  • 举报机制..ing(计划中,因为客服功能的存在,有可能不需要)
  • 活动开始前一天或一段时间,发送邮件推送提醒...ing(待讨论)
  • 上传的图片支持存到本地磁盘...(用户体验问题)
  • ...更多

以上功能优先级从上至下递减

参与贡献

  1. Fork 本仓库
  2. 新建 UT_APP_XXX 分支
  3. 提交代码
  4. 新建 Pull Request

鸣谢

  • 特别感谢@施晓权提供的服务器,用于部署jenkins等应用。

字节内推

Java
1
https://gitee.com/wenjie2018/UT-APP.git
git@gitee.com:wenjie2018/UT-APP.git
wenjie2018
UT-APP
UT-APP
master

搜索帮助