# 简介

在日常开发过程中,发现有一个重要的功能会被经常使用到,但是又没有一个比较好用的功能集合,在开发项目是需要反复配置,造成了大量不必要的重复性简单劳动,因此对日常使用到功能进行了一个通用封装,形成了【易水公共组件】(以后简称组件),方便后期项目开发。 本着"一次开发,开箱即用"的原则,组件在开发时遵守以下几点:

  • 开箱即用
  • 基本配置,即在开启本组件功能后,无须二次配置即能使用组件的基本工功能。
  • 个性配置,组件提供大量的配置属性,能通过预留的配置属性自定义组件功能。
  • 高级配置,在系统默认配置和个性配置不能满足开发需要时,能通过自定义组件中的某些元件实现高级配置。

官方文档地址:http://doc.yishuifengxiao.com/
源码地址:https://gitee.com/zhiyubujian/common-starter

交流 QQ 群 :易水组件交流群 (群号 624646260)

快速使用

    <dependency>
        <groupId>com.yishuifengxiao.common</groupId>
        <artifactId>common-spring-boot-starter</artifactId>
        <version>替换为最新的版本号</version>
    </dependency>

易水组件最新版本请参见 https://mvnrepository.com/artifact/com.yishuifengxiao.common/common-spring-boot-starter

易水公共组件是基于 spring security 和 spring security oauth2 上的二次开发,除了对 spring security 和 oauth2 高度可定制化的功能封装外,还集成了在日常开发过程需要经常使用的 swagger-ui 和验证码功能以及项目中必不可少的全局异常捕获功能,另外,易水公共组件还支持第三方登录功能,对单点登录(sso)功能做了一个简单的默认实现,使用用户能够快速开启 QQ 登录和微信登录能力。

在保证功能灵活可用的基础上,易水公共组件还针对国人的使用习惯进行了一些本地化配置,提供了详细完整的中文使用说明文档。总的来说,易水公共组件在保证单机应用的高效性能同时,还能支持分部署环境,是目前主流的微服务开发过程中不可或缺的重要伙伴。

易水风萧通用组件主要包含以下一些常用功能:

  • swagger-ui 文档
    • 快速启动/关闭 swagger-ui 功能
    • 支持自定义 swagger-ui 启动参数
    • 支持生成离线文档
  • 全局跨域支持
    • 快速启动/关闭跨域功能
    • 支持自定义跨域属性设置
  • 全局异常捕获
    • 包含各种基本的异常信息捕获
    • 支持自定义异常提示信息
  • 通用辅助工具
    • 默认支持各种字符处理方式,如去掉空白字符串,去掉非法字符
    • 快速获取 spring 上下文
    • 快速获取 spring 中的实例对象
  • 验证码功能
    • 默认支持图形验证码,短信验证码和邮件验证码
    • 支持前后端分离情况下的验证码使用
    • 支持自定义验证码生成策略
    • 支持自定义验证码存储策略
    • 支持分布式与集群功能
  • spring security
    • 大量丰富灵活的配置属性
    • 支持验证码功能,快速给任意资源设置各种类型的验证码
    • 简单清晰的资源管理方式,能够轻松管理系统中的应用资源
    • 支持短信登录
    • 支持修改表单登录参数
    • 支持自定义登录流程
    • 支持自定义权限配置
    • 支持并发登录管理
    • 支持"记住我"功能
    • 防止密码暴力破解
    • 内置各种消息时间,快速感知各种操作动作
  • oauth2
    • 支持自定义 token 生成策略
    • 支持自定义 token 存储策略
    • 内置全局异常功能
    • 内置 token 解析功能,能够根据特定算法从 token 中解析出用户信息
    • 内置多种 token 提取方式,支持从 url、请求头以及 session 中提取 token
    • 支持 oauth2 模式下单用户多终端登录管理功能
  • 第三方登陆
    • 默认支持 QQ 登录
    • 默认支持微信登录功能
    • 支持其他的第三方登录
Last Updated: 1/13/2020, 9:58:22 PM