基于 SpringBoot 封装的基础库 yue-library

Apache-2.0
Java 查看源码»
跨平台
2019-07-18
yl-yue

 https://ylyue.cn/ 

                一个基于SpringBoot封装的基础库

介绍

yue-library 是一个基于 SpringBoot 封装的基础库,内置丰富的 JDK 工具,并且自动装配了一系列的基础 Bean,不仅如此,还可以用于快速构建 SpringCloud 项目,让微服务变得更简单。

工程结构

. yue-library
├── yue-library  基础库
│   ├── yue-library-dependencies  父pom
│   ├── yue-library-base          基础库提供了丰富的Java工具包,同时也自动装配了一系列基础Bean等
│   ├── yue-library-data-jdbc     基于SpringJDBC进行二次封装,拥有着强大性能的同时又不失简单、灵活等
│   ├── yue-library-data-redis    基于SpringRedis进行二次封装,更简单灵活,提供全局token与登录相关特性等
│   ├── yue-library-cloud-oss
│   ├── yue-library-cloud-sms
│   └── yue-library-pay
├── yue-library-samples  基础库示例
│   ├── yue-library-template
│   └── yue-library-demo
└── yue

快速使用

maven项目,在pom.xml文件中添加如下一段代码,并将${version}替换为对应版本号:

<parent>
    <groupId>ai.ylyue</groupId>
    <artifactId>yue-library-dependencies</artifactId>
    <version>${version}</version>
</parent>

随后引入所需要的模块

<dependencies>
    <dependency>
        <groupId>ai.ylyue</groupId>
        <artifactId>yue-library-base</artifactId>
    </dependency>
    ...
</dependencies>

yue-library 的版本命名方式,采用 SpringCloud 版本名作为前缀,然后以 .1、.2、.3...这种形式,目的是为了方便区分基础依赖版本。

同时所有模块皆依赖于基础库,若需要引入除基础库之外的模块(如:data-jdbc、data-redis),可以不用引入此模块。

更多细节,请查看中文文档

模块说明

yue-library-base(必备)

yue-library-base提供了丰富的 Java 工具包,它能够帮助我们简化每一行代码(集成 Hutool 工具包)。

同时也自动装配了一系列基础 Bean,可在 application.yml 文件中配置关闭,所有配置项皆是以yue.*开头,如:yue.cors.allow=false代表不允许跨域。

  • 丰富的 Java 基础工具类,对文件、流、加密解密、转码、正则、线程、XML 等 JDK 方法进行封装
  • ResultHttp 最外层响应对象,更适应 Restful 风格 API
  • 默认开启热加载、热部署、支持跨域,一键解决联调问题
  • 基于validator扩展 IPO 增强校验注解,更适合国内校验场景。(如:手机号、身份证号码)
  • 全局统一异常处理,结合Result对象,定位异常更轻松,前端显示更贴切
  • 异步线程池:共用父线程上下文环境,异步执行任务时不丢失token

更多详细介绍,请查看中文文档

yue-library-data-jdbc(强烈推荐)

data-jdbc 库基于 SpringJDBC 进行二次封装,拥有着强大性能的同时又不失简单、灵活。特性如下:

  • 比 SpringJDBC 更方便好用、比 SpringJPA 更简单灵活
  • 无侵入:data-jdbc 在 SpringJDBC 的基础上进行扩展,只做增强不做改变,简化CRUD操作
  • 依赖管理:引入即可启动项目,关联 druid 实现 SQL 全监控
  • 预防 Sql 注入:内置 Sql 注入剥离器,有效预防 Sql 注入攻击
  • 损耗小:原生级 CURD 操作,性能基本无损耗,直接面向对象操作,同时还有大量经过 SQL 优化处理的 CRUD方法
  • 通用 CRUD 操作:内置通用 DAO,通过继承方式即可实现单表大部分 CRUD 操作
  • 更科学的分页:分页参数自动解析,写分页等同于写基本 List 查询。更有优化型分页 SQL 检查
  • 内置性能分析插件:可输出 Sql 语句以及其执行时间,建议开发测试时启用该功能,能有效解决慢查询
  • 类型强化:支持原生级 SQL 查询,并强化原生查询结果,简单便捷 + 可维护组合(支持全 JSON 或全 DO)
  • 查询校验:CRUD 预期值判断
  • 全局异常处理:CRUD 操作相关异常统一处理,定位更精准,提示更友好,实现全局 Restful 风格

更多详细介绍,请查看中文文档

yue-library-data-redis(推荐)

