Fork me on GitHub

Java Batch Simple Helloworld Repeat Example

alt text

In Java, the development of batch can be achieved with few solutions. Most applications use their own code from scratch. Here’s a quick example of full java batch, without any external dependecy.

Without using any Framework, you need to develop every time the same parts of the batch: arg validation, batch processing, and error handling. Another example with the SpringBatch follow.

The focus of this tutorial is to develop a batch that will perform an “HelloWorld” task as many times as requested (value specify in argument content).

1. How it works?

HelloWorldBatch.main(
    new String[] { "10" } // exec 10 times
);

2. Demo (console output)

Executing batch
input args ok
Executing job
Hello World!
Hello World!
Hello World!
Hello World!
Hello World!
Hello World!
Hello World!
Hello World!
Hello World!
Hello World!
Ending job (success)
Ending batch

3. Implementation

HelloWorldBatch.java

package com.dfremont.blog;
 
public class HelloWorldBatch {
 
    public static void main(String[] args) {
        System.out.println("Executing batch");
 
        // arg validation
        if (args != null && args.length == 1 && args[0] != null) {
            System.out.println("input args ok");
        } else {
            System.out.println("Error with input args");
            throw new IllegalArgumentException("Error with input args");
        }
 
        // batch processing
        try {
            System.out.println("Executing job");
            for (int i = 0; i < Integer.valueOf(args[0]); i++) {
 
                // task to repeat
                System.out.println("Hello World!");
            }
            System.out.println("Ending job (success)");
        } catch (Exception e) {
 
            // error handling
            System.out.println("Error during job (failure)");
            System.out.println(e.getMessage());
            throw new RuntimeException("Error during task (failure)", e);
        }
        System.out.println("Ending batch");
    }
 
}

View source code and more tests

https://github.com/DamienFremont/damienfremont.com-blog-labs/tree/master/20130913-javabatch-helloworld https://github.com/DamienFremont/damienfremont.com-blog-labs/tree/master/20130913-javabatch-helloworld

Origin

https://damienfremont.com/2013/09/13/java-batch-simple-helloworld-repeat-example/

Hi, I'm Damien

Software Developer

LinkedIn GitHub Twitter

Founder of this blog, love Java and Open Source stuff. Follow him on Twitter.