Đề thi, bài tập trắc nghiệm online Phát triển ứng dụng Web với Java – Đề 5

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Đề thi, bài tập trắc nghiệm online Phát triển ứng dụng Web với Java

Đề 5 - Bài tập, đề thi trắc nghiệm online Phát triển ứng dụng Web với Java

1. CSRF (Cross-Site Request Forgery) là loại tấn công bảo mật web nào và cơ chế phòng chống phổ biến là gì?

A. Tấn công từ chối dịch vụ; phòng chống bằng firewall.
B. Tấn công chèn mã độc; phòng chống bằng input validation.
C. Tấn công giả mạo request; phòng chống bằng CSRF token.
D. Tấn công brute-force; phòng chống bằng captcha.

2. Filter trong Servlet được sử dụng để làm gì?

A. Tạo giao diện người dùng động.
B. Xử lý các request và response trước khi chúng đến Servlet hoặc JSP.
C. Quản lý kết nối cơ sở dữ liệu.
D. Thực hiện các thao tác bảo mật ở phía client.

3. Sự khác biệt chính giữa `forward()` và `redirect()` trong Servlet là gì?

A. `forward()` thực hiện ở phía client, `redirect()` thực hiện ở phía server.
B. `forward()` là server-side, chuyển request nội bộ đến một resource khác trên server, `redirect()` là client-side, gửi response 302/307 yêu cầu trình duyệt gửi request mới đến URL khác.
C. `forward()` được sử dụng để chuyển request đến JSP, `redirect()` được sử dụng cho Servlet.
D. `forward()` nhanh hơn `redirect()` vì không cần request mới.

4. HTTP method nào thường được sử dụng để lấy dữ liệu từ server mà không làm thay đổi trạng thái của server?

A. POST.
B. PUT.
C. GET.
D. DELETE.

5. RESTful API là gì và tại sao nó phổ biến trong phát triển ứng dụng web?

A. Một loại giao thức mạng tốc độ cao.
B. Một kiến trúc thiết kế cho web services, tập trung vào tài nguyên và các thao tác HTTP tiêu chuẩn (GET, POST, PUT, DELETE).
C. Một framework Java để phát triển giao diện người dùng.
D. Một chuẩn mã hóa dữ liệu cho web.

6. ORM (Object-Relational Mapping) framework như Hibernate giúp ích gì cho việc phát triển ứng dụng web Java?

A. Tăng cường bảo mật cho ứng dụng web.
B. Ánh xạ giữa các đối tượng Java và bảng trong cơ sở dữ liệu, đơn giản hóa việc thao tác dữ liệu.
C. Tự động tạo giao diện người dùng từ cơ sở dữ liệu.
D. Quản lý session và cookies một cách hiệu quả hơn.

7. Trong ngữ cảnh bảo mật ứng dụng web Java, Cross-Site Scripting (XSS) là loại tấn công nào?

A. Tấn công từ chối dịch vụ (Denial of Service).
B. Tấn công bằng cách chèn mã độc hại vào phía client-side code (ví dụ: JavaScript).
C. Tấn công bằng cách giả mạo yêu cầu từ người dùng hợp lệ (Cross-Site Request Forgery).
D. Tấn công bằng cách khai thác lỗ hổng xác thực.

8. Spring Data JPA giúp đơn giản hóa thao tác dữ liệu bằng cách nào?

A. Tự động tạo giao diện người dùng từ cơ sở dữ liệu.
B. Cung cấp repository interfaces, tự động sinh code truy vấn cơ bản từ tên method.
C. Tăng cường bảo mật cho ứng dụng.
D. Tự động quản lý session và cookies.

9. Cookie và Session khác nhau như thế nào về nơi lưu trữ thông tin trạng thái?

A. Cookie lưu trữ trên server, Session lưu trữ trên client.
B. Cookie lưu trữ trên client (trình duyệt), Session lưu trữ trên server.
C. Cả Cookie và Session đều lưu trữ trên server, nhưng Session bảo mật hơn.
D. Cả Cookie và Session đều lưu trữ trên client, nhưng Cookie có dung lượng lớn hơn.

