在不使用任何XML的情况下配置spring-batch

时间:2014-12-15 13:39:26

标签: java spring-batch etl

免责声明:我是春天的菜鸟。我问的可能是非常“奇怪”,因为我甚至都不知道我不知道

我正在尝试使用Java创建批处理数据移动/操作工具(可以说是ETL工具)。有人建议我查看我真正喜欢的spring-batch,因为它有许多用于数据读/写和处理的库。

但我的麻烦是 - 我的数据源(flatfile或table)没有修复。有一个前端,用户将选择要加载的平面文件或数据库表,程序将自动加载它。这意味着通常的事情:

  • 来源/目标实体结构
  • 源或目标数据库URL / DSN
  • 工作参数等。

在我的情况下没有预先确定。它们是在运行时确定的。但是,到目前为止,无论我见过哪些spring-batch示例 - 他们都用XML配置了这些信息。我不能这样做,因为这会使这些信息变得静止。

我的问题是 - 如果我不想使用Spring Container(及其所有基于XML的bean配置)但仍希望使用spring-batch来利用它的批处理库,那么这是否可行/可行?

1 个答案:

答案 0 :(得分:1)

不,您需要使用Spring容器来使用spring批处理及其所有基于XML或注释的bean配置。但是,您正在尝试的是可实现的,您只需要通过使用Spring批处理中的参数找到使其可配置的方法。您可以从互联网上获取任何示例并开始处理它以使其可配置。

  1. 就像你可以通过编写自定义映射器来利用Spring的文件阅读器。您可以节省创建和维护文件读取逻辑的工作量。
  2. 您可以让编写者在运行时根据您的表和文件动态查询您创建的内容。
  3. 示例显示了xml中的所有内容,以便于理解,如果您稍微探索一下,几乎所有内容都可以在运行时完成。