Spring-Batch с использованием MySql и Spring-Data Key-Value вместе
У меня есть PoC для тестирования Spring-Batch с MySql и Key-Value вместе.
ПОМ
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-batch</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-keyvalue</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
Приложение
@SpringBootApplication
@EnableMapRepositories
public class SpringBatchPocApplication {
public static void main(String[] args) {
SpringApplication.run(SpringBatchPocApplication.class, args);
}
}
приложение.свойства
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL5InnoDBDialect
spring.jpa.hibernate.ddl-auto=update
spring.datasource.url=jdbc:mysql://localhost:3307/pocdb
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.sql.init.platform=mysql
file.input=animal-list.csv
spring.batch.job.enabled=false
spring.batch.jdbc.initialize-schema=always
объект "ключ-значение"
@Data
@Builder(setterPrefix = "with")
@NoArgsConstructor
@AllArgsConstructor
@KeySpace("imAnimal")
public class IMAnimal {
@Id
private UUID id;
private String name;
private String type;
private boolean processed;
}
репозиторий ключ-значение
@Repository
public interface IMAnimalRepository extends CrudRepository<IMAnimal, UUID> {
}
Чем у меня есть служба для управления репозиторием ключ-значение:
@Service
public class DatabaseService {
@Autowired
private IMAnimalRepository repository;
...
Тем не менее, когда я запускаю свое приложение, IMAnimalRepository не обнаруживается контекстом Spring.
Field repository in name.jikra.springbatchpoc.service.DatabaseService required a bean of type 'name.jikra.springbatchpoc.repository.IMAnimalRepository' that could not be found.
Я предполагаю, что происходит столкновение с JPA dataSource или что-то в этом роде. Есть ли способ собрать это вместе?