Bài Tập, Đề Thi Trắc Nghiệm Online – Môn Phát Triển Ứng Dụng Web Với Java – Đề 08

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é!!!


Môn Phát Triển Ứng Dụng Web Với Java

Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Phát Triển Ứng Dụng Web Với Java - Đề 08

Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Phát Triển Ứng Dụng Web Với Java bao gồm nhiều câu hỏi hay, bám sát chương trình. Cùng làm bài tập trắc nghiệm ngay.

Câu 1: Trong mô hình MVC (Model-View-Controller) áp dụng cho phát triển ứng dụng web Java, thành phần nào chịu trách nhiệm xử lý logic nghiệp vụ và tương tác với cơ sở dữ liệu?

  • A. View
  • B. Model
  • C. Controller
  • D. Servlet

Câu 2: Servlet trong Java Web đóng vai trò chính gì trong việc xử lý yêu cầu từ client?

  • A. Tiếp nhận và xử lý yêu cầu HTTP, tạo phản hồi trả về cho client.
  • B. Định nghĩa giao diện người dùng và hiển thị dữ liệu.
  • C. Quản lý trạng thái phiên làm việc của người dùng.
  • D. Lọc và kiểm soát các yêu cầu và phản hồi HTTP.

Câu 3: JSP (JavaServer Pages) được biên dịch thành Servlet. Phát biểu nào sau đây mô tả đúng nhất về quá trình này?

  • A. JSP được thông dịch trực tiếp bởi trình duyệt web khi người dùng truy cập.
  • B. JSP được biên dịch thành mã byte code và thực thi trực tiếp bởi máy ảo Java (JVM).
  • C. JSP được biên dịch bởi Web Server thành Servlet class trước khi thực thi.
  • D. JSP và Servlet được biên dịch đồng thời và thực thi song song để tăng hiệu suất.

Câu 4: Giả sử bạn cần lưu trữ thông tin giỏ hàng của người dùng trong một ứng dụng web Java. Phạm vi (scope) lưu trữ nào sau đây là phù hợp nhất để dữ liệu giỏ hàng tồn tại trong suốt phiên làm việc của người dùng trên trang web?

  • A. Request Scope
  • B. Session Scope
  • C. Application Scope
  • D. Page Scope

Câu 5: Directive nào trong JSP được sử dụng để import các package Java vào trang JSP, tương tự như từ khóa `import` trong Java?

  • A. <%@ include file=
  • B. <%@ taglib uri=
  • C. <%@ page errorPage=
  • D. <%@ page import=

Câu 6: Expression language (EL) trong JSP thường được sử dụng để làm gì?

  • A. Truy cập và hiển thị dữ liệu từ các JavaBeans hoặc các đối tượng trong các scope khác nhau.
  • B. Thực hiện các phép toán số học phức tạp trong trang JSP.
  • C. Định nghĩa các hàm tùy chỉnh (custom functions) để sử dụng trong JSP.
  • D. Xử lý các sự kiện (events) xảy ra trên trang web.

