강의

멘토링

로드맵

Inflearn brand logo image
BEST
Programming

/

Back-end

Spring MVC Phần 2 - Công nghệ tận dụng phát triển web Back-end

Bạn có thể hiểu và hoàn thành tất cả các công nghệ web cần thiết để phát triển ứng dụng web từ những điều cơ bản. Trong MVC Phần 2, bạn có thể tìm hiểu tất cả các kỹ thuật cần thiết để phát triển web thực tế dựa trên các nguyên tắc và cấu trúc cốt lõi của MVC Phần 1.

(5.0) 1,155 đánh giá

24,797 học viên

  • yh
MVC
Spring

Đánh giá từ những học viên đầu tiên

Dịch cái này sang tiếng Việt

  • Công nghệ web phụ trợ Java

  • công nghệ web mùa xuân

  • Mùa xuân MVC

Nếu bạn biết nguyên lý, bạn sẽ thấy được cốt lõi!
Hướng dẫn sử dụng Spring MVC của Kim Young-han 👨‍💻

📌 Vui lòng kiểm tra trước khi tham gia lớp học!

  • Bài giảng này là bài thứ năm trong loạt bài "Hoàn thiện Java Spring". Trước tiên, hãy xem qua Lộ trình Thành thạo Spring của Younghan Kim, giám đốc kỹ thuật trẻ nhất tại Woowa Brothers. (Truy cập)

Các khuôn khổ web phổ biến nhất

Hầu hết các ứng dụng hiện đại là ứng dụng web hoạt động trong môi trường web. Các nhà phát triển back-end Java thường sử dụng Spring MVC khi phát triển các ứng dụng web này. Spring MVC là framework web phổ biến nhất, giúp phát triển nhanh chóng và dễ dàng các ứng dụng web phức tạp.


Tại sao công nghệ web backend lại khó học

Công nghệ web backend Java rất rộng lớn và đòi hỏi phải nghiên cứu chuyên sâu. Đặc biệt, Spring MVC cung cấp chức năng mở rộng và kiến trúc phức tạp. Để thực sự thành thạo các công nghệ web này, trước tiên bạn phải hiểu các nguyên tắc và cấu trúc cốt lõi của Spring MVC, sau đó dựa trên nền tảng đó để lần lượt nắm vững một loạt các công nghệ web .

✅ Vui lòng kiểm tra kiến thức của người chơi.

Vui lòng kiểm tra xem bạn đã hiểu các nguyên tắc cốt lõi và cấu trúc của Spring MVC cần thiết cho phát triển web thông qua bài giảng trước, <Spring MVC Phần 1> hay chưa .

1. Từ công nghệ web Java ban đầu cho đến công nghệ thực tế mới nhất
2. Phát triển khung MVC trực tiếp trong mã


Mục tiêu của khóa học

Cho đến nay, chúng ta đã tìm hiểu về Java backend và các công nghệ dựa trên Spring MVC. Trong bài giảng này, chúng ta sẽ tiếp tục những kiến thức đã học và học các kỹ năng thực hành thiết yếu .

Trong bài giảng <Spring MVC Phần 2>,

Trong Phần 2 của Spring MVC, bạn có thể hoàn toàn chinh phục một loạt các công nghệ sử dụng web như view template , messages , internationalization , validation , cookies , sessions , filters , interceptors , exception handling , type converters , và file uploads , những công nghệ thiết yếu cho việc sử dụng thực tế, thông qua các ví dụ dựa trên Spring MVC đã học ở Phần 1.

