V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
TyCoding
V2EX  ›  Java

基于 SpringCloud+Vue 开发的极简的前后端分离微服务项目

  •  2
     
  •   TyCoding ·
    TyCoding · 2019-05-30 08:45:30 +08:00 · 10652 次点击
    这是一个创建于 2037 天前的主题,其中的信息可能已经有所发展或是发生改变。

    SpringCloud 分布式微服务项目

    Build Status Downloads Coverage Status

    介绍

    旨在提供一个最基础的 CRUD 模板,并没与太复杂的业务流程,想让初学微服务或者想要找个 Vue+Node 前后端分离项目的同学有一个案例参考。大家可以基于此项目继续扩展,或者看此项目和源码和文档自己尝试开发前后端分离的项目。

    如果此项目对大家有帮助,欢迎右上角 star 支持作者

    注意:请以批判的角度看此项目,本人也是技术有限,如果你有更好的解决方案请尽快联系我。大牛勿喷

    cloud-template: 一套极简的 SpringCloud 微服务项目模板,没有具体的业务,提供最详细的 SpringCloud 搭建流程

    sct-api: 分布式微服务项目后端接口

    sct-app: Vue + Node.js 前端项目

    写在前面

    在开始此项目前,请先学习这个基础项目模板 cloud-template ,并仔细阅读以下开发文档:

    从零开始搭建 Spring Cloud 脚手架

    如何食用 vue-admin-template 前端项目

    Spring Cloud Template

    • 一套极简的 Spring Cloud 微服务项目模板,开箱即用,方便扩展

    • 基于 Spring Cloud Greenwich、Spring Boot 的微服务项目

    • 基于 vue-admin-template。使用 Vue 框架,快速入门前后端分离式开发模式

    • 详细的开发文档

    核心依赖

    | 依赖 | 版本 | | --- | --- | | Spring Boot | 2.1.5.RELEASE | | Spring Cloud | Greenwich.SR1 | | Spring Security OAuth2 | 2.3.4.RELEASE | | tk.mybatis | 4.1.5 | | vue-admin-template | 4.1.0 | | Swagger2 | 2.9.2 |

    模块说明

    sct-app -- 前端工程[8100]
    sct-api 
    ├── sct-admin -- 系统管理模块
        ├── sct-admin-api -- 系统管理的公共 api 模块
        ├── sct-admin-biz -- 系统管理的业务实现模块 [4100]
    ├── sct-auth -- 授权模块 [4000]
    ├── sct-common -- 系统公共类模块
    ├── sct-config -- 配置中心 [8888]
    ├── sct-eureka -- Eureka 服务注册与发现 [8761]
    ├── sct-gateway -- Zuul 网关 [9999]
    ├── sct-monitor -- Spring Boot Admin 监控 [3000]
    ├── sct-zipkin -- Zipkin 链路监控 [3001]
    
    

    启动说明

    1. 修改本地hosts文件,添加如下内容(可以通过 SwitchHosts 快速修改)。
    127.0.0.1 sct-eureka
    127.0.0.1 sct-mysql
    127.0.0.1 sct-auth
    
    1. 修改sct-config/src/main/resources/下配置文件中的数据库连接信息,主要涉及sct-admin-biz-dev.ymlsct-auth-dev.yml两个文件

    2. 导入项目根目录下的base.sql,建立数据库

    3. 严格按照如下顺序依次启动服务模块

    EurekaApplication.java -- 服务注册中心
    ConfigApplication.java -- 服务配置中心
    MonitorApplication.java -- Spring Boot Admin 监控
    ZipkinApplication.java -- Zipkin 链路监控
    AdminBizApplication.java -- 系统管理模块
    AuthApplication.java -- 授权模块
    GatewayApplication.java -- Zuul 网关
    
    1. 启动前端项目
    $ cd sct-app
    $ npm install
    $ npm run dev
    

    预览

    32 条回复    2019-11-04 01:14:35 +08:00
    li27962278
        1
    li27962278  
       2019-05-30 08:55:19 +08:00
    ok 学习学习
    stone666
        2
    stone666  
       2019-05-30 09:06:11 +08:00
    ok 学习学习
    ResidualWind
        3
    ResidualWind  
       2019-05-30 09:14:19 +08:00
    学习 学习
    TyCoding
        4
    TyCoding  
    OP
       2019-05-30 09:35:28 +08:00
    好像没有注明项目地址呀,抱歉抱歉这里补上: https://github.com/TyCoding/cloud-template 欢迎各位 V 友 star 支持哦
    Mazexal
        5
    Mazexal  
       2019-05-30 10:28:13 +08:00
    插眼
    Umenezumi
        6
    Umenezumi  
       2019-05-30 10:28:39 +08:00
    #1~#3 是 ”马来人“ 吗。。
    li27962278
        7
    li27962278  
       2019-05-30 10:51:23 +08:00
    @Umenezumi 上班摸鱼先插眼...
    TyCoding
        8
    TyCoding  
    OP
       2019-05-30 10:55:40 +08:00
    @Mazexal @li27962278 请问插眼是什么意思呢?
    waising
        9
    waising  
       2019-05-30 11:07:21 +08:00
    点赞
    li27962278
        10
    li27962278  
       2019-05-30 11:19:15 +08:00
    @TyCoding 你可以理解为我在这里做了个书签,我随时回来可以看
    Leiothrix
        11
    Leiothrix  
       2019-05-30 11:33:06 +08:00
    出于什么原因要把前端和后端的代码放在一个仓库呢?
    peyppicp
        12
    peyppicp  
       2019-05-30 11:33:29 +08:00
    以后可能需要这样的脚手架项目,能节省很多时间
    TyCoding
        13
    TyCoding  
    OP
       2019-05-30 11:38:31 +08:00
    @li27962278 怎么感觉阴阳怪气的,我技术能力有限,大佬轻喷
    TyCoding
        14
    TyCoding  
    OP
       2019-05-30 11:39:37 +08:00
    @Leiothrix 方便下载,项目太小没必要分开
    Mazexal
        15
    Mazexal  
       2019-05-30 11:42:59 +08:00
    @TyCoding 和技术能力没啥关系, 如果你不打游戏的话大概也不知道插眼是干啥用的, 实际上插眼是一个游戏术语, 用于通过道具侦查守卫获取视野, 而且插眼作为一个单位可以用于传送(LOL 中), 我们在段子里插眼主要用于方便下次打开(相当于传送门)
    Luckyray
        16
    Luckyray  
       2019-05-30 11:50:26 +08:00
    @TyCoding 这个没有阴阳怪气的意思,插眼=mark=收藏=先记一下一会看
    TyCoding
        17
    TyCoding  
    OP
       2019-05-30 11:54:49 +08:00
    @Luckyray
    @Mazexal
    @li27962278 哦哦哦,好的,抱歉抱歉,确实没怎么玩过游戏不太理解,抱歉了。
    ren2881971
        18
    ren2881971  
       2019-05-30 13:16:17 +08:00
    准备在研究用 nacos 替换 eureka 用 spring cloud gateway 替换 zuul
    qa52666
        19
    qa52666  
       2019-05-30 13:26:57 +08:00 via iPhone
    正好需要这个
    qingxiangcool
        20
    qingxiangcool  
       2019-05-30 13:44:29 +08:00
    学习学习,已 star
    zenan9001
        21
    zenan9001  
       2019-05-30 13:51:08 +08:00
    插真眼,已 star
    li27962278
        22
    li27962278  
       2019-05-30 14:33:36 +08:00
    @TyCoding 我也是觉得你没怎么接触游戏所以没想往游戏方面解释 没想到你误会了哈哈
    lixiangzaizheli
        23
    lixiangzaizheli  
       2019-05-30 14:51:35 +08:00
    这种项目没人回复 隔壁收徒弟的那回复速率
    真的有趣
    likaka
        24
    likaka  
       2019-05-30 15:02:22 +08:00
    编程就像组装汽车
    atom234
        25
    atom234  
       2019-05-30 15:06:20 +08:00
    上班摸鱼先插眼...
    atom234
        26
    atom234  
       2019-05-30 17:38:47 +08:00
    jdk11 测试失败,jdk8 完美,但是前端出现跨域问题。。。
    atom234
        27
    atom234  
       2019-05-30 19:50:53 +08:00
    @atom234 奇怪,回去用 windows 系统跑起来又没有遇到问题
    smallerpig
        28
    smallerpig  
       2019-05-30 21:08:18 +08:00 via iPhone
    正在使用 nacos 替换 eureka
    Wolfsin
        29
    Wolfsin  
       2019-05-30 21:27:45 +08:00
    收藏一下,做小项目的时候很需要这样的脚手架来入门
    xupeng666
        30
    xupeng666  
       2019-05-31 15:12:49 +08:00
    插个真眼
    eefnrowe
        31
    eefnrowe  
       2019-06-03 14:47:07 +08:00
    东西不错, 支持下
    zhangfeiwudi
        32
    zhangfeiwudi  
       2019-11-04 01:14:35 +08:00
    东西不错, 支!!!!
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   6012 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 02:11 · PVG 10:11 · LAX 18:11 · JFK 21:11
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.