Câu 7: Xét đoạn mã JSP sau: `<%= request.getParameter(

  • A. Thiết lập giá trị của tham số "username" trong request.
  • B. Lấy giá trị của tham số "username" từ request và hiển thị trên trang JSP.
  • C. Kiểm tra xem tham số "username" có tồn tại trong request hay không.
  • D. Chuyển hướng (redirect) request đến một trang JSP khác nếu có tham số "username".

Câu 8: Web container (ví dụ: Tomcat) có vai trò gì trong kiến trúc ứng dụng web Java?

  • A. Biên dịch mã nguồn Java thành bytecode.
  • B. Quản lý cơ sở dữ liệu và thực hiện các truy vấn SQL.
  • C. Cung cấp môi trường runtime cho Servlet và JSP, quản lý vòng đời và các dịch vụ liên quan.
  • D. Đảm nhiệm việc cân bằng tải và phân phối yêu cầu đến các server khác nhau.

Câu 9: Filter trong Servlet được sử dụng để làm gì?

  • A. Tạo giao diện người dùng động cho ứng dụng web.
  • B. Xử lý trước (pre-processing) yêu cầu và xử lý sau (post-processing) phản hồi từ Servlet.
  • C. Định tuyến (routing) yêu cầu đến các Servlet khác nhau dựa trên URL.
  • D. Quản lý phiên làm việc (session) của người dùng.

Câu 10: Listener trong Servlet context được sử dụng để làm gì?

  • A. Lắng nghe các yêu cầu HTTP từ client và chuyển đến Servlet.
  • B. Theo dõi hiệu suất hoạt động của Servlet và JSP.
  • C. Quản lý kết nối cơ sở dữ liệu cho ứng dụng web.
  • D. Phản ứng với các sự kiện (events) trong vòng đời của Servlet context, session hoặc request.

Câu 11: Ưu điểm chính của việc sử dụng JSP so với Servlet thuần túy để tạo giao diện người dùng web là gì?

  • A. JSP có hiệu suất thực thi cao hơn Servlet.
  • B. JSP hỗ trợ đầy đủ các tính năng bảo mật hơn Servlet.
  • C. JSP giúp tách biệt logic trình bày (presentation) và logic nghiệp vụ (business logic) tốt hơn, dễ phát triển giao diện người dùng.
  • D. JSP có khả năng tương tác trực tiếp với cơ sở dữ liệu mạnh mẽ hơn Servlet.

Câu 12: Để cấu hình một Servlet trong ứng dụng web Java, chúng ta thường sử dụng file cấu hình nào?

  • A. server.xml
  • B. web.xml
  • C. application.properties
  • D. config.jsp

Câu 13: Phương thức nào của đối tượng `HttpServletRequest` được sử dụng để lấy thông tin về HTTP header của request?

  • A. getParameter()
  • B. getAttribute()
  • C. getHeader()
  • D. getRequestURI()

Câu 14: Phương thức nào của đối tượng `HttpServletResponse` được sử dụng để thiết lập HTTP status code cho phản hồi?

  • A. setStatus()
  • B. getWriter()
  • C. setHeader()
  • D. sendRedirect()

Câu 15: Cookie thường được sử dụng để làm gì trong ứng dụng web Java?

  • A. Lưu trữ dữ liệu phiên làm việc trên server.
  • B. Tăng tốc độ truy cập cơ sở dữ liệu.
  • C. Bảo mật thông tin đăng nhập của người dùng.
  • D. Lưu trữ thông tin trạng thái phiên làm việc hoặc tùy chỉnh của người dùng trên trình duyệt.

Câu 16: Session trong ứng dụng web Java thường được quản lý ở phía nào?

  • A. Server-side (phía máy chủ)
  • B. Client-side (phía trình duyệt)
  • C. Cả server-side và client-side đồng thời
  • D. Tùy thuộc vào cấu hình của trình duyệt web

Câu 17: Để thực hiện chuyển hướng (redirect) từ một Servlet đến một trang JSP khác, phương thức nào của `HttpServletResponse` thường được sử dụng?

  • A. forward()
  • B. include()
  • C. sendRedirect()
  • D. redirectToContext()

Câu 18: Sự khác biệt chính giữa `RequestDispatcher.forward()` và `RequestDispatcher.include()` là gì?

  • A. `forward()` chuyển hướng trình duyệt client sang trang mới, còn `include()` nhúng nội dung trang khác vào trang hiện tại.
  • B. `forward()` chuyển giao việc xử lý request cho resource khác, còn `include()` nhúng output của resource khác vào response hiện tại.
  • C. `forward()` chỉ sử dụng cho Servlet, còn `include()` chỉ sử dụng cho JSP.
  • D. `forward()` tạo request mới, còn `include()` sử dụng lại request hiện tại.

Câu 19: Trong ngữ cảnh bảo mật ứng dụng web Java, CSRF (Cross-Site Request Forgery) 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 внедрение SQL (SQL Injection).
  • C. Tấn công XSS (Cross-Site Scripting).
  • D. Tấn công giả mạo yêu cầu (Cross-Site Request Forgery).

Câu 20: Để ngăn chặn tấn công CSRF, giải pháp phổ biến nào thường được áp dụng trong ứng dụng web Java?

  • A. Sử dụng CSRF token (mã thông báo CSRF) cho mỗi request.
  • B. Mã hóa dữ liệu truyền trên đường truyền bằng HTTPS.
  • C. Kiểm tra nguồn gốc (origin) của request.
  • D. Sử dụng tường lửa ứng dụng web (WAF).

Câu 21: JPA (Java Persistence API) được sử dụng để làm gì trong phát triển ứng dụng web Java?

  • A. Xây dựng giao diện người dùng web động.
  • B. Quản lý và tương tác với cơ sở dữ liệu quan hệ (Relational Database) một cách dễ dàng hơn thông qua ORM (Object-Relational Mapping).
  • C. Triển khai các dịch vụ web RESTful.
  • D. Xử lý các yêu cầu và phản hồi HTTP.

Câu 22: Dependency Injection (DI) là gì và nó mang lại lợi ích gì trong phát triển ứng dụng web Java (ví dụ: Spring Framework)?

  • A. Một kỹ thuật để tối ưu hóa hiệu suất ứng dụng web.
  • B. Một phương pháp bảo mật ứng dụng web.
  • C. Một pattern thiết kế giúp giảm sự phụ thuộc giữa các thành phần (loose coupling), tăng tính module hóa và khả năng test của ứng dụng.
  • D. Một chuẩn API để truy cập cơ sở dữ liệu NoSQL.

Câu 23: RESTful web service là gì?

  • A. Một loại ứng dụng web chỉ sử dụng giao thức TCP/IP.
  • B. Một kiến trúc thiết kế web service tuân theo các nguyên tắc của REST, sử dụng HTTP methods để thao tác với tài nguyên (resources).
  • C. Một công nghệ để tạo trang web tĩnh.
  • D. Một framework phát triển ứng dụng web Java.

Câu 24: JSON (JavaScript Object Notation) thường được sử dụng để làm gì trong phát triển ứng dụng web Java?

  • A. Định nghĩa giao diện người dùng web.
  • B. Truy vấn cơ sở dữ liệu.
  • C. Định dạng dữ liệu trao đổi giữa server và client, đặc biệt trong các web API.
  • D. Mô tả cấu trúc cơ sở dữ liệu.

Câu 25: AJAX (Asynchronous JavaScript and XML) cho phép ứng dụng web làm gì?

  • A. Tăng tốc độ tải trang web bằng cách nén dữ liệu.
  • B. Bảo mật dữ liệu truyền giữa client và server.
  • C. Xây dựng giao diện người dùng web tĩnh.
  • D. Gửi và nhận dữ liệu từ server một cách bất đồng bộ mà không cần tải lại toàn bộ trang web.

Câu 26: Trong ngữ cảnh Spring Framework, Annotation `@Controller` được sử dụng để đánh dấu class nào?

  • A. Class chứa logic nghiệp vụ (business logic).
  • B. Class đóng vai trò là Controller trong mô hình MVC, xử lý các request từ client.
  • C. Class định nghĩa cấu hình ứng dụng.
  • D. Class thực hiện tương tác với cơ sở dữ liệu.

Câu 27: Trong Spring Framework, IoC container (Inversion of Control container) có vai trò gì?

  • A. Quản lý phiên làm việc (session) của người dùng.
  • B. Xử lý các request và response HTTP.
  • C. Quản lý vòng đời và dependency của các bean (thành phần) trong ứng dụng, thực hiện Dependency Injection.
  • D. Cung cấp các dịch vụ bảo mật cho ứng dụng web.

Câu 28: Template engine (ví dụ: Thymeleaf, FreeMarker) được sử dụng để làm gì trong phát triển ứng dụng web Java?

  • A. Tạo ra các trang web động bằng cách kết hợp dữ liệu với template (mẫu giao diện).
  • B. Quản lý routing (định tuyến) trong ứng dụng web.
  • C. Thực hiện xác thực và phân quyền người dùng.
  • D. Tối ưu hóa hiệu suất truy cập cơ sở dữ liệu.

Câu 29: Microservices architecture là gì và ưu điểm chính của nó so với kiến trúc monolithic truyền thống?

  • A. Một kiến trúc ứng dụng web chỉ sử dụng một ngôn ngữ lập trình duy nhất.
  • B. Một kiến trúc chia ứng dụng thành các dịch vụ nhỏ, độc lập, dễ dàng mở rộng, triển khai và bảo trì hơn so với monolithic.
  • C. Một phương pháp phát triển ứng dụng web nhanh chóng dựa trên NoSQL database.
  • D. Một mô hình bảo mật ứng dụng web nâng cao.

Câu 30: Containerization (ví dụ: Docker) mang lại lợi ích gì trong quá trình phát triển và triển khai ứng dụng web Java?

  • A. Tăng tốc độ biên dịch mã nguồn Java.
  • B. Cải thiện hiệu suất truy cập cơ sở dữ liệu.
  • C. Đóng gói ứng dụng và môi trường chạy vào container, giúp triển khai dễ dàng, nhất quán trên các môi trường khác nhau, tăng tính linh hoạt và khả năng mở rộng.
  • D. Bảo mật ứng dụng web khỏi các tấn công mạng.

1 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Phát Triển Ứng Dụng Web Với Java

Tags: Bộ đề 8

Câu 1: Trong mô hình MVC (Model-View-Controller) áp dụng cho phát triển ứng dụng web Java, thành phần nào chịu trách nhiệm xử lý logic nghiệp vụ và tương tác với cơ sở dữ liệu?

2 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Phát Triển Ứng Dụng Web Với Java

Tags: Bộ đề 8

Câu 2: Servlet trong Java Web đóng vai trò chính gì trong việc xử lý yêu cầu từ client?

3 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Phát Triển Ứng Dụng Web Với Java

Tags: Bộ đề 8

Câu 3: JSP (JavaServer Pages) được biên dịch thành Servlet. Phát biểu nào sau đây mô tả đúng nhất về quá trình này?

4 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Phát Triển Ứng Dụng Web Với Java

Tags: Bộ đề 8

Câu 4: Giả sử bạn cần lưu trữ thông tin giỏ hàng của người dùng trong một ứng dụng web Java. Phạm vi (scope) lưu trữ nào sau đây là phù hợp nhất để dữ liệu giỏ hàng tồn tại trong suốt phiên làm việc của người dùng trên trang web?

5 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Phát Triển Ứng Dụng Web Với Java

Tags: Bộ đề 8

Câu 5: Directive nào trong JSP được sử dụng để import các package Java vào trang JSP, tương tự như từ khóa `import` trong Java?

6 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Phát Triển Ứng Dụng Web Với Java

Tags: Bộ đề 8

Câu 6: Expression language (EL) trong JSP thường được sử dụng để làm gì?

7 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Phát Triển Ứng Dụng Web Với Java

Tags: Bộ đề 8

Câu 7: Xét đoạn mã JSP sau: `<%= request.getParameter("username") %>`. Đoạn mã này thực hiện công việc gì?

8 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Phát Triển Ứng Dụng Web Với Java

Tags: Bộ đề 8

Câu 8: Web container (ví dụ: Tomcat) có vai trò gì trong kiến trúc ứng dụng web Java?

9 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Phát Triển Ứng Dụng Web Với Java

Tags: Bộ đề 8

Câu 9: Filter trong Servlet được sử dụng để làm gì?

10 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Phát Triển Ứng Dụng Web Với Java

Tags: Bộ đề 8

Câu 10: Listener trong Servlet context được sử dụng để làm gì?

11 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Phát Triển Ứng Dụng Web Với Java

Tags: Bộ đề 8

Câu 11: Ưu điểm chính của việc sử dụng JSP so với Servlet thuần túy để tạo giao diện người dùng web là gì?

12 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Phát Triển Ứng Dụng Web Với Java

Tags: Bộ đề 8

Câu 12: Để cấu hình một Servlet trong ứng dụng web Java, chúng ta thường sử dụng file cấu hình nào?

13 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Phát Triển Ứng Dụng Web Với Java

Tags: Bộ đề 8

Câu 13: Phương thức nào của đối tượng `HttpServletRequest` được sử dụng để lấy thông tin về HTTP header của request?

14 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Phát Triển Ứng Dụng Web Với Java

Tags: Bộ đề 8

Câu 14: Phương thức nào của đối tượng `HttpServletResponse` được sử dụng để thiết lập HTTP status code cho phản hồi?

15 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Phát Triển Ứng Dụng Web Với Java

Tags: Bộ đề 8

Câu 15: Cookie thường được sử dụng để làm gì trong ứng dụng web Java?

16 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Phát Triển Ứng Dụng Web Với Java

Tags: Bộ đề 8

Câu 16: Session trong ứng dụng web Java thường được quản lý ở phía nào?

17 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Phát Triển Ứng Dụng Web Với Java

Tags: Bộ đề 8

Câu 17: Để thực hiện chuyển hướng (redirect) từ một Servlet đến một trang JSP khác, phương thức nào của `HttpServletResponse` thường được sử dụng?

18 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Phát Triển Ứng Dụng Web Với Java

Tags: Bộ đề 8

Câu 18: Sự khác biệt chính giữa `RequestDispatcher.forward()` và `RequestDispatcher.include()` là gì?

19 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Phát Triển Ứng Dụng Web Với Java

Tags: Bộ đề 8

Câu 19: Trong ngữ cảnh bảo mật ứng dụng web Java, CSRF (Cross-Site Request Forgery) là loại tấn công nào?

20 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Phát Triển Ứng Dụng Web Với Java

Tags: Bộ đề 8

Câu 20: Để ngăn chặn tấn công CSRF, giải pháp phổ biến nào thường được áp dụng trong ứng dụng web Java?

21 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Phát Triển Ứng Dụng Web Với Java

Tags: Bộ đề 8

Câu 21: JPA (Java Persistence API) được sử dụng để làm gì trong phát triển ứng dụng web Java?

22 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Phát Triển Ứng Dụng Web Với Java

Tags: Bộ đề 8

Câu 22: Dependency Injection (DI) là gì và nó mang lại lợi ích gì trong phát triển ứng dụng web Java (ví dụ: Spring Framework)?

23 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Phát Triển Ứng Dụng Web Với Java

Tags: Bộ đề 8

Câu 23: RESTful web service là gì?

24 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Phát Triển Ứng Dụng Web Với Java

Tags: Bộ đề 8

Câu 24: JSON (JavaScript Object Notation) thường được sử dụng để làm gì trong phát triển ứng dụng web Java?

25 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Phát Triển Ứng Dụng Web Với Java

Tags: Bộ đề 8

Câu 25: AJAX (Asynchronous JavaScript and XML) cho phép ứng dụng web làm gì?

26 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Phát Triển Ứng Dụng Web Với Java

Tags: Bộ đề 8

Câu 26: Trong ngữ cảnh Spring Framework, Annotation `@Controller` được sử dụng để đánh dấu class nào?

27 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Phát Triển Ứng Dụng Web Với Java

Tags: Bộ đề 8

Câu 27: Trong Spring Framework, IoC container (Inversion of Control container) có vai trò gì?

28 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Phát Triển Ứng Dụng Web Với Java

Tags: Bộ đề 8

Câu 28: Template engine (ví dụ: Thymeleaf, FreeMarker) được sử dụng để làm gì trong phát triển ứng dụng web Java?

29 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Phát Triển Ứng Dụng Web Với Java

Tags: Bộ đề 8

Câu 29: Microservices architecture là gì và ưu điểm chính của nó so với kiến trúc monolithic truyền thống?

30 / 30

Category: Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Phát Triển Ứng Dụng Web Với Java

Tags: Bộ đề 8

Câu 30: Containerization (ví dụ: Docker) mang lại lợi ích gì trong quá trình phát triển và triển khai ứng dụng web Java?

Xem kết quả