Chúng tôi sẽ giúp bạn phát triển nhiều công nghệ sử dụng web thông qua mã ví dụ thực tế trên Spring MVC cùng các nguyên tắc và cấu trúc cốt lõi của nó, đồng thời giúp bạn phát triển thành nhà phát triển web phụ trợ chuyên sâu hơn .

  • Mục tiêu : Mục tiêu của khóa học này là nắm vững tất cả các công nghệ web cần thiết để phát triển các ứng dụng web thực tế.
  • Từ Kiến thức Cơ bản đến Thực hành Web : Mặc dù khóa học này chứa nhiều tài liệu phát triển thực tế, nhưng được thiết kế theo định dạng từng bước để ngay cả những nhà phát triển chưa có kinh nghiệm phát triển ứng dụng web cũng có thể dễ dàng thích nghi. (Bạn nên đọc Spring MVC Phần 1 trước khi học Phần 2.)
  • Từ khái niệm đến ứng dụng : Thay vì chỉ giải thích cách sử dụng công nghệ, chúng tôi giải thích các nguyên tắc cốt lõi và phương pháp ứng dụng về lý do tại sao công nghệ này lại cần thiết và nó ra đời như thế nào.
  • Tập trung vào các ví dụ thực tế : Tìm hiểu tất cả các bước cần thiết để phát triển ứng dụng web với Spring một cách tự nhiên thông qua các ví dụ và chúng tôi sẽ dạy bạn các phương pháp thực hành tốt nhất.
  • Ngắn gọn : Chúng tôi đã mạnh dạn loại trừ các tính năng Spring MVC lỗi thời không còn được sử dụng trong thực tế. Phần giải thích này tập trung vào các tính năng được sử dụng phổ biến nhất trong thực tiễn hiện đại.

Người học được đề xuất

Spring MVC
Nhà phát triển lần đầu

nhà phát triển phần mềm phụ trợ
người tìm việc

Spring MVC chuyên sâu
Các nhà phát triển trong lĩnh vực này muốn hiểu

Ứng dụng web với Spring
Các nhà phát triển muốn tạo ra


Nội dung được đề cập

Bước nhảy thời gian

Thymeleaf là một mẫu giao diện phía máy chủ dành cho các nhà phát triển backend. Với Thymeleaf, các nhà phát triển backend có thể nhanh chóng và dễ dàng tạo HTML động mà không cần một nhà phát triển frontend riêng biệt.

Trong khóa học này, bạn sẽ học mọi thứ từ các chức năng cơ bản của Thymeleaf cho đến tích hợp với Spring và các tính năng quản lý biểu mẫu phức tạp như hộp kiểm, nút radio và hộp chọn, tất cả đều thông qua các ví dụ.

Tin nhắn, Quốc tế hóa

Khi các ứng dụng web ngày càng lớn mạnh và phức tạp hơn, các thông điệp khác nhau mà chúng sử dụng phải được quản lý thống nhất và tại một nơi duy nhất. Ví dụ: việc đổi từ "tên sản phẩm" thành "tên sản phẩm" đòi hỏi phải chỉnh sửa mã nguồn của nhiều tệp. Chức năng nhắn tin của Spring cho phép bạn quản lý và chỉnh sửa các thông điệp này tại một nơi.

Quốc tế hóa là khả năng hiển thị trang web bằng tiếng Anh cho người nói tiếng Anh và tiếng Hàn cho người nói tiếng Hàn. Spring đã cung cấp chức năng quốc tế hóa này. Trong bài giảng này, chúng ta sẽ tìm hiểu từng bước về các tính năng nhắn tin và quốc tế hóa của Spring thông qua các ví dụ thực tế.

Xác thực

Nếu khách hàng nhập sai giá trị vào biểu mẫu trong quá trình đăng ký thành viên và gửi lên máy chủ, máy chủ phải xác minh các giá trị đó, hiển thị lại biểu mẫu cho khách hàng và cung cấp hướng dẫn hữu ích về những thông tin đã nhập sai. Đây là tính năng cần thiết cho tất cả các dịch vụ web.

Trong bài giảng này, trước tiên chúng ta sẽ tự phát triển các hàm xác thực này. Chúng ta cũng sẽ sử dụng các tính năng xác thực của Spring, và sẽ đi sâu hơn và tìm hiểu từng bước thông qua các ví dụ, bao gồm cả Bean Validation, một hàm thực hiện xác thực thuận tiện chỉ với một chú thích duy nhất.

Cookie, Phiên

