You can understand and perfect the basics of 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.
Must-know for backend developers Spring Data Access Technology Part 1
📣 Please check! This lecture is the sixth 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)
Data access technology
Most modern applications are web applications, operating in a web environment. Simply put, web applications perform three main functions .
In the previous Spring MVC lecture, we learned how to receive and process client requests. This time, we'll delve deeper into the next step : services that perform business logic and repositories that store and manage the results in a database .
The function that receives and processes client requests uses Spring MVC. The function that executes business logic is written in pure Java code. Finally, the function that stores and manages the results in a database utilizes a variety of technologies, including JDBC, JdbcTemplate, MyBatis, and JPA. Furthermore, using the database data access technology provided by Spring, these technologies can be integrated with Spring for extremely convenient use.
Why You Need to Master Data Access Technologies
Storing and managing data in a database within an application requires learning a variety of data access technologies. The three main reasons why learning these data access technologies can be difficult are as follows:
1. Weak database knowledge.
All data access technologies are designed to store and manage data in a database. Therefore, a basic understanding of databases is required. Before taking this course, we recommend that you familiarize yourself with the basics of databases and SQL.
2. Data access technologies are too diverse.
There are a truly diverse range of data access technologies, from JDBC and SQL mappers like JdbcTemplate and MyBatis to cutting-edge ORM technologies like JPA, Spring Data JPA, and Querydsl. With so many technologies available, it can be difficult to clearly understand and use their pros and cons, as well as the appropriate use case for each.
3. The history of data access technology is too old.
Data access technology, starting with JDBC, has been around for over 20 years. Over this time, not only has data access technology evolved, but Spring has also developed and improved numerous features to make these technologies more convenient to use. As a result, too much has been automated and abstracted. Backend developers, especially those just starting out, often don't understand the exact reasons behind why data access technologies work the way they do, and simply rely on usage patterns. Even if they ask themselves, "Why use it this way?", it's difficult to fully understand the context of past inconveniences that led to the current improvements and implementation.
Lecture Features
If you know why you are using 'why', you can use it accurately.
This course takes you back 20 years. Beginning with JDBC, the birthplace of data access technology, we'll explore connections, connection pools, data sources, transaction concepts, and even Spring-supported data access technologies, building everything with code. You'll explore the reasons behind the development of these technologies and the improvements they've made, and you'll gain a deeper understanding of them through hands-on coding.
And through Part 2, you will also learn data access technologies that are commonly used in practice, such as MyBatis and JPA.
Build a solid foundation
When learning data access technologies, several fundamentals are crucial. This course covers the fundamentals of transactions and Java exceptions, which are widely used in practice but often difficult to learn. You'll also learn how these concepts are applied in practice through code.
Course Objectives
Objective: The goal is to master the data access skills required for backend development.
From Basics to Practice: While it contains a wealth of practical development material, it's structured so that even developers without backend development experience can adapt.
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.
This course doesn't cover everything about data access technologies. It establishes the core framework necessary for data access technologies and then focuses on the essential technologies needed for practical use. By the end of this course, you'll have a solid foundation and can confidently develop Spring backend applications.
Spring DB lecture structure
The Spring DB lecture is divided into parts 1 and 2. This lecture is Spring DB Part 1 - Core Principles of Data Access .
Spring DB Part 1 - Core Data Access PrinciplesCurrent Lecture
Cover the core concepts of data access technology and understand the basic principles of data access technology provided by Spring. Part 1 begins by exploring core concepts of underlying technologies like JDBC, connections, connection pools, data sources, and transactions, which are pure data access technologies without Spring. After establishing this foundation, we delve deeper, step by step, into how Spring data access technology facilitates the use of these features.
Learn various application techniques based on Part 1. You'll learn SQL mapper technologies like JdbcTemplate and MyBatis, as well as cutting-edge ORM technologies like JPA, Spring Data JPA, and Querydsl, understanding their strengths and weaknesses. You'll also delve into data access layer testing methods and the various features of Spring transactions.
Knowledge sharer's One word
Backend developers must master two major pillars: MVC and database access technology. I will work diligently to help you master these two pillars and grow into a successful backend developer. Thank you.
Tôi thường không đăng bài đánh giá trên internet nhưng tôi viết bài này vì tôi đã nhận được rất nhiều sự giúp đỡ.
Giống như các bài giảng khác của người chia sẻ kiến thức, đây là một bài giảng hay không chỉ dựa vào kỹ năng phát triển của bản thân người hướng dẫn mà còn dựa trên sự chuẩn bị kỹ lưỡng. Nó thực sự hữu ích về mặt nội dung, nhưng đây là một bài giảng đặc biệt được khuyến khích vì nó luôn liên quan đến mối quan tâm về cách truyền tải bài giảng tốt dựa trên khán giả.
Vui lòng mở và hiển thị mã nguồn hoặc tài liệu chính thức vào thời điểm thích hợp nhưng chỉ tiến hành khi cần thiết vào thời điểm đó. Như thường lệ, những câu chuyện về trải nghiệm của bạn khi sử dụng nó trong lĩnh vực này cũng rất hữu ích. Tôi đang nghiên cứu công nghệ truy cập DB và nó giúp ích rất nhiều trong việc hiểu các nguyên tắc cơ bản cũng như các câu hỏi chắc chắn sẽ xuất hiện một cách tự nhiên. Điều này đã giúp tôi tiết kiệm rất nhiều thời gian.
Đặc biệt, việc đề cập đến các vấn đề xử lý ngoại lệ thực sự hữu ích. Khi học JDBC, tôi khá bối rối về các trường hợp ngoại lệ.
1. Cung cấp sự hiểu biết vững chắc về khái niệm ngoại lệ Java từ những điều cơ bản.
2. Truyền đạt các xu hướng sử dụng tại hiện trường và đưa ra hướng dẫn rõ ràng về cách sử dụng chúng.
Điều này đặc biệt hữu ích.
Trên thực tế, đã khoảng 8 tháng kể từ khi tôi bắt đầu tự phát triển trò chơi và học qua các bài giảng của Younghan vì tôi chỉ biết làm bảng cửu chương và mỗi bài giảng đều thực sự hữu ích. Đặc biệt, tôi muốn khuyến nghị rằng vì đây là lớp học do người hướng dẫn giảng dạy thông qua mã hóa trực tiếp nên bạn cũng có thể có được kiến thức về cách sử dụng IDE và cách viết mã tốt.
Cảm ơn bạn luôn.
Hanbin Lee, cảm ơn bạn rất nhiều vì đã chăm chỉ học tập và giải thích từng điểm mạnh của bài giảng. Tôi đã suy nghĩ rất nhiều về việc có nên đưa những kiến thức cơ bản về ngoại lệ Java vào đây hay không, nhưng tôi thấy thật bổ ích khi có thể trợ giúp trong lĩnh vực này. Cảm ơn!
Chỉ học ngữ pháp Java và JPA -> Tôi là người tìm việc đã xem tất cả các bài giảng của Younghan theo thứ tự lộ trình mùa xuân. (Có vẻ như thứ tự đã thay đổi nhưng khi tôi bắt đầu thì chỉ có Spring Basics.)
Tôi nghĩ rằng tôi đã đi xa đến mức này mà không gặp nhiều khó khăn vì bạn đã giải thích một cách dễ hiểu những loại vấn đề mà các nhà phát triển cổ xưa gặp phải và cách họ phát triển, ngay cả khi là một lập trình viên lần đầu.
Bài giảng này có thể là do tôi đã nghe phần nâng cao trước đó, nhưng tôi rất thích nghe ý tưởng về cách sử dụng các khái niệm như mẫu, lệnh gọi lại, proxy và AOP khi chúng được giới thiệu. Sau này, khi tạo một hàm, tôi nghĩ mình nên giới thiệu một mẫu nếu gặp phải các vấn đề về mã lặp lại hoặc phụ thuộc. Nếu tôi bắt đầu với một cuốn sách như Projects with Spring, tôi có thể hài lòng với việc chỉ sử dụng Spring, vì vậy tôi nghĩ nên bắt đầu với bài giảng của Younghan :)
Như bạn đã đề cập trong khi chờ đợi DB Phần 2, tôi đang cố gắng vượt qua giai đoạn nghiên cứu để chuyển sang giai đoạn tiếp thu và tôi không chắc nên bắt đầu như thế nào, nhưng tôi dự định làm theo lời khuyên của Younghan và tạo một dự án nhỏ từng bước một . Tất nhiên, bài giảng rất hay, nhưng tôi nghĩ đó là động lực rất lớn để tôi đề xuất hướng đi ở phần cuối. Cảm ơn bạn rất nhiều ^^.
Mingyu, bạn đã học đúng như ý định của tôi ^^!
Nếu bạn là người tìm việc và đã suy nghĩ nhiều về nó, tôi chắc chắn rằng bạn sẽ trở thành một nhà phát triển giỏi khi trở thành một nhà phát triển đang làm việc.
Chúc mừng!
Rất khuyến khích cho những người có mã công ty có nhiều ngoại lệ hoặc những người thiếu khái niệm về giao dịch :)
Cảm ơn bạn đã cung cấp một khóa học đặc biệt tốt giúp cải thiện kỹ năng trung bình của các nhà phát triển back-end trong nước!!
Không chỉ nội dung bài giảng mà cả những câu nói hay trong video vừa rồi đã tiếp thêm cho tôi rất nhiều sức mạnh. Gần đây tôi có cảm giác như mình chỉ học một cách trì trệ sau giờ làm mà không có mục tiêu cụ thể nào cả. Điều này có thực sự đúng không? Đó thực sự không phải là con đường của tôi sao? Rất nhiều phần bực bội mà tôi nghĩ đã được giải quyết đã được giải quyết. Cảm ơn bạn!
KoorunG, cuối cùng thì điều quan trọng nhất là phải làm việc chăm chỉ một cách nhất quán. Tôi cũng cảm thấy được khen thưởng vì đã chăm chỉ chuẩn bị haha.