Spring Batch 框架 - 自动创建批处理表

2024-04-12

我刚刚使用 Spring Batch 框架创建了一个批处理作业,但我没有运行 CREATE SQL 的数据库权限。当我尝试运行批处理作业时,框架尝试创建 TABLE_BATCH_INSTANCE 时遇到错误。我尝试禁用

<jdbc:initialize-database data-source="dataSource" enabled="false">    
 ...
</jdbc:initialize-database>

但我尝试后仍然遇到错误

org.springframework.jdbc.BadSqlGrammarException: PreparedStatementCallback; bad SQL grammar [SELECT JOB_INSTANCE_ID, JOB_NAME from BATCH_JOB_INSTANCE where JOB_NAME = ? and JOB_KEY = ?]; nested exception is java.sql.SQLSyntaxErrorException: ORA-00942: table or view does not exist

无论如何可以禁用 SQL,我只是想测试我的读写器和处理器是否正常工作。


UPDATE:从 spring 2.5.0 开始,您应该使用spring.batch.jdbc.initialize-schema反而。看source https://github.com/spring-projects/spring-boot/blob/2.5.x/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/batch/BatchProperties.java#L79.


使用 Spring Boot 2.0 你可能需要这个:https://docs.spring.io/spring-boot/docs/2.0.0.M7/reference/htmlsingle/#howto-initialize-a-spring-batch-database https://docs.spring.io/spring-boot/docs/2.0.0.M7/reference/htmlsingle/#howto-initialize-a-spring-batch-database

spring.batch.initialize-schema=always

默认情况下,如果您使用嵌入式数据库,它只会创建表。

Or

 spring.batch.initialize-schema=never

永久禁用它。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Spring Batch 框架 - 自动创建批处理表 的相关文章

随机推荐

  • Bool.hashValue 转换为 Int 有效吗?

    在某些情况下和一些代码我看到hashValue用于转换Bool to Int 然而 代码 let someValue true let someOtherValue false print someValue hashValue print
  • 具有属性的 jasmine.createSpyObj

    在我的 Angular 测试中模拟依赖项时 我通常使用以下命令创建一个间谍对象jasmine createSpyObj const serviceSpy jasmine createSpyObj MyService method 然后将其提
  • Oracle Apex 22.21 - 图表页面 - 条形图类型 - 日期选择器

    我有一张桌子ORDERS其中包含列ORDER DATE 我创建了一个Chart as a Bar type 我希望图表显示给定日期或范围内的订单量 我正在关注这个Youtube教程 https www youtube com watch v
  • 为什么在数据包输入时 skb_buffer 需要跳过 20 个字节才能读取传输缓冲区?

    我正在 Linux 中编写一个网络模块 我发现只有在从 skb 缓冲区跳过 20 个字节后才能提取 tcp 标头 即使 API 是 skb transport header 其背后的原因是什么 有人可以详细解释一下吗 传出数据包不需要同样的
  • 无法使用 Jasper 报告库生成 Excel 工作表报告

    我尝试使用以下代码生成 Excel 报告 import java util import net sf jasperreports engine import net sf jasperreports engine export JRXls
  • 使用 System.Web.Mail 发送电子邮件

    我想用asp发送电子邮件 我用这个代码 using System Web Mail MailMessage msg new MailMessage msg To email protected cdn cgi l email protect
  • dbms_output 语句中的单引号?

    我需要在 dbms output 语句中包含单引号 我试过这个 dbms output put line first name 这里的名字是variable 我需要在单引号内显示 它 你可以通过加倍逃脱 dbms output put li
  • Webpack 模块联合应用程序之间的热重载

    我开始尝试使用 webpack 模块联合的微前端 这是为了一个非常特殊的目的 因为在我们公司 我们开发大型软件 例如在基于角色的访问控制中做出反应的仪表板 我希望每个部分 或几乎 都是一个单独的应用程序 所以我设法实现了一切 只是我注意到当
  • 将自身引用为模板模板参数的模板类?

    这段代码 template
  • 将向量声明为类成员

    我在头文件中有简单的类 a hh ifndef a hh define a hh class a public int i a i 0 endif 然后我有一个文件 b cc include
  • 是否可以使用 Groovy XMLSlurper 解析子树

    有谁知道是否可以以某种方式使用 XMLSlurper 这意味着可以从非常大的 XML 文档中提取各个子树并单独进行处理 想象一下 您有一个巨大的 XML 提要 其中包含一个根元素 该根元素具有数千个可以单独处理的直接子元素 显然 将整个文档
  • 对于 Emacs,如何将 view-lossage 收集的内容存储到外部文件中?

    对于 Emacs 我如何存储内容view lossage收集到外部文件中 理想情况下 我希望将这些击键数据自动增量地存储到外部日志文件中 这意味着在 Emacs 启动时默认情况下会这样做 至少在 Emacs 24 中 我现在无法检查之前的版
  • .NET:如何有效地检查 50,000 个项目的 List 中的唯一性?

    在某些库代码中 我有一个可以包含 50 000 个或更多项目的列表 库的调用者可以调用导致将字符串添加到列表中的方法 如何有效地检查所添加字符串的唯一性 目前 在添加字符串之前 我会扫描整个列表并将每个字符串与要添加的字符串进行比较 当超过
  • 结构有对象且无法复制

    我正在尝试从我的第一个 MQL4 专家顾问开始 我创建了一个struct处理我的订单 struct Order int pair int command double quantity double entry double stopLos
  • 从 GPS 点绘制线

    我有大约 100 个 GPS 坐标列表 我想画出每个列表所构成的线 使用散点图绘制的列表之一 看起来有点像这样 显然那里有一条线 我尝试了几种方法来对 GPS 位置进行排序并绘制它们 lats lngs with open filename
  • MSMQ如何管理消息?

    看来MSMQ不使用任何数据库管理系统来管理消息 MSMQ如何管理消息 它将消息存储在平面文件中吗 我正在尝试实现一个消息管理系统 MSMQ 使用位于 windir system32 msmq 中的平面文件 如果你想实现自己的队列 我建议你看
  • 反序列化 json 数组以列出 wp7

    我需要从 json 内的子数组获取数据 但它没有转换成列表 下面是我的 json 字符串 responseCode 0 responseObject TotalRecords 25 TotalDisplayRecords 25 aaData
  • 如何使用 Ninject InRequestScope 处理异步调用?

    我们正在使用Ninject in an ASP NET Web API应用程序 然后我们绑定我们的DbContext with InRequestScope 这对于我们的大多数请求都很有效 因为它们同步完成所有工作 因此可以在请求完成后安全
  • 精确存储大整数

    在R软件中 a lt 123456789123456789123456789 sprintf 27f a 1 123456789123456791337762816 000000 我得到了错误的答案 我想要准确的a value 为什么系统显
  • Spring Batch 框架 - 自动创建批处理表

    我刚刚使用 Spring Batch 框架创建了一个批处理作业 但我没有运行 CREATE SQL 的数据库权限 当我尝试运行批处理作业时 框架尝试创建 TABLE BATCH INSTANCE 时遇到错误 我尝试禁用