"I'm interested in Spring Boot, but it seems difficult."
"Where do I start when creating a business system?"
For those who have such concerns.
In this article,Java×Spring Boot business inventory management systemThe steps to build it from scratch are as follows:
Explanations that are easy to understand even for beginnersI will.
Including linking with MySQL and data storage processing,Basic methods that can be used on-siteYou can learn.
- What can you do with Spring Boot?
- Project configuration and preparation
- Database and Entity Design
- Implementing Data Operations: Repositories and Controllers
- Common errors and solutions
- Application functions and advanced examples
- Summary of the completed configuration
- Summary: You can create your own business systems
What can you do with Spring Boot?
Meet the requirements for a business system
Conclusion: Spring Boot allows you to create business applications efficiently and safely.
The business system needs the following:
- Registering, editing, and deleting data (CRUD function)
- Connecting to a database (e.g. MySQL)
- Stable routing structure
- Code reusability and maintainability
Spring Boot provides a mechanism to build these elements in a short time.
GovernmentInformation System Construction StandardsBut there is a need for a robust and maintainable design.
(Reference: Digital Agency https://www.digital.go.jp/policies/cloud-by-default/)
Project configuration and preparation
First, create a project with Spring Initializr.
Conclusion: Create a basic configuration on the official site and set up MySQL connection.
Preparation steps:
- Visit https://start.spring.io/
- Select the following settings:
- Project: Maven
- Language: Java
- Dependencies: Spring Web, Spring Data JPA, MySQL Driver
- After downloading, extract it in your favorite IDE (e.g. IntelliJ, VSCode)
next,application.properties
Set it as follows:
1 | spring.datasource.url=jdbc:mysql://localhost:3306/inventory_db spring.datasource.username=root spring.datasource.password=password spring.jpa.hibernate.ddl-auto=update spring.jpa.show-sql=true |
Database and Entity Design
Map a MySQL table to a Java class
Bottom line: Create Java classes to match your table structure.
Example: Product table "products"
1 | CREATE TABLE products ( id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(100), price INT ); |
Entity class (Product.java)
1 | import jakarta.persistence.*; @Entity public class Product { @Id @GeneratedValue (strategy = GenerationType.IDENTITY) public int id; public String name; public int price; } |
Implementing Data Operations: Repositories and Controllers
Allows you to list, register and delete product information
Conclusion: Using JPA functions, you can operate without writing SQL.
Repository interface (ProductRepository.java)
1 | import org.springframework.data.jpa.repository.JpaRepository; public interface ProductRepository extends JpaRepository {} |
Controller (ProductController.java)
1 | import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.util.List; @RestController @RequestMapping ( "/products" ) public class ProductController { @Autowired private ProductRepository repo; @GetMapping public List list() { return repo.findAll(); } @PostMapping public Product add( @RequestBody Product p) { return repo.save(p); } @DeleteMapping ( "/{id}" ) public void delete( @PathVariable int id) { repo.deleteById(id); } } |
Common errors and solutions
Here are some common errors and how to fix them
- Error: Unknown database 'inventory_db'
→ Solution: Log in to MySQL,CREATE DATABASE inventory_db;
Run - Error: Access denied for user 'root'@'localhost'
→ Solution:application.properties
Check that the password and user name are correct. - Error: Entity class not recognized
→ Solution:@EntityScan
Check annotations and correct package configuration
Application functions and advanced examples
Meet commercial-level requirements
Additional features can easily be implemented, such as:
- Update function (
PUT
Adding a method - Input value check (
@Valid
and validation annotations) - Login function (Spring Security)
- Pagination support (
Pageable
use)
Summary of the completed configuration
1 | src/ ├─ Product.java ├─ ProductRepository.java ├─ ProductController.java └─ application.properties |
Example of operation check URL:
- GET http://localhost:8080/products
- POST http://localhost:8080/products
- DELETE http://localhost:8080/products/{id}
Summary: You can create your own business systems
In this article,MySQL-linked business system using Java and Spring BootI explained how to build it.
What I learned:
- Spring Boot project configuration and startup method
- Database operations with JPA
- Basic implementation of REST API
By further developing this technology, it will be possible to develop apps that can be used in practical applications.
please,Custom business systemTry building it!