10. Session trong ứng dụng web Java được sử dụng để làm gì?

A. Lưu trữ dữ liệu cấu hình ứng dụng trên server.
B. Duy trì trạng thái của người dùng giữa các request HTTP.
C. Tăng tốc độ truy cập cơ sở dữ liệu.
D. Xác thực người dùng trước khi truy cập ứng dụng.

11. Sự khác biệt chính giữa `HttpServletRequest` và `HttpServletResponse` trong Servlet là gì?

A. `HttpServletRequest` dùng để gửi dữ liệu từ server đến client, còn `HttpServletResponse` dùng để nhận dữ liệu từ client đến server.
B. `HttpServletRequest` đại diện cho yêu cầu HTTP từ client đến server, còn `HttpServletResponse` đại diện cho phản hồi HTTP từ server đến client.
C. `HttpServletRequest` quản lý session của người dùng, còn `HttpServletResponse` quản lý cookies.
D. `HttpServletRequest` dùng để cấu hình server, còn `HttpServletResponse` dùng để cấu hình ứng dụng web.

12. JDBC (Java Database Connectivity) được sử dụng để làm gì trong ứng dụng web Java?

A. Xây dựng giao diện người dùng đồ họa.
B. Kết nối và tương tác với cơ sở dữ liệu.
C. Quản lý session của người dùng.
D. Triển khai ứng dụng web lên server.

13. JSP (JavaServer Pages) được biên dịch thành loại file nào trước khi thực thi trên server?

A. File HTML tĩnh.
B. File Servlet Java.
C. File JavaScript.
D. File XML cấu hình.

14. Trong ngữ cảnh phát triển ứng dụng web Java, Servlet container (ví dụ như Tomcat) chịu trách nhiệm chính cho điều gì?

A. Biên dịch mã nguồn Java thành bytecode.
B. Quản lý жизненный цикл (lifecycle) của Servlet và xử lý các yêu cầu HTTP.
C. Cung cấp giao diện người dùng đồ họa cho ứng dụng web.
D. Quản lý kết nối cơ sở dữ liệu cho ứng dụng.

15. Trong Spring Boot, annotation `@RestController` kết hợp chức năng của annotation nào?

A. `@Controller` và `@Service`.
B. `@Controller` và `@ResponseBody`.
C. `@Service` và `@ResponseBody`.
D. `@Component` và `@Repository`.

16. JSON (JavaScript Object Notation) thường được sử dụng làm định dạng dữ liệu chính trong RESTful API vì lý do gì?

A. JSON có tốc độ truyền dữ liệu nhanh nhất.
B. JSON dễ đọc, dễ viết (cả cho người và máy), và được hỗ trợ tốt bởi JavaScript và nhiều ngôn ngữ lập trình khác.
C. JSON có khả năng mã hóa dữ liệu tốt nhất.
D. JSON là định dạng duy nhất được hỗ trợ bởi trình duyệt web.

17. JPA (Java Persistence API) cung cấp interface `EntityManager` để làm gì?

A. Quản lý session của người dùng.
B. Thực hiện các thao tác CRUD (Create, Read, Update, Delete) trên entity (đối tượng Java ánh xạ với bảng cơ sở dữ liệu).
C. Cấu hình kết nối cơ sở dữ liệu.
D. Xây dựng giao diện người dùng.

18. Trong ngữ cảnh ứng dụng web Java, thuật ngữ `deployment` (triển khai) có nghĩa là gì?

A. Viết mã nguồn Java cho ứng dụng.
B. Kiểm thử ứng dụng web.
C. Quá trình đưa ứng dụng web đã hoàn thành lên server (ví dụ: Tomcat) để người dùng có thể truy cập và sử dụng.
D. Cấu hình cơ sở dữ liệu cho ứng dụng web.

19. Spring Boot Actuator được sử dụng để làm gì trong ứng dụng Spring Boot?

