Source 组件介绍
- Source 提供两种类型的数据源:DataSource 和 CacheSource。DataSource 为数据库或内存数据库,提供类似JPA、Hibernate的接口与功能。CacheSource 为缓存数据提供类似Memcached、Redis的接口和功能。两者也提供了异步接口(基于远程模式Service)。
Source 主要为数据源提供简易的操作接口,使底层的具体数据源(传统数据库、文件系统、内存数据库、缓存)对上层是透明的。Source 提供两种类型的数据源:DataSource 和 CacheSource。DataSource 为数据库或内存数据库,提供类似JPA、Hibernate的接口与功能。CacheSource 为缓存数据提供类似Memcached、Redis的接口和功能。两者也提供了异步接口(基于远程模式Service)。
DataSource 入门
+ DataSource:
与JPA相比,DataSource有以下几个特点:
1、简易的过滤查询接口,但仅支持简单的表关联查询。
2、分布式的主键的分布式自增策略。
@@ -39,7 +40,7 @@
为了降低学习成本,DataSource重用了JPA里的部分注解与配置文件,使用方法基本相同,与JPA用法唯一区别是注解只能标记于字段,不能标记在方法上。
| 注 解 | 描 述 |
|---|---|
| 注解类名 | 功能描述 |
| javax.persistence.Cacheable | 标记Entity类是否需要缓存,与JPA用法一致 |
| javax.persistence.Column | 标记字段,只使用其name()、insertable()、updatable()属性 |
| javax.persistence.Entity | JPA的Entity类必须标记为@Entity, 而RedKale不强制要求,所以该注解一般无用 |
| @FilterJoinColumn | 用于FilterBean过滤类的关联表字段设置 |
| @FilterGroup | 用于FilterBean过滤类的过滤条件分组设置 |
+ DataSource提供的接口分几种系列: +
+ +| 系列方法 | 功能描述 |
|---|---|
| insert | 插入数据 |
| delete | 删除数据 |
| update | 更新数据 |
| updateColumnXXX | 更新数据的部分字段 |
| getNumberResult | 统计查询,用于查询字段的总和、最大值、平均值等数据 |
| queryColumnXXX | 单个字段数据查询和字段的统计查询 |
| find | 查找单个对象 |
| queryList | 查询对象的List集合 |
| querySheet | 查询对象的Sheet页式集合 |
| directXXX | 直接运行SQL语句,用于复杂的关联查询与更新 |
未完待续……