Giter VIP home page Giter VIP logo

ren88122246 / citrus Goto Github PK

View Code? Open in Web Editor NEW

This project forked from yiuman/citrus

0.0 0.0 0.0 1.3 MB

基于SpringBoot 2.3.2 + Mybatis-Plus + SpringSecurity + JWT 的前后分离后台管理系统 ,统一的认证入口、易于扩展的认证与权限校验、细粒度的权限与数据范围设计、动态数据源+多数据源事务

License: Apache License 2.0

Java 99.92% Dockerfile 0.08%

citrus's Introduction

citrus-logo

Citrus: 低代码开发脚手架

code style springboot-2.3.2 mybatis-plus-3.4.1

项目简介

基于SpringBoot 2.3.2 + Mybatis-Plus + SpringSecurity + JWT 的前后分离后台管理系统

前端仓库地址https://github.com/Yiuman/citrus-vuetify

LiveDemo

项目特性

  1. 开箱即用,引入starter依赖后即可启动
  2. 高效开发,只需要定义实体与库表,入口继承基类的Controller,即可完成基础的增删改查操作
  3. 常用数据结构的封装与基础的CRUD实现(左右值预遍历树、普通树等)
  4. 统一的认证入口,方便的安全认证扩展,可实现多种方式的认证,且支持表单与接口
  5. 灵活的权限钩子,既可全局进行权限验证、亦可定义于类与方法,验证方式易与扩展
  6. 细粒度的RBAC权限控制,可自定义验证方式,支持数据范围注入
  7. 动态数据源+多数据源事务管理

项目结构

  • citrus-boot-starter 项目自动配置相关
  • citrus-main 项目的运行入口(体验开箱即用的快感)
  • citrus-security 项目安全相关的代码,统一认证、验证码类型、鉴权、jwt等 安全模块传送门
  • citrus-support 项目通用支持相关的代码,通用Service层、Controller层,工具类、缓存、异常、注入、数据结构、动态数据源及相关扩展 通用CRUD指南
  • citrus-system 项目系统设计的主要实现 包含用户、角色、权限、资源、菜单、数据范围等模块的实现与处理,数据范围注入也在这里 权限数据范围设计
  • citrus-workflow 整合activiti7的工作流模块

如何使用

方式一

  1. springboot项目中引入依赖

    <dependency>
      <groupId>com.github.yiuman</groupId>
      <artifactId>citrus-boot-starter</artifactId>
      <version>0.1.0.RELEASE</version>
    </dependency>
  2. 下载 https://github.com/Yiuman/citrus/tree/master/sql 中的sql文件,创建你的数据并执行

  3. application.yml中配置数据库及应用信息

    spring:
      datasource:
        driver-class-name: com.mysql.jdbc.Driver
        url: jdbc:mysql://localhost:3306/citrus?zeroDateTimeBehavior=convertToNull&characterEncoding=UTF-8
        username: root
        password: yiuman
    server:
      port: 8082
    
    mybatis-plus:
      configuration:
        #    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
        local-cache-scope: statement
  4. 启动项目

方式二

  1. git clone https://github.com/Yiuman/citrus.git
  2. 自行修改项目配置与代码

  3. 启动项目

citrus's People

Contributors

yiuman avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.