HTTP là một giao thức không trạng thái. Do đó, các khái niệm như cookie và phiên là cần thiết để duy trì chức năng đăng nhập. Trong bài giảng này, trước tiên chúng ta sẽ tạo một hàm đăng nhập chỉ sử dụng cookie. Sau đó, chúng ta sẽ xem xét các lỗ hổng bảo mật, rồi tạo và triển khai các phiên.

Bằng cách tạo phiên trực tiếp như thế này, bạn sẽ hiểu sâu hơn về cách thức hoạt động của cookie và phiên. Ngoài ra, bạn sẽ tìm hiểu và áp dụng các phiên do servlet cung cấp.

Bộ lọc, Bộ chặn

Chúng ta sẽ tìm hiểu về Filter do Servlet cung cấp và Interceptor do Spring cung cấp thông qua các ví dụ.

Trước tiên, chúng ta sẽ tạo một bộ lọc và một bộ chặn để ghi lại tất cả các yêu cầu HTTP, cách đơn giản nhất là sử dụng bộ lọc và bộ chặn. Sau đó, chúng ta cũng sẽ tạo một bộ lọc và bộ chặn để xử lý xác thực. Bằng cách sử dụng cả hai cùng lúc, chúng ta sẽ hiểu rõ ưu và nhược điểm của từng loại.

Xử lý ngoại lệ

Khi học ứng dụng web, xử lý ngoại lệ thường là phần khó hiểu nhất. Điều này là do servlet container (WAS) và Spring MVC đều cung cấp các phương thức xử lý ngoại lệ riêng. Trên thực tế, hai cơ chế này đan xen vào nhau, tạo nên một cơ chế xử lý ngoại lệ phức tạp. Do đó, các nhà phát triển rất khó hiểu và sử dụng chính xác các hoạt động bên trong của Spring và servlet container khi ngoại lệ xảy ra trong controller.

Bài giảng này sẽ giải thích từng bước về xử lý ngoại lệ, từ xử lý ngoại lệ servlet container đến xử lý ngoại lệ Spring MVC. Sau khi tham dự, bạn sẽ hiểu rõ cách thức hoạt động của các thành phần bên trong máy chủ khi xảy ra ngoại lệ thực tế và những thay đổi cần thực hiện. Ngoài ra, bài giảng cũng đề cập đến cách xử lý ngoại lệ khi sử dụng API.

Bộ chuyển đổi loại lò xo

Cũng giống như việc chuyển đổi ký tự sang số hoặc ngược lại, việc phát triển ứng dụng thường yêu cầu chuyển đổi kiểu. Ví dụ: ngay cả khi chuỗi "10" được truyền vào yêu cầu HTTP, Spring vẫn có thể nhận chuỗi đó dưới dạng số nguyên 10 bằng cách sử dụng @RequestParam. Spring cung cấp một tính năng gọi là bộ chuyển đổi kiểu để hỗ trợ chuyển đổi kiểu nhất quán.

Bộ chuyển đổi kiểu là một chủ đề thường được nhắc đến khi học Spring, nhưng việc hiểu cách thức hoạt động thực sự của chúng có thể khá khó khăn. Bài giảng này sẽ cung cấp kiến thức từng bước về bộ chuyển đổi kiểu, từ những điều cơ bản đến ứng dụng thực tế, thông qua các ví dụ.

Tải tệp lên

Có vô số ví dụ về tải tệp lên trực tuyến. Bài giảng này không chỉ đơn thuần giải thích chức năng tải tệp lên mà còn đi sâu vào các giao thức được sử dụng để tải tệp lên và giải thích các nguyên tắc giúp việc tải tệp lên qua HTTP trở nên khả thi. Hơn nữa, thông qua các ví dụ, bạn sẽ được học từng bước về chức năng tải tệp lên, từ servlet đến các phương thức tải tệp tiện lợi do Spring cung cấp.


Cấu trúc bài giảng Spring MVC

Bài giảng về Spring MVC được chia thành hai phần.
Bài giảng này là Spring MVC Phần 2 -
Đây là công nghệ sử dụng phát triển web ở phía sau .

