- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想要 Spring Batch 元数据 在 MySQL 服务器上创建并使用所有来自 Oracle 的现有表从中获取数据并将其放入 MongoDB。
我创建了以下配置,但不知何故错过了通过配置创建 Spring Batch 元数据表的技巧。
spring.data.mongodb.host=localhost
spring.data.mongodb.port=27017
spring.data.mongodb.database=MY_DB
#By default, Spring runs all the job as soon as it has started its context.
spring.batch.job.enabled=false
spring.batch.initialize-schema=always
spring.batch.tablePrefix=test.BATCH_
#spring.batch.initializer.enabled=false
spring.batch.schema=org/springframework/batch/core/schema-mysql.sql
spring.datasource.url=jdbc:oracle:thin:@localhost:1527:OR_DEV
spring.datasource.username=EDR_USR
spring.datasource.password=txz$2Zhr
spring.datasource.driver-class-name=oracle.jdbc.OracleDriver
jdbc.batch.jdbcUrl=jdbc:mysql://localhost:3306/test?useSSL=false
jdbc.batch.username=root
jdbc.batch.password=root
jdbc.batch.driver-class-name=com.mysql.cj.jdbc.Driver
@Configuration
@ComponentScan
public class DBConfig {
@Autowired
private Environment env;
@Bean(name="oracleDS")
public DataSource batchDataSource(){
return DataSourceBuilder.create()
.url(env.getProperty("spring.datasource.url"))
.driverClassName(env.getProperty("spring.datasource.driver-class-name"))
.username(env.getProperty("spring.datasource.username"))
.password(env.getProperty("spring.datasource.password"))
.build();
}
@Bean(name="mysqlDS")
@Primary
public DataSource mysqlBatchDataSource(){
return DataSourceBuilder.create()
.url(env.getProperty("jdbc.batch.jdbcUrl"))
.driverClassName(env.getProperty("jdbc.batch.driver-class-name"))
.username(env.getProperty("jdbc.batch.username"))
.password(env.getProperty("jdbc.batch.password"))
.build();
}
}
@GetMapping("/save-student")
public String saveStudent() {
JobParameters params = new JobParametersBuilder()
.addString("JobID", String.valueOf(System.currentTimeMillis()))
.addString("Job_ID", String.valueOf(System.currentTimeMillis()))
.addDate("date", new Date())
.toJobParameters();
try {
JobExecution jobExecution = jobLauncher.run(countryJob, params);
log.debug("Job Status : " + jobExecution.getStatus());
} catch (JobExecutionAlreadyRunningException | JobRestartException | JobInstanceAlreadyCompleteException
| JobParametersInvalidException e) {
log.error("Job Failed : "+e.getMessage());
}
return "";
}
{
"timestamp": "2019-03-27T14:57:52.745+0000",
"status": 500,
"error": "Internal Server Error",
"message": "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: Table 'test.batch_job_instance' doesn't exist",
"path": "/save-student"
}
最佳答案
为了解决这个问题,我通过从这里执行脚本来手动执行 MYSQL spring 批处理元数据表:MySQL Spring Batch Metadata tables script
由于我们有两个数据源,Spring Batch 无法自动创建元数据表,因此会出现此错误。我手动执行脚本作为解决方法,但是有什么办法可以通过代码解决这个问题吗?
关于spring - PreparedStatementCallback;错误的 SQL 语法 [SELECT JOB_INSTANCE_ID, JOB_NAME from BATCH_JOB_INSTANCE where JOB_NAME = ?和 JOB_KEY =?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55381505/
@Transactional public Boolean save(final StudentLogEntry studentLogEntry) throws SQLException,Da
我一直在尝试使用 Postgres 数据库进行 Spring 安全性身份验证。 这是我的 SQL 表定义: CREATE TABLE "UTILISATEUR" ( "IdUtilisateur" s
我有一个关于PreparedStatementCallback的问题,如下所示: Error! Conflict [#409]: PreparedStatementCallback; SQL [EX
我的要求是搜索存储在 DB2 中的目的地列表,当我输入一个字符或字符列表时,我使用的是 jquery 自动完成和 ajax 调用。一旦我在目标文本框中输入一个字符或字符串,它应该通过查询 DB2 来检
我在运行 SQL 查询时遇到问题。我有多个这样的查询,但只有这个不起作用。这是我的错误: 06/16/20 19:54:05.808 INFO Camel (camel-1) thread #25
我想要 Spring Batch 元数据 在 MySQL 服务器上创建并使用所有来自 Oracle 的现有表从中获取数据并将其放入 MongoDB。 我创建了以下配置,但不知何故错过了通过配置创建 S
我正在运行一个带有 Spring BootSecurtiy 的 Spring Boot 应用程序,即身份验证管理器构建器。登录应该由数据库的实体完成。但是每当我登录时它都会显示以下错误。 Prepar
我正在开发 Spring Batch Example – CSV File To MySQL Database 示例。我开发了整个代码,但是当我运行代码时,我看到出现以下错误。 我原以为 spring
我是一名优秀的程序员,十分优秀!