You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The Japanese version of the README can be found [here](README.ja.md).
11
+
## 🌐 Language Support
12
+
🇯🇵 日本語版 README は [こちら](README.ja.md).
14
13
15
14
## 🔍 Overview
16
15
17
-
This repository serves as a **Spring Batch Starter Kit**, specifically tailored for **Spring Boot 3** and **Spring Batch 5**. It streamlines batch job development by leveraging the **latest features** and ensuring full compatibility with Spring Boot 3.
18
-
Whether you’re upgrading from **Spring Boot 2** or starting a new project, this starter kit enables you to **harness the enhanced capabilities** of Spring Batch with ease.
19
-
20
-
### 📝 Key Highlights
21
-
-**Skeleton Batch Framework**: Quickly develop custom batch jobs with minimal setup.
22
-
-**DB to CSV Batch**: Export data from MySQL to CSV files seamlessly, with runtime arguments for dynamic WHERE clauses and flexible output configurations.
23
-
-**CSV to DB Batch**: Import CSV data into MySQL efficiently with bulk operations and error handling.
24
-
25
-
### ♻️ Reusability
26
-
27
-
This kit is highly adaptable. By simply updating the database connection settings and modifying the CSV column definitions to match your specific business needs, you can immediately start using it for your projects.
28
-
29
-
---
30
-
31
-
32
-
33
-
## 💡 Key Features
34
-
35
-
### Batch Development Made Simple
36
-
-**Spring Batch Framework**: Streamlined job and step management.
37
-
-**JOOQ ORM**: SQL-like query writing and entity generation.
38
-
-**OpenCSV Integration**: Hassle-free CSV file handling.
39
-
-**Multi-Database Support**:
40
-
- H2 In-Memory Database: Used for batch metadata management.
41
-
- MySQL Database: Used for business data processing.
42
-
43
-
### Flexibility and Optimization
44
-
-**Dynamic Configurations**: Environment-specific setups with profiles (local/server).
45
-
-**Dynamic Execution of Multiple Jobs**: Execute multiple jobs dynamically with runtime arguments.
46
-
-**Customizable Batches**: Modify WHERE clauses of queries inside batches dynamically based on runtime arguments.
47
-
-**Google Java Format**: Automated code formatting with Spotless.
48
-
-**Quality Checks and Coverage**: Static analysis with Spotbugs, test coverage generation with Jacoco, and CI tools for checks.
49
-
50
-
### Future-Proof Design
51
-
-**Skeleton Batch Framework**: A pre-configured template for quickly developing batch jobs.
52
-
-**Docker Environment Setup**: Provides a `compose.yaml` file to easily set up a local MySQL database.
53
-
-**CI/CD**: Achieve Continuous Integration and Continuous Delivery with Github Actions.
54
-
-**Default Tasks**: The default Gradle tasks execute build, tests, and quality checks all at once, simplifying the development process. The final result is a runnable Spring Boot JAR file, with no need to modify the Gradle configuration.
16
+
This comprehensive starter kit is designed specifically for **Spring Boot 3** and **Spring Batch 5**, offering a production-ready foundation for enterprise batch processing applications. It incorporates industry best practices and leverages the latest Spring framework features to accelerate your batch development process.
17
+
18
+
## ⭐ Core Features
19
+
### 🏗️ Foundation Components
20
+
21
+
-**Production-Ready Batch Framework**: Pre-configured skeleton structure for rapid development.
22
+
-**Database Operations**:
23
+
- Efficient DB-to-CSV export with dynamic query support
24
+
- High-performance CSV-to-DB import with bulk operations
25
+
-**Enterprise-Grade Architecture**: Built with scalability and maintainability in mind
26
+
27
+
## 🛠️ Technical Capabilities
28
+
-**Advanced Spring Integration**
29
+
- Robust Spring Batch job and step management
30
+
- Type-safe SQL queries with JOOQ ORM
31
+
- Seamless CSV processing with OpenCSV
32
+
-**Dual Database Configuration**
33
+
- H2 In-Memory Database for batch metadata
34
+
- MySQL for business data processing
35
+
36
+
## 💻 Development Experience
37
+
-**Dynamic Configuration**
38
+
- Environment-specific profiles (local/server)
39
+
- Runtime-configurable job execution
40
+
- Flexible query customization through arguments
41
+
-**Code Quality Tools**
42
+
- Automated formatting with Google Java Format (Spotless)
43
+
- Static analysis via Spotbugs
44
+
- Test coverage reporting with Jacoco
45
+
- Integrated CI pipeline
46
+
47
+
## 🚢 DevOps Ready
48
+
-**Containerization**: Docker support with ready-to-use MySQL configuration
49
+
-**CI/CD Integration**: GitHub Actions workflows included
> **Note**: Ensure Docker is installed and running before executing step 4.
116
+
> **Note**: Docker installation is required for database setup.
122
117
123
-
#### 🎉 **With this Spring Batch Starter Kit, you can focus on your business logic while the framework handles the heavy lifting.**
124
-
**Happy coding!** 🚀
118
+
##♻️ Adaptability
119
+
The starter kit is designed for easy customization. Simply modify the database configurations and CSV mappings to align with your specific requirements, and you're ready to start processing your business data.
125
120
126
-
## 📄 License
121
+
## 📜 License
122
+
Licensed under the **[Apache License 2.0](https://www.apache.org/licenses/LICENSE-2.0)**.
127
123
128
-
This project is licensed under the **[Apache License 2.0](https://www.apache.org/licenses/LICENSE-2.0)**.
0 commit comments