简账(开源记账软件)-后端环境简介及部署

文章目录

  • 简账(开源记账软件)-后端环境简介及部署
  • 前言
  • 一、后端主要技术栈简介
        • 具体涉及的技术如下所示:
        • Q&A
  • 二、环境部署
      • 1. 安装JDK11
      • 2. 从Github上下载压缩包后解压即可
      • 3. 安装docker
      • 4. 使用docker-compose创建容器
      • 4. 运行程序
      • 5. 查看在线文档
  • 三、总结
  • 四、致谢

简账(开源记账软件)-后端环境简介及部署


前言

由于自己有记账的需求,在尝试使用过市面上的记账软件后,发现大多数都有以下几个问题

  • 广告比较多,主要分为信息流广告及金融类广告
  • 页面太痈肿,使用体验不好
  • 部分高级功能需要收费,如数据导出

所以就萌生了自己做一个记账软件的想法,这个想法在2020年5月左右落地的,到目前也快有一年了。
本着OpenSource的想法,已全部开源,也想借写博客的机会获得一些Star?

测试环境

  • PC端:简账PC端

正式环境:

  • 小程序:微信搜索【简账】
  • PC端:简账PC端

Github开源地址:

  • Java后端:简账后端
  • PC端:简账PC端
  • 小程序:简账uniapp

后续要完成的功能(重要性至上而下)

  • 支持多账本,可自定义维护
  • 支持设置预算(年月预算)
  • 支持多账本间冲销
  • 支持Excel导出(年或月可自定义)
  • 支持多人记账及家庭账本

待解决的Bug

  • 如用户未登录过小程序,小程序扫码授权会提示Token不能为空(提供者:喵了个小咪咪)

写在后面
如果你有其他的想法或问题欢迎给我留言,或在Github上提Pr&Issue
tips:如果你也想你写的东西被人使用,欢迎跟我一起维护简账~

往期链接

  • 简账主要功能介绍

一、后端主要技术栈简介

从大体上来看,整个后端为单体的SpringBoot+Redis+Mysql

具体涉及的技术如下所示:

  • JDK:openJDK 11
  • SpringBoot:2.3.x
  • SpringSecurity:5.3.x
  • MySQL:8.0
  • JJWT:0.7.0
  • mybatisPlus:3.3.x
  • knife4j(在线文档):knife4j
  • redis:5.0.x

Q&A

  1. 为什么使用openJDK11/li>

openJDK11是开源免费的LTS版本,相较于8有许多新特性

  1. 整个项目为什么要基于SpringBoot/li>

SpringBoot框架简单易用

  1. 为什么使用SpringSecurity+JWT/li>

引入SpringSecurity+JWT目的是为了做无状态基于Token的签发和鉴权

  1. 为何要有引入Redis/li>

为了实现扫码授权登录,进而引入了Redis。因授权需要的uuid是一个有效期内有效的数据,本身不需要存入数据,而存入Redis的话编码相对简单,性能也很好
后续也会将一些用户不经常改变的数据存入Redis

二、环境部署

此处以开发环境采用docker来构建项目为例
tips:如果为正式环境,则安装相应的mysql和redis即可

1. 安装JDK11

  • 去openJDK官 下载11 GA版本即可
  • 配置环境变量

2. 从Github上下载压缩包后解压即可

  • 创建容器

  • 可以看到当前目录下面有一个docker-compose.yml,它主要就是做容器编排的。
    定义了容器名、容器挂载目录、配置文件路径等

    执行命令(拉取镜像并创建容器):docker-compose up – d

    tips:由于mysql容器初始化时指定了sql文件,所以容器一创建数据库也都创建好了,是不是很方便~

    4. 运行程序

    启动 SpringbootSimpleRecordApplication 启动类即可,控制台输出如下所示:

    三、总结

    后续博客内容:

    1. 环境搭建-前端
    2. 数据库设计
    3. SpringBoot集成SpringSecurity+JWT及动态路由生成
    4. 小程序扫码登陆实现
    5. 记账及月账单实现
    6. 图表分析实现

    简账开发者:

    1. SloppyJack
    2. SmallishJoker

    四、致谢

    在写了第一篇简账的博客后,大概有四十多个用户注册了简账。在此感谢注册了简账的各位,谢谢??
    如果你觉我这个项目还不错的话,不妨给我的Github点个Star?

    简账(开源记账软件)-后端环境简介及部署

    文章知识点与官方知识档案匹配,可进一步学习相关知识Java技能树首页概览91758 人正在系统学习中

    声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

    上一篇 2021年4月7日
    下一篇 2021年4月7日

    相关推荐