Close

Spring Boot - Starters dependencies Examples

[Last Updated: Oct 12, 2026]

Spring Boot 

package com.logicbig.example;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.Bean;

@SpringBootApplication
public class ApplicationExample {
@Bean
public MyBean myBean() {
return new MyBean();
}

public static void main(String[] args) {

SpringApplication.run(ApplicationExample.class, args)
.getBean(MyBean.class)
.doSomething();
}

private static class MyBean {
public void doSomething() {
System.out.println("Doing something in MyBean");
}
}
}

Output


. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/

:: Spring Boot :: (v4.1.1)

2026-10-13T03:00:20.875-05:00 INFO 25560 --- [ main] c.logicbig.example.ApplicationExample : Starting ApplicationExample using Java 25 with PID 25560 (D:\LogicBig\example-projects\spring-boot\spring-boot-starter-example\target\classes started by joe2 in D:\LogicBig\example-projects\spring-boot\spring-boot-starter-example)
2026-10-13T03:00:20.877-05:00 INFO 25560 --- [ main] c.logicbig.example.ApplicationExample : No active profile set, falling back to 1 default profile: "default"
2026-10-13T03:00:21.319-05:00 INFO 25560 --- [ main] c.logicbig.example.ApplicationExample : Started ApplicationExample in 0.749 seconds (process running for 1.031)
Doing something in MyBean

pom.xml:

<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>4.1.1</version>
</parent>
<groupId>com.logicbig.example</groupId>
<artifactId>spring-boot-starter-example</artifactId>
<version>1.0-SNAPSHOT</version>
<properties>
<java.version>25</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
</dependencies>
</project>
Original Post




In this example we are importing spring-boot-dependencies rather than inheriting spring-boot-starter-parent pom.

package com.logicbig.example;

import org.apache.commons.codec.binary.Hex;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.Bean;
import java.nio.charset.StandardCharsets;

@SpringBootApplication
public class ApplicationExample {
@Bean
public MyBean myBean() {
return new MyBean();
}

public static void main(String[] args) {
ApplicationContext ctx =
SpringApplication.run(ApplicationExample.class, args);
MyBean bean = ctx.getBean(MyBean.class);
bean.doSomething();
}

private static class MyBean {

public void doSomething() {
System.out.println("Doing something in MyBean");
System.out.println(Hex.encodeHexString(
"ONE".getBytes(StandardCharsets.UTF_8)));
System.out.println(Hex.class.getProtectionDomain()
.getCodeSource()
.getLocation());
}
}
}

Output


. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/

:: Spring Boot :: (v4.1.1)

2026-10-13T08:53:42.144-05:00 INFO 25928 --- [nExample.main()] c.logicbig.example.ApplicationExample : Starting ApplicationExample using Java 25 with PID 25928 (D:\LogicBig\example-projects\spring-boot\spring-boot-parent-pom-import\target\classes started by joe2 in D:\LogicBig\example-projects\spring-boot\spring-boot-parent-pom-import)
2026-10-13T08:53:42.149-05:00 INFO 25928 --- [nExample.main()] c.logicbig.example.ApplicationExample : No active profile set, falling back to 1 default profile: "default"
2026-10-13T08:53:43.277-05:00 INFO 25928 --- [nExample.main()] c.logicbig.example.ApplicationExample : Started ApplicationExample in 1.843 seconds (process running for 5.541)
Doing something in MyBean
4f4e45
file:/C:/Users/Joe/.m2/repository/commons-codec/commons-codec/1.21.0/commons-codec-1.21.0.jar

pom.xml:

<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>com.logicbig.example</groupId>
<artifactId>spring-boot-parent-pom-import</artifactId>
<version>1.0-SNAPSHOT</version>
<properties>
<maven.compiler.release>25</maven.compiler.release>
</properties>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>4.1.1</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>commons-codec</groupId>
<artifactId>commons-codec</artifactId>
</dependency>
</dependencies>
</project>
Original Post




In this example we are using spring-boot-starter and commons-codec dependencies. We are also changing versions in pom properties.

package com.logicbig.example;

import org.apache.commons.codec.binary.Hex;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.Bean;
import java.nio.charset.StandardCharsets;

@SpringBootApplication
public class ApplicationExample {
@Bean
public MyBean myBean() {
return new MyBean();
}

public static void main(String[] args) {
ApplicationContext ctx =
SpringApplication.run(ApplicationExample.class, args);
MyBean bean = ctx.getBean(MyBean.class);
bean.doSomething();
}

private static class MyBean {

public void doSomething() {
System.out.println("Doing something in MyBean");
System.out.println(Hex.encodeHexString(
"ONE".getBytes(StandardCharsets.UTF_8)));
System.out.println(Hex.class.getProtectionDomain()
.getCodeSource()
.getLocation());
}
}
}

Output


. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/

:: Spring Boot :: (v4.1.1)

2026-10-13T03:03:21.238-05:00 INFO 10272 --- [ main] c.logicbig.example.ApplicationExample : Starting ApplicationExample using Java 25 with PID 10272 (D:\LogicBig\example-projects\spring-boot\boot-overriding-properties\target\classes started by joe2 in D:\LogicBig\example-projects\spring-boot\boot-overriding-properties)
2026-10-13T03:03:21.240-05:00 INFO 10272 --- [ main] c.logicbig.example.ApplicationExample : No active profile set, falling back to 1 default profile: "default"
2026-10-13T03:03:21.570-05:00 INFO 10272 --- [ main] c.logicbig.example.ApplicationExample : Started ApplicationExample in 0.565 seconds (process running for 0.78)
Doing something in MyBean
4f4e45
file:/C:/Users/Joe/.m2/repository/commons-codec/commons-codec/1.18.0/commons-codec-1.18.0.jar

pom.xml:

<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>4.1.1</version>
<relativePath></relativePath>
</parent>
<groupId>com.logicbig.example</groupId>
<artifactId>boot-overriding-properties</artifactId>
<version>1.0-SNAPSHOT</version>
<properties>
<java.version>25</java.version>
<commons-codec.version>1.18.0</commons-codec.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>commons-codec</groupId>
<artifactId>commons-codec</artifactId>
</dependency>
</dependencies>
</project>
Original Post




See Also

Join