Backend Development 47 min read

Comprehensive Spring Boot Tutorial: Configuration, Logging, MVC, Data Access, Docker, and Custom Starters

This tutorial provides an in‑depth guide to Spring Boot covering core concepts such as project setup, configuration files, logging frameworks, MVC architecture, CRUD examples, error handling, embedded servlet containers, Docker integration, JDBC/MyBatis/JPA data access, startup process, and how to create custom starter modules.

Rare Earth Juejin Tech Community
Rare Earth Juejin Tech Community
Rare Earth Juejin Tech Community
Comprehensive Spring Boot Tutorial: Configuration, Logging, MVC, Data Access, Docker, and Custom Starters

This article is a step‑by‑step technical guide for developers who want to master Spring Boot, a popular Java backend framework. It begins with project initialization, showing how to add the <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> dependency and configure application.properties for the data source.

Key configuration topics include enabling automatic configuration, customizing the embedded servlet container, and using spring.datasource.type=com.alibaba.druid.pool.DruidDataSource to switch to Druid. The guide also explains how to set up logging with Logback or Log4j2, providing examples of logging.file.name=my.log and pattern definitions.

The MVC section demonstrates creating a @Controller with request mappings, using Thymeleaf templates, and configuring view resolvers. It also covers interceptor implementation for login checks and static resource handling.

For data access, the tutorial covers three approaches:

JDBC with JdbcTemplate and automatic schema creation via spring.sql.init.mode=always .

MyBatis integration, showing how to annotate mappers with @Mapper or use XML mapper files, and enabling camel‑case mapping with a ConfigurationCustomizer .

JPA/Hibernate usage, defining an @Entity class, a JpaRepository interface, and configuring spring.jpa.hibernate.ddl-auto=update . The article also explains error handling with BasicErrorController , customizing error pages, and returning JSON error responses. Docker integration is covered by describing how to install Docker, pull images (e.g., docker pull tomcat ), run containers with port mapping ( docker run -d -p 8080:8080 tomcat ), and manage containers. Finally, the guide outlines the Spring Boot startup sequence, the role of SpringApplication.run , the event listener mechanism, and how to create custom starter modules by providing an auto‑configuration class, a properties class, and registering the starter in META-INF/spring.factories .

backendJavadockerConfigurationLoggingSpring BootMyBatisJPA
Rare Earth Juejin Tech Community
Written by

Rare Earth Juejin Tech Community

Juejin, a tech community that helps developers grow.

0 followers
Reader feedback

How this landed with the community

login Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.