Skip to content

Data Loader Guide

jitwxs edited this page May 29, 2022 · 6 revisions

使用数据加载功能,流程如下:

  1. 创建 Loader 实例
  2. 提供 LoaderProperties
  3. 加载数据

Loader

Loader 实例包括以下种类

(1)读取本地文件

// static instance
- io.github.jitwxs.easydata.core.loader.EasyLoader#FILE_LOADER

// invoke instance
final EasyLoader easyLoader = new EasyLoader(new FileConnection())

(2)读取内存数据

// specify connect data format
final EmbeddedConnection connection = new EmbeddedConnection(FileFormatEnum.CSV);
// invoke instance
final EasyLoader easyLoader = new EasyLoader(connection);

(3)读取数据库数据

final MySQLConnection connection = new MySQLConnection(
                container.getDriverClassName(), // mysql 驱动名
                container.getUsername(), // mysql 用户名
                container.getPassword(), // mysql 密码
                container.getJdbcUrl()); // mysql jdbc 连接名

// invoke instance
final EasyLoader easyLoader = new EasyLoader(connection);

LoaderProperties

LoaderProperties 用于告知 easydata 您所期望加载数据的路径以及别名信息,您可使用 builder() 构造器模式进行初始化。

参数 可选性 备注
url 必填 加载数据路径,根据加载类型的不同,该路径可能是文件路径,也可能是 SELECT 语句
extraFields 非必填 用于指定查询结果的字段,和 Java 实体的额外映射关系。
easydata 默认使用 下划线 --> 驼峰 的映射规则,如果您有不满足该规则的字段,可指定该参数,必须成对配置。
jsonDeserializeFunc 非必填 当加载 JSON 数据时,该参数提供了反序列化方法,如果不提供,则使用 fastjson 默认的反序列化方法

Execute

执行 Loader 的 loading 方法完成数据的加载,返回值为 List 类型,即使仅有一条数据。

final List<T> userList = loader.loading(T.class, properties);