Inflearn brand logo image
Inflearn brand logo image
Inflearn brand logo image
BEST
Programming

/

Back-end

Spring DB Part 2 - Data Access Utilization Technology

You can utilize and complete the DB data access technology required for backend development. You can understand the principles and structure of Spring DB access technology and grow into a more in-depth backend developer.

(5.0) 572 reviews

16,376 learners

  • yh
Spring
MVC
spring-jpa
JPA
querydsl

Reviews from Early Learners

What you will learn!

  • Internal principles of using DB through Spring

  • Various ways to use DB through Spring

  • Spring DB Access Technology

Must-know for backend developers
Spring Data Access Technology Part 2

📣 Please check!
This lecture is the seventh in the "Complete Java Spring Mastery" series . First, check out the Spring Mastery Roadmap from Woowa Brothers' youngest technical director, Kim Young-han.
• Roadmap link: https://www.inflearn.com/roadmaps/373 (click to go directly)

Kim Young-han's Spring DB
Perfecting data access techniques

To properly develop a backend web application, you need to master two major pillars: HTTP-based MVC and database-based data access technology. Having mastered HTTP and Spring MVC in the previous lecture, we now need to master the remaining pillar: Spring DB data access technology.

✅ Please check the player's knowledge.

Please check if you understood the principles and structure of Spring DB through the previous lecture, <Spring DB Part 1> .

1. Understand the basic principles of Spring Data access technology.
2. Developed directly with code used in practice


Through Part 1 of the Spring DB course, we've learned the core principles and structure of database access technology. In Part 2 of the Spring DB course, we'll build on the foundations of Part 1 and learn various practical applications. Part 2 is broadly divided into three parts.

1) Understanding various data access technologies

You'll learn a variety of data access technologies commonly used in practice, such as JdbcTemplate, MyBatis, JPA, Spring Data JPA, and Querydsl, gradually developing them through real-world examples. This process will help you understand the necessity of each technology and its strengths and weaknesses as you develop code.

2) Data access technology and testing

Data access technologies are ultimately used to manage data in a database. Therefore, it's crucial to ensure that the technology can properly store and retrieve data in the actual database. This lecture will step-by-step explain how to conduct testing in situations where databases are linked.

3) Deep understanding of Spring transactions

In Part 1 of Spring DB, we explored the internal principles of Spring's transaction functionality, why it's necessary, and how it works. In this lesson, we'll delve deeper into Spring transactions and explore practical applications.

  • Practical Precautions When Using Transaction AOP
  • Various options for Spring transactions
  • Exception handling and the internal principles of how Spring transactions are committed and rolled back.
  • Transaction propagation options and internal workings

Course Objectives

  • Objective: The goal of this course is to master the vast database data access skills required to develop practical backend applications.
  • From Basics to Practice: While this course contains extensive content for practical development, it's structured in a step-by-step manner so that even developers without web application development experience can easily adapt. Please note that you should first complete Spring DB Part 1 before completing Spring DB Part 2.
  • Focused on practical examples: Learn the data access techniques needed to develop backend applications with Spring in a natural way through examples, and learn best practices from the field.
  • Conciseness: We've boldly excluded outdated features that aren't used in practice. We'll focus on the most current and relevant features.

Lecture contents

Data Access Technology - JdbcTemplate

When working directly with SQL, Spring's JdbcTemplate is a great choice. This technology makes using JDBC very convenient and handles most of the repetitive tasks associated with direct JDBC use.
* Developers only need to write SQL, define parameters to pass, and map response values.
* Understand the pros and cons of JdbcTemplate by applying it to a real-world web application.

Data Access Technology - MyBatis

MyBatis offers more features than the JdbcTemplate described above. Compared to JdbcTemplate, MyBatis's most attractive feature is its ability to conveniently write SQL in XML and to create dynamic queries. In this lecture, you'll learn about the advantages and disadvantages of this technology by directly applying MyBatis code to a live web application.

Data Access Technology - JPA

Spring and JPA are leading technologies in the Java enterprise market. While Spring provides a variety of application-wide features, including a DI container, JPA provides ORM data access technology. While JPA is as extensive as Spring and presents a significant learning curve, once mastered, it can significantly improve productivity in data access. This article explores the basic features of these technologies, their respective pros and cons, and the overall picture, highlighting why they should be used.

Data Access Technology - Spring Data JPA

Spring Data JPA is a technology that makes JPA more convenient to use. Simply put, it provides all the basic CRUD functionality, dramatically reducing the amount of code developers need to write. In this course, you'll learn about the strengths and weaknesses of this technology by directly applying Spring Data JPA to a working web application.

Data Access Technology - Querydsl

JPA struggles with complex or dynamic queries. Querydsl provides a convenient solution to this problem. It's a must-have technology for anyone using JPA in practice. In this course, you'll learn about the strengths and weaknesses of Querydsl by directly applying it to a working web application.

Data Access Technology - Testing

Data access technologies are ultimately used to manage data in a database. Therefore, it's crucial to ensure that the data access technologies can properly store and retrieve data in the actual database. This lecture will step-by-step explain how to conduct testing in situations where databases are connected. For example, we'll explain how to structure tests that connect to a database, and we'll explore the operation of @Transactional and embedded mode DBs through code.

Understanding Spring Transactions

In Part 1 of DB, we explored the necessity of Spring's transaction features and the underlying principles of their operation. This time, we'll delve deeper into the various features offered by Spring transactions, including practical considerations for using Spring Transaction AOP, various Spring transaction options, and the internal principles of how Spring transactions commit and rollback when exceptions occur.