Spring MVC Phần 1 -
Các bài giảng trước đây về công nghệ phát triển web cốt lõi 

Bao gồm các khái niệm cốt lõi của công nghệ web Java và Spring MVC, đồng thời hiểu các tính năng cơ bản của Spring MVC.
Phần 1 giới thiệu các công nghệ web backend Java, sau đó đề cập đến toàn bộ các công nghệ web, bao gồm Servlet, JSP, mô hình MVC và framework MVC. Sau khi hiểu rõ bối cảnh của các công nghệ web, chúng ta sẽ củng cố nền tảng vững chắc về các khái niệm cốt lõi của Spring MVC. Tiếp theo, chúng ta sẽ khám phá các tính năng cơ bản của Spring MVC và phát triển một trang web có khả năng thực hiện các thao tác CRUD cơ bản bằng Spring MVC.

Spring MVC Phần 2 -
Bài giảng hiện tại về công nghệ phát triển web backend

Tìm hiểu nhiều kỹ thuật khác nhau để sử dụng Spring MVC.
Phần 2 dần dần phát triển một ví dụ duy nhất, tìm hiểu nhiều kỹ thuật sử dụng Spring MVC thông qua mã, bao gồm Thymeleaf, nhắn tin, quốc tế hóa, xác thực, cookie, phiên, bộ lọc, bộ chặn, xử lý ngoại lệ, các tính năng chung và điểm mở rộng.


Sẽ tiếp tục trong tương lai
Chuỗi chinh phục hoàn chỉnh mùa xuân

Chúng tôi đang chuẩn bị một loạt bài học được thiết kế để giúp bạn nắm vững Spring một cách toàn diện. Chúng tôi sẽ tập trung vào các tính năng cốt lõi của Spring được sử dụng trong các ứng dụng thực tế, mạnh dạn lược bỏ các tính năng lỗi thời hoặc lạc hậu, và cung cấp kiến thức thực tế.

Thứ tự bài giảng


Lộ trình liên quan

Bộ truyện chinh phục mùa xuân hoàn chỉnh của Kim Young-han
Nguyên tắc cốt lõi của Spring - Ứng dụng thực tế Bài giảng này bao gồm:

Thành thạo hoàn toàn các thực hành Spring Boot + JPA
Đào tạo thực hành nâng cao về công nghệ nền tảng mới nhất


Khuyến nghị cho
những người này

Khóa học này dành cho ai?

  • Nhà phát triển mới làm quen với Spring MVC

  • Người tìm việc lập trình viên

  • Nhà phát triển chuyên nghiệp muốn hiểu sâu về Spring MVC

  • Các nhà phát triển muốn tạo ứng dụng web bằng Spring

Cần biết trước khi bắt đầu?

  • ngôn ngữ java

  • Kiến thức cơ bản mùa xuân

  • Các khái niệm cơ bản về HTTP

  • Spring MVC Phần 1 - Công nghệ cốt lõi phát triển web backend

Xin chào
Đây là

552,840

Học viên

36,150

Đánh giá

8,952

Trả lời

5.0

Xếp hạng

24

Các khóa học

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

 

저의 개발 인생 이야기

EO 인터뷰 영상

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

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

 

Chương trình giảng dạy

Tất cả

129 bài giảng ∙ (21giờ 5phút)

Tài liệu khóa học:

Tài liệu bài giảng
Ngày đăng: 
Cập nhật lần cuối: 

Đánh giá

Tất cả

1,155 đánh giá

5.0