A. Tự động tạo mã boilerplate cho ứng dụng.
B. Cung cấp các endpoints để giám sát và quản lý ứng dụng, như health check, metrics, info.
C. Tăng tốc độ khởi động ứng dụng.
D. Đơn giản hóa việc triển khai ứng dụng lên cloud.

20. Listener trong Servlet được sử dụng để làm gì?

A. Lắng nghe các sự kiện xảy ra trong ứng dụng web và thực hiện các hành động tương ứng.
B. Tạo giao diện người dùng động.
C. Quản lý kết nối cơ sở dữ liệu.
D. Xác thực người dùng.

21. Mục đích chính của file `web.xml` (deployment descriptor) trong ứng dụng web Java là gì?

A. Chứa mã nguồn Java của ứng dụng.
B. Cấu hình các thành phần web của ứng dụng như Servlets, Filters, Listeners, và các tham số cấu hình.
C. Định nghĩa giao diện người dùng của ứng dụng.
D. Quản lý dependencies của ứng dụng.

22. Ưu điểm chính của việc sử dụng framework Spring MVC trong phát triển ứng dụng web Java là gì?

A. Tăng tốc độ biên dịch mã Java.
B. Cung cấp kiến trúc MVC rõ ràng, giúp tách biệt các lớp logic và giao diện.
C. Tự động quản lý tài nguyên cơ sở dữ liệu.
D. Hỗ trợ trực tiếp lập trình front-end bằng JavaScript.

23. Context root của một ứng dụng web Java là gì?

A. Thư mục chứa mã nguồn Java của ứng dụng.
B. URL path bắt đầu cho tất cả các URLs của ứng dụng web đó trên server.
C. File cấu hình chính của ứng dụng web.
D. Tên của file WAR sau khi deploy ứng dụng.

24. Dependency Injection (DI) là một pattern thiết kế quan trọng trong Spring Framework. Lợi ích chính của DI là gì?

A. Tăng tốc độ thực thi ứng dụng.
B. Giảm sự phụ thuộc giữa các components, giúp code dễ kiểm thử và bảo trì hơn.
C. Tự động quản lý bộ nhớ.
D. Đơn giản hóa việc cấu hình cơ sở dữ liệu.

25. WebSockets khác biệt với HTTP truyền thống như thế nào trong giao tiếp giữa client và server?

A. WebSockets sử dụng giao thức UDP, HTTP sử dụng TCP.
B. WebSockets cung cấp full-duplex communication (giao tiếp song công), HTTP là half-duplex (bán song công) hoặc simplex (đơn công).
C. WebSockets thiết lập kết nối persistent (kết nối liên tục), HTTP là connectionless (không kết nối - mỗi request/response là độc lập).
D. WebSockets mã hóa dữ liệu mạnh mẽ hơn HTTP.

26. Thẻ JSTL `` được sử dụng để làm gì trong JSP?

A. Thực hiện điều hướng trang.
B. Lặp qua một tập hợp các item (ví dụ: List, Array) và hiển thị nội dung cho mỗi item.
C. Nhúng mã Java vào JSP.
D. Khai báo biến JSTL.

27. Thẻ `` trong JSP được sử dụng để làm gì?

A. Nhúng mã JavaScript vào JSP.
B. Khai báo biến trong JSP.
C. Tạo hoặc truy cập một Java Bean (đối tượng Java) và làm cho nó có sẵn trong trang JSP.
D. Thực hiện các thao tác truy vấn cơ sở dữ liệu.

28. Annotation `@WebServlet` trong Servlet Java được sử dụng để làm gì?

A. Định nghĩa cấu hình kết nối cơ sở dữ liệu.
B. Khai báo Servlet là một thành phần web và ánh xạ URL đến Servlet đó.
C. Xác định vai trò bảo mật cho Servlet.
D. Chỉ định phương thức HTTP mà Servlet sẽ xử lý (GET, POST...).

29. Trong JSP, biểu thức `<%= expression %>` được sử dụng để làm gì?

