Data Structures Even Dolphins Understand (with Java)
dackkuck
$26.40
Beginner / Java, data-structure
5.0
(1)
Build your coding skills by implementing data structures in Java from the ground up.
Beginner
Java, data-structure
Practical course to master Spring Boot 3 + PostgreSQL 17 + JPA + MyBatis + Spring Security all at once!
63 learners
Level Basic
Course period Unlimited
Spring Boot
Spring MVC
Spring Security
Interceptor
MyBatis
JPA
# Spring Boot, JPA, mybatis, PostgreSQL, Spring Security
– Common design for server development that becomes stronger in practice –
A practical lecture that will help you conquer Spring Boot 3 + PostgreSQL 17 + JPA + MyBatis + Spring Security at once!
Rather than simply following along, you will develop common design skills and problem-solving abilities that can be applied anywhere in the field.
For those who want to learn by creating a Spring Boot project themselves
For those looking for design tutorials as well as coding tutorials
Anyone who wants to learn realistic backend flow from environment settings to security, exception handling, and logging.
Anyone who wanted to try both JPA and MyBatis
For those who want to understand “why it is written this way” rather than abstract explanations
Those who want to design according to their own standards and have a strategy , rather than being dragged around by specific languages, frameworks, and REST API conventions
Understanding and implementing Web MVC architecture
Managing configuration files, configuring Bean/Config
Spring Security Login/Authorization Custom
Common model design
Replacing ? Parameters in MyBatis SQL Logging with Binding Parameters using SQL Interceptor
Tracking requests, responses, and viewNames with handler interceptors
Custom exceptions/code design
Tracing custom exceptions with exception handlers
Processing success responses and returning exception codes and exception messages in failure responses
Error debugging strategies (IDE debugger, log tracing, developer tools)
The power to directly implement necessary functions rather than simply relying on them
Create your own DB metadata management system
(Including schema/domain/term/table meta management functions)
Experience configuring actual admin UI layouts
Manage the creation, modification, and deletion of physical tables as well as the management of the project's logical domains.
Replacing the ? parameter in logging JPA auto-generated queries with binding parameters
→ Introducing AOP and p6spy
Using Id as a sequence strategy
→ Use sequence strategy to run in parallel with MyBatis
Common entities and common models
→ Implementation of common entity for common processing of constructor modifier creation date and time modification date
→ Process within common entity to prevent circular reference of toString of all entities.
→ Processing within a common entity so that all entities can be converted to a common model
(Learn strategies to serialize only the fields required for each service through common model transformation and avoid lazy loading N+1 problem.)
JPA bidirectional mapping, single-item mapping, multi-item mapping
→ Learn the criteria for selecting bidirectional and unidirectional mapping based on data modeling
→ Don't memorize @OneToOne, @ManyToOne, @OneToMany. (Single-item mapping, multi-item mapping)
JPA loading strategy, paging, N+1 solution practical application
→ Depending on the loading strategy, N+1 is no longer a problem but is understood as a phenomenon.
Understand the nature and limitations of JPA
→ You will also learn strategies for running MyBatis in parallel when “JPA alone is not enough.”
Managing environment-specific profiles (.properties, .env)
Setting up console/file logs and defining patterns
Logging Spring Boot Server Startup Time
If you follow along step by step, you will soon have a completed, practical project in your hands.
Basics + Practice + Problem Solving + Practice = Living Developer Skills
Recognize the limitations of REST APIs , learn to think beyond semantics, and design code-like URLs optimized for identifiability and traceability, and use them in handler interceptors and logback.
Rather than simply using URLs as sentences to describe requests, we extend the design approach to include an identifier that has domain meaning and is easy to change and track .
I'll explain based on Windows, but the OS doesn't really matter.
I use Spring Boot 3, PostgreSQL 17, and the DB tool is pgAdmin 4.
I provide a todolist.md file and a completed project for each section so you can follow along step by step.
Java and JSP
SQL
JavaScript
Who is this course right for?
Person wanting to learn domain-based Spring Boot server implementation, not layer-based.
Someone who wants to learn the implementation of a logging interceptor with variable binding for native queries.
A person who wants to learn maintainable project structures and strategies
Someone who wants to learn how to maintain project consistency
Person who wants to learn how to use Java comments and logging in practice
Need to know before starting?
Java
SQL
JSP
All
146 lectures ∙ (25hr 5min)
Course Materials:
All
3 reviews
5.0
3 reviews
Reviews 16
∙
Average Rating 5.0
5
Thank you for releasing such a massive volume at an affordable price. I hope you will create a lecture on implementing payment functions with Spring Boot in the future. I will leave another review after taking the course.
Hello, this is Ttagkkuk. Thank you for purchasing and listening to my lecture. It would be difficult to create a lecture on implementing payment functionality with Spring Boot right away, so I will share my knowledge in writing. For toy project level payment functionality, I recommend using I'mport. Payment involves integration with an external API, and the success and failure logic after payment authentication is important. Validation during the authentication process should always be implemented on the server. If the amount comparison fails, you should follow the failure logic to restore the product quantity and used coupons, and then go to the order failure page. If the validation passes, you should go to the order success page and be able to cancel the order from the My Page. Order cancellation should also restore the product quantity and used coupons. Payment functionality is important for integration, but validation and recovery logic are key!
Reviews 2
∙
Average Rating 5.0
Reviews 5
∙
Average Rating 5.0
Check out other courses by the instructor!
Explore other courses in the same field!
25% off for new members
$32.90
25%
$42.90