BEST

Real-world! Spring Boot and JPA Utilization 1 - Web Application Development

With a practical example, we will design and develop a web application using Spring Boot and JPA. Through this process, you will understand how to use Spring Boot and JPA in practice.

(5.0) 2,186 reviews

25,360 students

Java
Spring
Web Application
Spring Boot
JPA
Thumbnail

This course is prepared for Basic Learners.

What you will learn!

  • You can develop Java web applications in practice using Spring Boot and JPA.

  • Understand the best way to leverage Spring Boot and JPA.

  • You can understand and design domain models.

  • Understand domain-driven design.

Spring Boot, if you want to use it well in practice?
Experience in-depth design and development.

🚩 This course is a roadmap course.

  • This lecture is the first lecture that starts the practical course of Java backend development. Please check the Spring Boot and JPA practical complete conquest roadmap first. (Link)

Practice! Using Spring Boot and JPA

Spring Boot helps to make the complex and difficult Spring Framework simple and easy to use. Adding the powerful ORM technology provided by JPA to this, you can develop web applications agilely while maintaining high productivity. For these reasons , developing web applications using Spring Boot and JPA is a global trend in the Java camp.


Course Objectives

Even if you know Spring Boot and JPA, designing and developing web applications using these technologies in practice is a completely different matter. Web applications usually go through the following development process.

General web application development process

  • Requirements Analysis
  • Domain and table design
  • Architecture composition
  • Developing core business logic
  • Web Layer Development
  • test
  • Performance Optimization

This course goes beyond simple examples like bulletin boards and uses difficult examples that can reproduce complex situations in practice. And it goes through all the processes in order, from requirements analysis to design, development, testing, and performance optimization. By designing and developing a web application from start to finish with such practical examples , you can naturally learn the correct way to use Spring Boot and JPA in this process. And you will understand how to use these technologies in practice. In particular, you can learn and apply performance optimization methods that are important in practice step by step.

The entire course consists of two parts: Part 1, designing and developing web applications, and Part 2, developing APIs and optimizing performance. This course is the first of the two.

👨‍💻 Please note before taking the class!

  • Part 2 API development and performance optimization is a separate lecture , and a link is provided in [Related Lectures] below.

Learning Process

Part 1 - Web Application Development

Complex examples close to real-world practice , coded from start to finish!

Part 1 designs and develops a simple web application with member, product, and order domains.
The order of progression is as follows:

  • Project Configuration: Create a project and configure the project environment so that Spring Boot, JPA, Thymeleaf view templates, Lombok, and the database work properly.
  • Domain Analysis Design: Analyze requirements and design domains and tables. Once domain and table design is complete, create entity classes using JPA and map entity classes and tables.
  • Domain Development: Develop core business logic for the member, product, and order domains, and create test cases to verify them.
  • Web layer development: Develop controllers and view templates (Thymeleaf) to operate the configured domain in a web environment. You can check the actual operating screen.

Part 2 - API Development and Performance Optimization

Recently, rather than using view templates to directly create HTML on the server and respond, it is common to load JSON data into an API and return it. The goal of this article is to understand the points to keep in mind and the correct design direction when developing an API using Spring Boot and JPA, and to complete the API while considering performance.

Part 2 develops a REST API that can be used externally based on the domain created in Part 1. And then, we step by step optimize the performance of the API for querying. Through this process, we will quickly and clearly explain the parts related to JPA query tuning that are essential in practice.

  • API Development Basics: Develop a basic REST API for registration, modification, and inquiry.
  • Advanced API Development: We will inform you of the precautions and correct design direction when developing APIs for querying with JPA in practice. We will solve JPA lazy loading issues and explain various performance optimization methods step by step.
  • Essential Optimizations for Practice: Covers the things that can lead to practical problems if not used carefully when using Spring Boot and JPA.

How to learn

This course is mostly hands- on, so you'll get the most out of it if you follow the course from start to finish and code on your own .

Please note that this lecture does not explain Spring Boot or JPA in detail. The goal is to help those who have some knowledge of these technologies to make the most of them and create web applications in practice . Therefore, it is recommended that you take this lecture with a basic understanding of Spring or JPA. However, even if you do not know Spring or JPA well yet, if you follow along to the end, you will be able to get a general sense of how to develop and complete web applications in Java. After that, you can learn by filling in the basic technologies that you think you lack.


Related lectures

Basics

Java ORM Standard JPA Programming - Basics
This is a prerequisite course for understanding JPA-based technologies.

Usage section

Practice! Spring Data JPA
Learn Spring JPA from basics to practice.

Practice! Querydsl
Solve complex and dynamic query problems with Querydsl.