1,155 đánh giá

  • wkdrn9701477님의 프로필 이미지
    wkdrn9701477

    Đánh giá 3

    Đánh giá trung bình 5.0

    5

    100% đã tham gia

    I bought it right away because the lecture came out before I could breathe. Before the MVC2 part came out, I had to finish the JPA roadmap of the team leader first and was doing Spring Data JPA. I was learning JPA after using MyBatis and I was like, wow, this is a new world. The MVC2 part lecture came out so I watched the beginning part for a bit and finished the JPA roadmap and I was going to listen to the MVC2 part lecture again, but Timeleaf is so fun that I keep listening to it. ㅋㅋㅋ Now, I can't wait for the upcoming lectures to come out so much that I want to kidnap the team leader, tie him up in the basement, and make him just film the lectures. ㅠㅠ

    • yh
      Giảng viên

      Hahaha Dokkabei97, thank you so much for correcting my typos and leaving a review! After seeing your review, I think I should work harder ㅋㅋㅋㅋㅋ I'm rooting for you too. Fighting!

  • iamkimseunghyun님의 프로필 이미지
    iamkimseunghyun

    Đánh giá 34

    Đánh giá trung bình 4.3

    5

    100% đã tham gia

    I finally finished the course. I think it was early November last year when I first started this course. At that time, I listened to the message internationalization, but I gave up because I didn't understand it well and didn't understand it well. Then, I wandered around YouTube and other places, trying various things that seemed fun, studying Java basics (I need to do more), and SQL (I need to do more), and I wandered around in circles. Then, last month, I started watching the Spring introduction series from the beginning to the end at a steady pace. When I did that, surprisingly, I was able to understand the course content well without any difficulties. However, I don't know if I should look at it strangely because I didn't have any questions beyond the course content. There were a lot of derivative questions, but since I didn't have any, I think I still have a long way to go. Anyway, I was very satisfied with the fact that I was able to follow the course content well and understand it. When I first watched Younghan's lectures without knowing anything, I thought, "Why is he teaching like this?" but now I'm used to it, I understand it, and I've definitely realized that it's a better style. This MVC 2 is the same. Now, books about spring that used to look scary in bookstores are starting to look friendly. Everyone knows that this is a course that builds a solid foundation and roots, but I feel embarrassed but proud that I am participating in this journey of a masterpiece that lives up to its name of complete conquest. Let's take a moment to catch our breath. In the past, I wondered when I would ever finish watching this, but now I only have one lecture left. I plan to take my time watching the last remaining lecture and then start over from the beginning for the practical part. As I write, I realize that this is not a class review, but rather a journey^^ Fighting to all of you who are studying together!

    • yh
      Giảng viên

      Mr. Mungil, you did a great job studying the parts you needed to fill in without giving up until the end. I'm rooting for you too!

  • hanulfullord8368님의 프로필 이미지
    hanulfullord8368

    Đánh giá 1

    Đánh giá trung bình 5.0

    5

    100% đã tham gia

    Just reading the roadmap makes my heart swell.. A lecture that picks out exactly what I wanted to learn and teaches it A lecture that lets you read the references on your own Even a fun lecture Why don't you hurry up and listen?! Don't worry, just pay It's hard to buy time with money! But Kim Young-han's lecture does that!

    • yh
      Giảng viên

      In fact, I also think that the value of my lecture is buying time. I will organize and convey the core values that I think are important that I have accumulated in my practice so far, and I hope that you will learn them quickly and become developers at the next level. Thank you, hanul_kr.

  • yozzangga5016님의 프로필 이미지
    yozzangga5016

    Đánh giá 8

    Đánh giá trung bình 5.0

    5

    100% đã tham gia

    I recommend this lecture to all developers who know and use Spring as 'magic'. It is a lecture that clearly shows that Spring is 'science'.

    • yh
      Giảng viên

      Wow! Such a well-expressed course review! Thank you, Sanghoon^^

  • omg님의 프로필 이미지
    omg

    Đánh giá 205

    Đánh giá trung bình 5.0

    5

    100% đã tham gia

    I was busy with work and it took a long time to finish, but the content covered in this lecture was also very helpful. Thank you for always making good lectures, Younghan-nim😘

    • yh
      Giảng viên

      OMG, thank you for leaving a review despite your busy supporter activities. I will always support you. And I ask for your continued support^^!

    • OMG I really love S2 ㅠㅠㅋㅋ

2.541.007 ₫

Khóa học khác của yh

Hãy khám phá các khóa học khác của giảng viên!

Khóa học tương tự

Khám phá các khóa học khác trong cùng lĩnh vực!