A. Khai báo biến Java.
B. Nhúng mã JavaScript vào trang JSP.
C. In giá trị của một biểu thức Java trực tiếp vào output HTML.
D. Định nghĩa một function trong JSP.

30. Trong mô hình MVC, Controller có vai trò gì?

A. Hiển thị dữ liệu cho người dùng.
B. Quản lý dữ liệu và logic nghiệp vụ.
C. Xử lý request từ người dùng và điều phối tương tác giữa Model và View.
D. Lưu trữ dữ liệu của ứng dụng.

1 / 30

Category: Đề thi, bài tập trắc nghiệm online Phát triển ứng dụng Web với Java

Tags: Bộ đề 5

1. CSRF (Cross-Site Request Forgery) là loại tấn công bảo mật web nào và cơ chế phòng chống phổ biến là gì?

2 / 30

Category: Đề thi, bài tập trắc nghiệm online Phát triển ứng dụng Web với Java

Tags: Bộ đề 5

2. Filter trong Servlet được sử dụng để làm gì?

3 / 30

Category: Đề thi, bài tập trắc nghiệm online Phát triển ứng dụng Web với Java

Tags: Bộ đề 5

3. Sự khác biệt chính giữa `forward()` và `redirect()` trong Servlet là gì?

4 / 30

Category: Đề thi, bài tập trắc nghiệm online Phát triển ứng dụng Web với Java

Tags: Bộ đề 5

4. HTTP method nào thường được sử dụng để lấy dữ liệu từ server mà không làm thay đổi trạng thái của server?

5 / 30

Category: Đề thi, bài tập trắc nghiệm online Phát triển ứng dụng Web với Java

Tags: Bộ đề 5

5. RESTful API là gì và tại sao nó phổ biến trong phát triển ứng dụng web?

6 / 30

Category: Đề thi, bài tập trắc nghiệm online Phát triển ứng dụng Web với Java

Tags: Bộ đề 5

6. ORM (Object-Relational Mapping) framework như Hibernate giúp ích gì cho việc phát triển ứng dụng web Java?

7 / 30

Category: Đề thi, bài tập trắc nghiệm online Phát triển ứng dụng Web với Java

Tags: Bộ đề 5

7. Trong ngữ cảnh bảo mật ứng dụng web Java, Cross-Site Scripting (XSS) là loại tấn công nào?

8 / 30

Category: Đề thi, bài tập trắc nghiệm online Phát triển ứng dụng Web với Java

Tags: Bộ đề 5

8. Spring Data JPA giúp đơn giản hóa thao tác dữ liệu bằng cách nào?

9 / 30

Category: Đề thi, bài tập trắc nghiệm online Phát triển ứng dụng Web với Java

Tags: Bộ đề 5

9. Cookie và Session khác nhau như thế nào về nơi lưu trữ thông tin trạng thái?

10 / 30

Category: Đề thi, bài tập trắc nghiệm online Phát triển ứng dụng Web với Java

Tags: Bộ đề 5

10. Session trong ứng dụng web Java được sử dụng để làm gì?

11 / 30

Category: Đề thi, bài tập trắc nghiệm online Phát triển ứng dụng Web với Java

Tags: Bộ đề 5

11. Sự khác biệt chính giữa `HttpServletRequest` và `HttpServletResponse` trong Servlet là gì?

12 / 30

Category: Đề thi, bài tập trắc nghiệm online Phát triển ứng dụng Web với Java

Tags: Bộ đề 5

12. JDBC (Java Database Connectivity) được sử dụng để làm gì trong ứng dụng web Java?

13 / 30

Category: Đề thi, bài tập trắc nghiệm online Phát triển ứng dụng Web với Java

Tags: Bộ đề 5

13. JSP (JavaServer Pages) được biên dịch thành loại file nào trước khi thực thi trên server?

14 / 30

Category: Đề thi, bài tập trắc nghiệm online Phát triển ứng dụng Web với Java

Tags: Bộ đề 5