data-redis 库基于 SpringRedis 进行二次封装,更简单灵活,提供全局 token 与登录等特性:

  • 简化使用并拥有 Redis 原生常用命令所对应的方法
  • 保留 SpringRedis 所有常用特性:分布式缓存
  • 提供分布式 token、分布式锁
  • 封装大量第三方登录特性,使登录更简单易于维护
  • 封装常用的登录判断操作与 redis-token 解析

更多详细介绍,请查看中文文档

社区

在 Gitter 的社区里可以找到 yue-library 的用户和开发者团队。

参与贡献

欢迎各路好汉一起来参与完善 yue-library,我们期待你的 PR!

  • 贡献代码:代码地址 yue-library ,欢迎提交 Issue 或者 Pull Requests
  1. Fork 本仓库并从master或某个版本创建你的分支
  2. 如果你添加的代码需要测试,请添加测试,确保单元测试通过
  3. 如果你修改了 API,请更新文档
  4. 确保代码风格一致
  5. 提交代码
  6. 新建 Pull Request
  • 维护文档:文档地址 yue-library-doc ,欢迎参与翻译和修订

 

的码云指数为
超过 的项目
加载中

评论(4)

yl-yue
yl-yue 软件作者
yue-library发布,开源中国收录。#yue-library#
洛神吾赋
洛神吾赋
邮箱:623172826@qq.com
洛神吾赋
洛神吾赋
yue-library-dependencies 源码可以发一份吗,看下你的思想
yl-yue
yl-yue 软件作者
点击源码下载即可,包含所有源码。或者采用码云克隆:https://gitee.com/yl-yue/yue-library
yl-yue
yl-yue 软件作者
#yue-library# 欢迎大家留言...

yue-library Greenwich.SR1.2 发布:SpringBoot 增强库

yue-library yue-library是一个基于SpringBoot封装的基础库 内置丰富的JDK工具 自动装配了一系列的基础Bean与环境配置项 快速构建SpringCloud项目,让微服务变得更简单 本次更新主要为规范一...

07/27 09:27

yue-library Greenwich.SR1.SR1 发布,SpringBoot 增强库

yue-library yue-library是一个基于SpringBoot封装的基础库 内置丰富的JDK工具 自动装配了一系列的基础Bean与环境配置项 快速构建SpringCloud项目,让微服务变得更简单 这是基于JDK11后的第二...

07/22 15:35

yue-library Greenwich.SR1 发布:SpringBoot基础库新增多特性

yue-library yue-library是一个基于SpringBoot封装的基础库 内置丰富的JDK工具 自动装配了一系列的基础Bean与环境配置项 快速构建SpringCloud项目,让微服务变得更简单 殊为不易,经过漫长的...

07/20 10:59

没有更多内容

加载失败,请刷新页面

没有更多内容

暂无问答

手把手教你把你的网站改为https

申请SSL证书的常见网站有: https://letsencrypt.org/ https://www.qcloud.com/product/ssl https://support.qiniu.com/hc/kb/article/223541 https://www.startssl.com/ (免费) 以startss...

2016/11/08 23:15
699
0
巧用CAS解决数据一致性问题

在高并发的分布式环境下,对于数据的查询与修改容易引发一致性问题,本文将分享一种非常简单但有效的优化方法。

2016/12/02 08:57
38
0
laravel5.2的新功能

上一节课我们学了laravel5.3的新特性 https://my.oschina.net/lilugirl2005/blog/787478 这节课主要讲一些laravel5.2的新特性在laravel5.3的基础上演示 我们还是以10yue.live网站为例 larave...

2016/11/16 04:55
37
0
qt实现公历转农历,C++亦可用

实现阳历日期转换农历日期

2015/12/30 08:49
37
0
词语搜索算法思想 - 第三步 词语拼音

第二步中,我们需要解决一个问题,就是把词语翻译成拼音。在osc中搜索:pinyin,http://pinyin4j.sourceforge.net/,download下来,直接使用: public static void main(String[] args) { ...

2012/02/25 00:01
341
0
laravel5.1的用户权限管理的实现

本文是在基于laravel5.3的基础上实现 Laravel ACL 权限 先创建blogs表 php artisan make:migration create_blogs_table --create=blogs 修改database/migrations/2016_12_02_070731_create_...

2016/12/02 00:17
58
1
laravel5.3的新功能尝鲜

上一节课 https://my.oschina.net/lilugirl2005/blog/783370 上一节课我们讲了laravel5.3的安装,这节讲laravel5.3的一些基础命令和配置 Listeners文件夹 进入laravel项目目录输入命令 创建用...

2016/11/14 15:30
129
0
SpringBoot整合Redis

https://blog.csdn.net/plei_yue/article/details/79362372

2018/11/08 15:01
13
0
生成日期数据

生成日期数据

2018/01/31 17:16
14
0

没有更多内容

加载失败,请刷新页面

返回顶部
顶部