Xwudao / ujuji_backend

优聚集 - 多用户自定义导航主页后台程序

Home Page:https://ujuji.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

优聚集

2020年初,疫情肆虐,想着以后的规划,结果是毫无规划,可能我就是随波逐流、活在当下的人。

不管怎么说,我也希望以后能自由职业且能不饿肚子,为此,为了锻炼技能,写了优聚集这个前后端分离的项目。

这是第一次写较大规模的Vue.js 应用

这也是第一次写较大规模的SpringBoot应用

第一次写,肯定就是巨难看和维护,这点我有自知之明,但是我希望你们不要说出来。我自己知道就行。所以,于2021年我完全从零开始重构了优聚集,前端虽也是Vue.js,但是也是完全重写了。后端用golang重构。不得不说,golang没有像springboot这类似的大统一框架,对于某些方面来说也是好事,我可以完全决定我的后台应用怎么架构。而不是被springboot规定死了:你就该在这个目录写这个东西…

仓库

前端仓库(Vue.js):https://github.com/Xwudao/ujuji_frontend

后端仓库(SpringBoot):https://github.com/Xwudao/ujuji_backend

声明

1、

尽管我已经仔细检查过代码,但是不可避免的可能代码中依旧有一些我个人的私密信息,尤其是诸如邮箱密码之类的,如果被发现了,那么请告知我,或者最起码请不要用它干一些危险的事情,谢谢合作。

2、

因为本套代码之初并不是为了开源而写的,所以对于一些测试中的敏感信息我都是直接写死在代码中的,所以如果您发现了一些私密信息请告知我。

3、

本套代码是基于SpringBoot 2.3.0.RELEASE

在当时,应该是最新的版本,但是在2021年来说,可能也许有点旧了,当然,不是很旧。

这套代码和现在的优聚集 https://ujuji.com/ 有很大区别,因为现在的优聚集网站时是我完全在2021年通过golang重构了的。所以当您发现这和优聚集https://ujuji.com/ 差别很大时,很正常,因为现有优聚集是重构之后的版本。

4、

如果您想自己部署优聚集前后端项目,最起码得有以下知识点:

  • 数据库
  • Java
  • Maven
  • SpringBoot(如果不想修改增加功能,也就无伤大雅)
  • Vue.js

构建

1、修改配置文件

src\main\resources\application.yml

  • 修改服务端口

    server:
      port: 4037
  • 修改邮件服务

    mail:
      host: smtp.domain.com
      password: 123456@test
      username: ujuji@domain.com
      port: 25
  • 修改数据库信息

    sql文件是:java_navigation.sql

    将其导入数据库并修改如下信息:

    spring:
      profiles: dev
      datasource:
        driver-class-name: com.mysql.cj.jdbc.Driver
        username: root
        password: root
        url: jdbc:mysql://localhost:3306/java_navigation?useSSL=false&serverTimezone=UTC
      artemis:
        port: 4029
  • Redis信息修改:

    redis:
      host: 127.0.0.1
      password:
      port: 6379
      lettuce:
        pool:
          max-active: 8 #最大连接数
          max-wait: -1 # 表示未限制
          max-idle: 8 # 接池中的最大空闲连接
          min-idle: 0 # 最小空闲链接
      timeout: 5000 # 超时时间
    cache:
      redis:
        time-to-live: 1m
  • jwt的secret修改:

    jwt:
      secret: 21312142131232
      expiration: 86400000
      header: Authorization
      prefix: "Bearer "
  • 跨域设置:

    当在生产环境中使用是,您还需要修改跨域(当然,如果是开放子站注册的话,下面这个就无所谓了,所以在代码中src\main\java\com\ujuji\navigation\config\WebConfig.java 放行了所有origin)

    cors:
      origins:
        - http://localhost:8080

2、当基本配置修改完后,就可以构建了:

执行(需要maven环境)

mvn clean package

成功后,会输出:

[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  11.233 s
[INFO] Finished at: 2021-02-06T10:08:10+08:00
[INFO] ------------------------------------------------------------------------

构建出的产物是:

target\navigation-1.0.0.jar

简单来说把他放到服务器中执行 java -jar navigation-1.0.0.jar就行


好了,基本配置的就完了,懂Java会Spring不用我说都知道怎么弄,不会的,我写再多也是一脸懵

之后的通过nginx反向代理到80端口之类的就不多讲了,如果有哪位大神愿意出一个详细的教程,有视频更好。欢迎@我

感谢

感谢Jetbrains 这家伟大的IDE开发公司,他们的全家桶极其好用

https://jetbrains.com/

协议

使用本代码请保留前端界面到 https://ujuji.com 的链接

Apache License 2.0

About

优聚集 - 多用户自定义导航主页后台程序

https://ujuji.com

License:Apache License 2.0


Languages

Language:Java 100.0%