Spring云数据流和MySQL不';t显示任务的开始时间和结束时间
我正在研究Spring批处理和SCDF示例。在本例中,我正在读取Spring云数据流和MySQL不';t显示任务的开始时间和结束时间,spring,spring-batch,spring-cloud-dataflow,spring-cloud-dataflow-ui,Spring,Spring Batch,Spring Cloud Dataflow,Spring Cloud Dataflow Ui,我正在研究Spring批处理和SCDF示例。在本例中,我正在读取CSV文件,并将所有数据加载到MySQL。我能够成功地将数据加载到MySQL数据库中,但UI没有显示START\u TIME和END\u TIME,甚至数据库也不保存任何记录 我已经在这里上传了我的代码: spring云数据流服务器 SpringCloudDataFlowServerApplication.java @EnableDataFlowServer @SpringBootApplication(exclude = { Cl
CSV
文件,并将所有数据加载到MySQL
。我能够成功地将数据加载到MySQL数据库中,但UI没有显示START\u TIME
和END\u TIME
,甚至数据库也不保存任何记录
我已经在这里上传了我的代码:
spring云数据流服务器
SpringCloudDataFlowServerApplication.java
@EnableDataFlowServer
@SpringBootApplication(exclude = { CloudFoundryDeployerAutoConfiguration.class})
public class SpringCloudDataFlowServerApplication {
public static void main(String[] args) {
SpringApplication.run(SpringCloudDataFlowServerApplication.class, args);
}
}
应用程序属性
spring.datasource.url=jdbc:mysql://localhost:3306/test
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=org.mariadb.jdbc.Driver
spring.cloud.dataflow.features.streams-enabled=false
#spring.cloud.dataflow.rdbms.initialize.enable=false
# MYSQL DB Details
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/test
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.schema=org/springframework/batch/core/schema-mysql.sql
spring.batch.initialize-schema=ALWAYS
#spring.batch.schema=classpath:schema-mysql.sql
pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2.6.RELEASE</version>
<relativePath /> <!-- lookup parent from repository -->
</parent>
<groupId>com.example</groupId>
<artifactId>spring-cloud-data-flow-server</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>spring-cloud-data-flow-server</name>
<description>Demo project for Spring Boot</description>
<properties>
<maven-jar-plugin.version>3.1.1</maven-jar-plugin.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<java.version>1.8</java.version>
<spring-cloud-starter-dataflow-server.version>2.4.2.RELEASE</spring-cloud-starter-dataflow-server.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-dataflow-server</artifactId>
<version>${spring-cloud-starter-dataflow-server.version}</version>
</dependency>
<dependency>
<groupId>org.flywaydb</groupId>
<artifactId>flyway-core</artifactId>
<version>6.4.1</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
通过对应用程序的简要回顾,您似乎没有使用Spring云任务
如今,SCDF可以识别、解析并自动编排Spring云流和Spring云任务应用程序。虽然其他工作负载(包括)是可能的,但只有这两种类型的应用程序才能得到更加谨慎和自动化的处理
特别是在您的情况下,即使批处理作业成功完成了它的任务,事务边界也只有在批处理作业应用程序包装为Spring Cloud任务应用程序时才受管理,这就是为什么您看不到SCDF数据库中记录的事务的原因。同样,UI/Shell/API也不会显示这些细节
我建议全面审查该报告。也许可以先重复一下指南,以了解事物是如何结合在一起的。一旦您看到它们在运行(特别是spring cloud taskBounders),您将能够改进您的应用程序,以符合基础级别的期望。通过对应用程序的简要回顾,您似乎没有使用spring cloud task
如今,SCDF可以识别、解析并自动编排Spring云流和Spring云任务应用程序。虽然其他工作负载(包括)是可能的,但只有这两种类型的应用程序才能得到更加谨慎和自动化的处理
特别是在您的情况下,即使批处理作业成功完成了它的任务,事务边界也只有在批处理作业应用程序包装为Spring Cloud任务应用程序时才受管理,这就是为什么您看不到SCDF数据库中记录的事务的原因。同样,UI/Shell/API也不会显示这些细节
我建议全面审查该报告。也许可以先重复一下指南,以了解事物是如何结合在一起的。一旦你看到它们在运行(特别是spring cloud taskBounders),你就可以对你的应用程序进行改造,以符合基础级别的期望
# MYSQL DB Details
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/test
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.schema=org/springframework/batch/core/schema-mysql.sql
spring.batch.initialize-schema=ALWAYS
#spring.batch.schema=classpath:schema-mysql.sql