# Package org.springframework.batch.core.configuration.annotation

@NonNullApi package org.springframework.batch.core.configuration.annotation
Annotations and builder factories for java based configuration

Author:
  Michael Minella, Mahmoud Ben Hassine

- Related Packages
  Package
  Description
  org.springframework.batch.core.configuration
  Interfaces for registration and location of job configurations.
  org.springframework.batch.core.configuration.support
  Specific implementations of configuration concerns.
  org.springframework.batch.core.configuration.xml
  Parsers for XML based configuration
- Class
  Description
  AbstractBatchConfiguration
  Base `Configuration` class providing common structure for enabling and using Spring Batch.
  BatchConfigurationSelector
  Base `Configuration` class providing common structure for enabling and using Spring Batch.
  BatchConfigurer
  Strategy interface for users to provide as a factory for custom components needed by a Batch system.
  DefaultBatchConfigurer
  EnableBatchProcessing
  Enable Spring Batch features and provide a base configuration for setting up batch jobs in an @Configuration class, roughly equivalent to using the `<batch:*>` XML namespace.
  JobBuilderFactory
  Convenient factory for a `JobBuilder` which sets the `JobRepository` automatically.
  JobScope
  Convenient annotation for job scoped beans that defaults the proxy mode, so that it doesn't have to be specified explicitly on every bean definition.
  ModularBatchConfiguration
  Base `Configuration` class providing common structure for enabling and using Spring Batch.
  ScopeConfiguration
  `Configuration` class that provides `StepScope` and `JobScope`.
  SimpleBatchConfiguration
  Base `Configuration` class providing common structure for enabling and using Spring Batch.
  StepBuilderFactory
  Convenient factory for a `StepBuilder` which sets the `JobRepository` and `PlatformTransactionManager` automatically.
  StepScope
  Convenient annotation for step scoped beans that defaults the proxy mode, so that it doesn't have to be specified explicitly on every bean definition.