14. Trong ngữ cảnh phát triển ứng dụng web Java, Servlet container (ví dụ như Tomcat) chịu trách nhiệm chính cho điều gì?

15 / 30

Category: Đề thi, bài tập trắc nghiệm online Phát triển ứng dụng Web với Java

Tags: Bộ đề 5

15. Trong Spring Boot, annotation `@RestController` kết hợp chức năng của annotation nào?

16 / 30

Category: Đề thi, bài tập trắc nghiệm online Phát triển ứng dụng Web với Java

Tags: Bộ đề 5

16. JSON (JavaScript Object Notation) thường được sử dụng làm định dạng dữ liệu chính trong RESTful API vì lý do gì?

17 / 30

Category: Đề thi, bài tập trắc nghiệm online Phát triển ứng dụng Web với Java

Tags: Bộ đề 5

17. JPA (Java Persistence API) cung cấp interface `EntityManager` để làm gì?

18 / 30

Category: Đề thi, bài tập trắc nghiệm online Phát triển ứng dụng Web với Java

Tags: Bộ đề 5

18. Trong ngữ cảnh ứng dụng web Java, thuật ngữ 'deployment' (triển khai) có nghĩa là gì?

19 / 30

Category: Đề thi, bài tập trắc nghiệm online Phát triển ứng dụng Web với Java

Tags: Bộ đề 5

19. Spring Boot Actuator được sử dụng để làm gì trong ứng dụng Spring Boot?

20 / 30

Category: Đề thi, bài tập trắc nghiệm online Phát triển ứng dụng Web với Java

Tags: Bộ đề 5

20. Listener trong Servlet được sử dụng để làm gì?

21 / 30

Category: Đề thi, bài tập trắc nghiệm online Phát triển ứng dụng Web với Java

Tags: Bộ đề 5

21. Mục đích chính của file `web.xml` (deployment descriptor) trong ứng dụng web Java là gì?

22 / 30

Category: Đề thi, bài tập trắc nghiệm online Phát triển ứng dụng Web với Java

Tags: Bộ đề 5

22. Ưu điểm chính của việc sử dụng framework Spring MVC trong phát triển ứng dụng web Java là gì?

23 / 30

Category: Đề thi, bài tập trắc nghiệm online Phát triển ứng dụng Web với Java

Tags: Bộ đề 5

23. Context root của một ứng dụng web Java là gì?

24 / 30

Category: Đề thi, bài tập trắc nghiệm online Phát triển ứng dụng Web với Java

Tags: Bộ đề 5

24. Dependency Injection (DI) là một pattern thiết kế quan trọng trong Spring Framework. Lợi ích chính của DI là gì?

25 / 30

Category: Đề thi, bài tập trắc nghiệm online Phát triển ứng dụng Web với Java

Tags: Bộ đề 5

25. WebSockets khác biệt với HTTP truyền thống như thế nào trong giao tiếp giữa client và server?

26 / 30

Category: Đề thi, bài tập trắc nghiệm online Phát triển ứng dụng Web với Java

Tags: Bộ đề 5

26. Thẻ JSTL `` được sử dụng để làm gì trong JSP?

27 / 30

Category: Đề thi, bài tập trắc nghiệm online Phát triển ứng dụng Web với Java

Tags: Bộ đề 5

27. Thẻ `` trong JSP được sử dụng để làm gì?

28 / 30

Category: Đề thi, bài tập trắc nghiệm online Phát triển ứng dụng Web với Java

Tags: Bộ đề 5

28. Annotation `@WebServlet` trong Servlet Java được sử dụng để làm gì?

29 / 30

Category: Đề thi, bài tập trắc nghiệm online Phát triển ứng dụng Web với Java

Tags: Bộ đề 5

29. Trong JSP, biểu thức `<%= expression %>` được sử dụng để làm gì?

30 / 30

Category: Đề thi, bài tập trắc nghiệm online Phát triển ứng dụng Web với Java

Tags: Bộ đề 5

30. Trong mô hình MVC, Controller có vai trò gì?