reference book

The book is for those who want to study more in depth.
You can think of it as a reference book.
(If you do not have a book, separate materials for the lecture will be provided.)


Recommended for
these people!

Who is this course right for?

  • For those who use Spring Boot and JPA in their work but want to get better use out of the technology

  • I have heard of technologies like Spring Boot or JPA, but I want to know how to best utilize them.

  • If you don't know much about Spring Boot and JPA, but want to get a feel for Java web application development by following examples from project setup to actual web application development.

Need to know before starting?

  • JAVA language

  • Spring Framework

  • Relational database basics

  • JPA

Hello
This is yh

502,016

Students

31,356

Reviews

8,780

Answers

5.0

Rating

22

Courses

진짜 실무에 필요한 제대로 된 개발자가 될 수 있도록, 교육하는 것이 저의 목표입니다.

 

저의 개발 인생 이야기

EO 인터뷰 영상

개발바닥 - 시골 청년 개발왕 되다

취업과 이직에 대한 고민 해결

 

More

Curriculum

All

36 lectures ∙ (7hr 44min)

Course Materials:

Lecture resources
Published: 
Last updated: 

Reviews

All

2,186 reviews

5.0

2,186 reviews

  • 2010psw0704

    Reviews 1

    Average Rating 5.0

    5

    100% enrolled

    Every time I think about what the content is being explained, the additional explanations come out, and I understand every moment of the lecture It's like TMI, but it's a detailed lecture where everything is foreshadowing Every time I listen to the explanation, I look forward to the next lecture A lecture that makes me want to watch it instead of thinking about playing after work When you were promoting the book at the beginning, I was like ㅋㅋㅋㅋ, but a lecture that makes me increasingly curious about the contents of the book A lecture that can inherit Younghan(?) A legendary lecture that says that Infraon got faster after this lecture was uploaded It was an engaging lecture. I'll buy the next lecture It's the first time a lecture is fun Please give me more lectures... Hurry upㅠㅠ

    • yh
      Instructor

      Wow! I got caught saying that everything is foreshadowing ㅋㅋㅋㅋㅋ When I prepare for a lecture, I actually organize it meticulously? ㅋㅋㅋ I will prepare other lectures diligently as well. Thank you. 2010psw^^

  • omg

    Reviews 205

    Average Rating 5.0

    5

    100% enrolled

    I completed the first part of the basics and the first part of the usage. I remember bursting out laughing when the alignment didn't work while copying and pasting using the command of pressing the command key twice, saying "Seoul dialect failure! x", and I thought the lecture content was very informative. Now, I think I have to learn the know-how of extreme performance optimization in the next lecture! See you in the next review! ㅎㅎ

    • yh
      Instructor

      Wow~~ Why are there so many hearts on this course review? ㅋㅋ Thank you for the fun course review that makes me laugh too ㅋㅋ

  • unialto1931

    Reviews 1

    Average Rating 5.0

    5

    14% enrolled

    "I can develop with Spring Boot + JPA too." It's great! It's like a real-life situation where a guy from the countryside teaches you while developing right next to you. "Seeing once is better than hearing a hundred times!"

    • yh
      Instructor

      Thank you, unialto. I tried the Seoul dialect patch several times but it failed and rolled back. LOL If you have any questions, feel free to ask anytime^^

  • daycoding

    Reviews 24

    Average Rating 4.6

    5

    100% enrolled

    After completing the 6-month national academy for Spring Framework Mybatis, I joined a company that uses Spring FrameBoot JPA. At first, I searched CRUD on Google and studied it in a haphazard manner. I was really lost and had a hard time. So, if I had known about this lecture first, I think it would have been really good. For those who are new to JPA, this is the best lecture I've ever seen. 1. The content is rich. 2. The explanation is detailed. I'll watch this lecture twice more, and when I understand the source code, I'll buy the book and get the basics. Thank you for uploading a good lecture.

    • yh
      Instructor

      Thank you, Kang Programmer, for your great praise^^ You are truly a passionate person. Thank you for explaining the parts that I had difficulty with in Q&A, so that it is easy to help others. If you have any questions in the meantime, please feel free to ask me anytime^^!

  • jojoldu

    Reviews 3

    Average Rating 5.0

    5

    8% enrolled

    I think this is a good lecture to learn various concepts that a good backend structure should have while actually creating a service :) I recommend this to those who are hesitant about how to start a project after studying Spring and JPA :)

    • yh
      Instructor

      Thank you, Hyangro^^ I support you.

yh's other courses

Check out other courses by the instructor!

Similar courses

Explore other courses in the same field!

$68.20