Spring Transaction Propagation

This course covers Spring's transaction propagation in depth. It covers why transaction propagation is necessary, various transaction propagation options, exception handling based on propagation options, and considerations for using transaction propagation options in practice.


knowledge sharer
A word from Kim Young-han

Backend developers must master two major pillars: MVC and database access technology. I will help you master these two pillars and grow into a solid backend developer. Thank you.


Lecture order


Related Roadmap

Spring Complete Conquest Series
Getting Started with Spring: From Core Principles to Practical Applications
Complete mastery of Spring Boot + JPA practices
In-depth learning through creating web apps using the latest practical technologies

Recommended for
these people

Who is this course right for?

  • Developers who want to access DB and manage data through Spring

  • Developer job seeker

  • Working developers who want to deeply understand Spring DB access technology

  • Developers who want to create web applications with Spring

Need to know before starting?

  • Java language

  • Spring Basics

  • DB Basic Knowledge

Hello
This is

549,846

Learners

35,763

Reviews

8,944

Answers

5.0

Rating

24

Courses

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

 

저의 개발 인생 이야기

EO 인터뷰 영상

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

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

 

Curriculum

All

88 lectures ∙ (13hr 59min)

Course Materials:

Lecture resources
Published: 
Last updated: 

Reviews

All

572 reviews

5.0

572 reviews

  • gusdn855542301님의 프로필 이미지
    gusdn855542301

    Reviews 2

    Average Rating 5.0

    5

    98% enrolled

    Hello, Younghan! I started studying in July of last year, and after 1 year and 4 months, I finally listened to all of Younghan's lectures (except for the boot lecture). While listening to each lecture, I decided to listen to DB Part 2 and write a proper course review, and I'm finally able to write one. When I was feeling lost studying development as a non-major, I think I was able to grow by listening to Younghan's lectures. I worked on several projects through the lectures, and studied the CS I lacked through study. I will tell you about the characteristics of Younghan's lectures, who listened to all of Spring and Jpa's lectures. Let me tell you about the characteristics of Younghan's lectures. In order to learn the 5 steps, he teaches you step by step from step 1. If you know step 5 without knowing steps 1-3, if you learn steps 1-3 through the lectures, you will know why step 5 came out like this. I always listened to it without knowing, so I was always amazed when I saw the code evolving, thinking, "Technology has developed this much." (The reason there can be new technologies is because there are technologies from the past.) And I think that it is more effective to watch Younghan's lectures multiple times. For example, if you listen to the Spring Basics lecture, then the Spring MVC lecture, and then listen to the Spring Basics lecture again, your perspective will be broader than when you first listened to it. That's why I think I listened to JPA Basics 2-3 times (because it's difficult). For those of you who are considering Younghan's lectures, I hope you read this article and think about it. Oh, and lastly, thank you so much for the supporters' QnA answers! Whenever I didn't know something, I always solved it by Googling or QnA. Good luck to you all. Thank you for reading the long article.

    • yh
      Instructor

      gusdn85554, you understand it step by step very well. And as you said, reviewing is also very important. I'm rooting for you!

  • ho2ast님의 프로필 이미지
    ho2ast

    Reviews 14

    Average Rating 5.0

    5

    100% enrolled

    Hello, Professor. I finished this lecture as well. I followed the roadmap for about a year, listening to lectures after work and on weekends, but now only the last chapter of the grand finale is left. I am so grateful that you always explain the background of the technology and why it is used so that anyone can understand it, and try to convey at least one more thing. Sometimes I see the professor's computer time while watching the lecture. Sometimes it is a number, and sometimes it is a clock shape, so I thought that he was hiding it on purpose. Hahaha. Anyway, watching you film lectures at various times from early evening to dawn, I often reflected on myself, thinking, "The professor is filming such great lectures so diligently, but am I working that hard?" You provided such great lectures and gave me generous advice as a senior developer, so it was a year of time where I was able to gain motivation not only for technical learning but also for life. I think I will be able to maintain this system well and develop happily in the future. Thank you.

    • yh
      Instructor

      Dear Seonhanyeonggwangryeok Developer, thank you for always listening to me diligently and leaving frequent course reviews. Since you said you've been together for a year, I feel like I've done something together, so it's more rewarding. I've been spending more time lately, so I can focus more on the lectures, thanks to the students who sometimes talk to me^^

  • ballgaveship1247님의 프로필 이미지
    ballgaveship1247

    Reviews 10

    Average Rating 5.0

    5

    100% enrolled

    Honestly, those who don't know the contents of Spring DB 1 and 2 are building a tower on top of their thoughts. If you don't know even one thing about the table of contents, definitely listen to it! Listen twice

    • yh
      Instructor

      Thank you so much for listening so diligently, Mr. Uzza!!

  • impati0716님의 프로필 이미지
    impati0716

    Reviews 11

    Average Rating 5.0

    5

    100% enrolled

    I'm learning a lot. Thank you always.

    • yh
      Instructor

      Mr. Choi Jun-young, thank you for listening so diligently. I also feel rewarded. Thank you.

  • chlxogns928264님의 프로필 이미지
    chlxogns928264

    Reviews 17

    Average Rating 5.0

    5

    100% enrolled

    It's awesome :) It's the best lecture. I learned a lot while listening to the lecture and I'm using it well in my work. I'm planning to listen to the practical lecture as well, and I'm looking forward to the Spring Boot lecture.

    • yh
      Instructor

      Thank you, Hoon, for listening so intently. Fighting until the end.

$77.00

yh's other courses

Check out other courses by the instructor!

Similar courses

Explore other courses in the same field!