SQLToy ORM 使用教程
项目介绍
SQLToy ORM 是一个结合了 JPA 功能和最佳 SQL 编写及查询模式的 Java ORM 框架。它独创了缓存翻译、最优化的分页、并提供无限层级分组汇总、同比环比、行列转换、树形排序汇总、SQL 自适配不同数据库、分库分表、多租户、数据加解密、脱敏等功能。SQLToy ORM 旨在解决复杂业务和大规模数据分析中的痛点和难点问题,提供一站式解决方案。
项目快速启动
环境准备
- JDK 1.8 或更高版本
- 一个支持的数据库(如 MySQL, Oracle, SQL Server 等)
快速启动步骤
-
克隆项目
git clone https://github.com/sagframe/sagacity-sqltoy.git
-
配置数据库
在
application.yml
文件中配置数据库连接信息:spring: datasource: url: jdbc:mysql://localhost:3306/your_database username: your_username password: your_password driver-class-name: com.mysql.cj.jdbc.Driver
-
生成 POJO 类
使用
quickvo
工具从数据库生成对应的 POJO 类:quickvo -config quickvo.xml
-
编写服务类
在服务类中注入
LightDao
并进行 CRUD 操作:import org.sagacity.sqltoy.dao.LightDao; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @Service public class StaffService { @Autowired private LightDao lightDao; public void saveStaff(StaffInfoVO staffInfo) { lightDao.save(staffInfo); } }
-
运行项目
启动 Spring Boot 应用:
mvn spring-boot:run
应用案例和最佳实践
应用案例
SQLToy ORM 已被多家企业和项目采用,包括宁波农行、山东农信、成都银行、中国建行上海开发中心、合肥农信、浦发电销、拉卡拉支付集团等。这些企业在大数据平台、SaaS 化多租户 ERP 等复杂场景下得到了充分锤炼。
最佳实践
- 缓存翻译:利用 SQLToy 的缓存翻译功能,减少数据库查询次数,提高性能。
- 分页优化:使用 SQLToy 提供的最优化分页功能,避免传统分页方式的性能瓶颈。
- 复杂查询:利用 SQLToy 的复杂查询功能,如无限层级分组汇总、同比环比等,简化复杂业务逻辑的实现。
典型生态项目
SQLToy ORM 可以与多种生态项目结合使用,以下是一些典型的生态项目:
- Spring Boot:作为 Spring Boot 的一个 starter,方便集成和使用。
- Flink CDC:结合 Flink CDC 和 MPP 数据库,实现实时数仓。
- Elasticsearch:支持与 Elasticsearch 集成,进行高效的搜索和数据分析。
通过这些生态项目的结合,SQLToy ORM 可以更好地满足不同场景下的需求,提供更加全面和强大的数据处理能力。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考