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

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

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

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

A. Lưu trữ dữ liệu tạm thời trên server giữa các request của một người dùng cụ thể.
B. Tăng tốc độ truy cập dữ liệu từ cơ sở dữ liệu.
C. Xác thực người dùng và phân quyền truy cập.
D. Chia sẻ dữ liệu giữa các ứng dụng web khác nhau.

2. Message Broker (ví dụ: Apache Kafka, RabbitMQ) được sử dụng để làm gì trong kiến trúc ứng dụng web Java?

A. Quản lý cơ sở dữ liệu.
B. Xử lý các request đồng bộ từ client.
C. Cho phép giao tiếp asynchronous (bất đồng bộ) giữa các thành phần của ứng dụng thông qua message queue.
D. Cân bằng tải cho server.

3. Unit testing và integration testing khác nhau như thế nào trong kiểm thử ứng dụng web Java?

A. Unit testing kiểm thử toàn bộ ứng dụng, integration testing kiểm thử các module riêng lẻ.
B. Unit testing kiểm thử các module hoặc component riêng lẻ, integration testing kiểm thử sự tương tác giữa các module.
C. Unit testing được thực hiện sau integration testing.
D. Unit testing chỉ được sử dụng cho front-end, integration testing chỉ cho back-end.

4. Thành phần nào trong Servlet lifecycle được gọi đầu tiên khi Servlet được khởi tạo?

A. service()
B. init()
C. destroy()
D. doGet()

5. JSP (JavaServer Pages) được biên dịch thành Servlet. Điều gì xảy ra khi một JSP page được request lần đầu tiên?

A. Servlet container trực tiếp thực thi JSP page.
B. JSP page được biên dịch thành Servlet class, sau đó Servlet class được thực thi.
C. JSP page được chuyển đổi thành HTML và trả về client.
D. JSP page được lưu vào cache và trả về từ cache trong các lần request sau.

6. Containerization (ví dụ: Docker) mang lại lợi ích gì cho việc triển khai ứng dụng web Java?

A. Tăng tốc độ phát triển ứng dụng.
B. Đóng gói ứng dụng và các dependency của nó vào một container độc lập, giúp đảm bảo tính nhất quán môi trường giữa các giai đoạn phát triển, kiểm thử và production.
C. Giảm chi phí phần cứng.
D. Cải thiện bảo mật ứng dụng.

7. Logging (ghi log) đóng vai trò gì trong quá trình phát triển và vận hành ứng dụng web Java?

A. Tăng hiệu suất ứng dụng.
B. Theo dõi hoạt động của ứng dụng, gỡ lỗi, và giám sát hệ thống.
C. Bảo vệ ứng dụng khỏi tấn công.
D. Tối ưu hóa cơ sở dữ liệu.

8. Trong JSP, implicit object `out` được sử dụng để làm gì?

A. Đọc dữ liệu từ request.
B. Gửi dữ liệu đến response.
C. Quản lý session.
D. Xử lý lỗi.

9. Công nghệ nào của Java EE cung cấp API để phát triển các ứng dụng web dựa trên thành phần, giúp đơn giản hóa việc xây dựng giao diện người dùng và quản lý trạng thái?

A. Servlet
B. JSP (JavaServer Pages)
C. JSF (JavaServer Faces)
D. JDBC (Java Database Connectivity)

10. Load balancing được sử dụng để làm gì trong ứng dụng web Java quy mô lớn?

A. Tăng tốc độ truy cập cơ sở dữ liệu.
B. Phân phối traffic (lưu lượng truy cập) đến nhiều server để đảm bảo không có server nào bị quá tải, tăng khả năng chịu tải và độ tin cậy của ứng dụng.
C. Bảo vệ ứng dụng khỏi tấn công DDoS.
D. Tối ưu hóa code ứng dụng.

11. Trong Spring Boot, annotation nào được sử dụng để tạo một ứng dụng độc lập có thể chạy được (standalone application)?

A. @Controller
B. @SpringBootApplication
C. @Service
D. @Repository

12. Microservices architecture là gì và ưu điểm của nó so với monolithic architecture trong phát triển ứng dụng web Java?

A. Microservices là một kiểu kiến trúc monolithic được chia nhỏ.
B. Microservices là kiến trúc chia ứng dụng thành các dịch vụ nhỏ, độc lập, có thể được phát triển, triển khai, và mở rộng một cách độc lập. Ưu điểm là tăng tính linh hoạt, khả năng mở rộng, và khả năng phục hồi.
C. Microservices chỉ phù hợp cho ứng dụng nhỏ, monolithic cho ứng dụng lớn.
D. Monolithic và Microservices là hai tên gọi khác nhau cho cùng một kiến trúc.

13. Spring Security framework được sử dụng để làm gì trong ứng dụng web Java?

A. Quản lý dependency injection.
B. Cung cấp các tính năng bảo mật như xác thực (authentication) và phân quyền (authorization).
C. Xây dựng RESTful API.
D. Tạo giao diện người dùng với JSF.

14. Transaction management là gì và tại sao nó quan trọng trong ứng dụng web Java?

A. Quản lý bộ nhớ và garbage collection.
B. Đảm bảo tính toàn vẹn dữ liệu bằng cách nhóm các operations thành một đơn vị công việc duy nhất (atomic operation).
C. Tăng tốc độ xử lý request.
D. Bảo vệ ứng dụng khỏi tấn công SQL injection.

15. Thế nào là `Stateless` trong ngữ cảnh của RESTful API?

A. Server lưu trữ trạng thái của client giữa các request.
B. Mỗi request từ client đến server phải chứa đầy đủ thông tin cần thiết để server xử lý, và server không lưu trữ bất kỳ trạng thái nào của client giữa các request.
C. Client không được phép lưu trữ bất kỳ dữ liệu nào từ server.
D. Server và client luôn đồng bộ trạng thái với nhau.

16. Dependency Injection (DI) là một nguyên tắc thiết kế quan trọng trong Spring Framework. Mục đích chính của DI là gì?

A. Tăng cường hiệu suất ứng dụng
B. Giảm sự phụ thuộc giữa các component
C. Đơn giản hóa cấu hình ứng dụng
D. Cải thiện khả năng mở rộng ứng dụng

17. Cookie và Session khác nhau như thế nào trong việc quản lý trạng thái người dùng?

A. Cookie lưu trữ dữ liệu trên server, Session lưu trữ dữ liệu trên client.
B. Cookie lưu trữ dữ liệu trên client, Session lưu trữ dữ liệu trên server.
C. Cookie chỉ được sử dụng cho bảo mật, Session chỉ được sử dụng cho quản lý trạng thái.
D. Cookie và Session là hoàn toàn giống nhau và có thể thay thế cho nhau.

18. RESTful API là gì và nó khác biệt như thế nào so với SOAP (Simple Object Access Protocol)?

A. RESTful API là một giao thức truyền thông dựa trên XML, trong khi SOAP dựa trên JSON.
B. RESTful API là một kiến trúc thiết kế sử dụng HTTP methods (GET, POST, PUT, DELETE) và các resource, trong khi SOAP là một giao thức dựa trên XML và thường sử dụng RPC (Remote Procedure Call).
C. RESTful API chỉ được sử dụng cho ứng dụng web Java, trong khi SOAP có thể được sử dụng cho nhiều ngôn ngữ khác.
D. RESTful API và SOAP đều là cùng một loại kiến trúc, chỉ khác nhau về tên gọi.

19. CI/CD (Continuous Integration/Continuous Delivery) pipeline là gì và tại sao nó quan trọng trong phát triển ứng dụng web Java hiện đại?

A. Một phương pháp quản lý dự án.
B. Một quy trình tự động hóa các bước từ build, test, đến deploy ứng dụng, giúp phát hành phần mềm nhanh chóng và thường xuyên hơn.
C. Một công cụ giám sát hiệu suất ứng dụng.
D. Một framework bảo mật ứng dụng.

20. Reactive programming (lập trình phản ứng) là gì và nó mang lại lợi ích gì trong phát triển ứng dụng web Java, đặc biệt là ứng dụng real-time?

A. Một phong cách lập trình hướng đối tượng.
B. Một paradigm lập trình tập trung vào asynchronous data streams (luồng dữ liệu bất đồng bộ) và sự lan truyền thay đổi. Nó giúp xây dựng ứng dụng responsive, resilient, elastic, và message-driven, đặc biệt hữu ích cho ứng dụng real-time và non-blocking I/O.
C. Một framework bảo mật ứng dụng.
D. Một công cụ quản lý cơ sở dữ liệu.

21. Loại lỗi nào thường xảy ra khi phát triển RESTful API và trả về HTTP status code 404?

A. Lỗi server-side (Internal Server Error).
B. Resource không tồn tại (Not Found).
C. Yêu cầu không hợp lệ (Bad Request).
D. Không được phép truy cập (Forbidden).

22. Ưu điểm chính của việc sử dụng framework Spring Boot so với Spring MVC thuần túy là gì?

A. Hiệu suất ứng dụng cao hơn.
B. Cấu hình tự động và đơn giản hóa quá trình bootstrapping ứng dụng.
C. Bảo mật ứng dụng tốt hơn.
D. Hỗ trợ nhiều loại cơ sở dữ liệu hơn.

23. Caching (bộ nhớ đệm) được sử dụng để làm gì trong ứng dụng web Java và các loại caching phổ biến là gì?

A. Bảo vệ ứng dụng khỏi tấn công.
B. Lưu trữ tạm thời dữ liệu thường xuyên được truy cập để giảm thời gian truy cập và giảm tải cho server gốc. Các loại caching phổ biến bao gồm browser caching, server-side caching (ví dụ: Memcached, Redis), và database caching.
C. Quản lý session người dùng.
D. Triển khai ứng dụng lên cloud.

24. Trong mô hình MVC (Model-View-Controller) trong 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. Controller
C. Model
D. DispatcherServlet

25. HttpServletRequest và HttpServletResponse là các interface quan trọng trong Servlet API. HttpServletRequest được dùng để làm gì?

A. Gửi phản hồi đến client
B. Đọc thông tin yêu cầu từ client
C. Quản lý session của người dùng
D. Xác thực người dùng

26. CSRF (Cross-Site Request Forgery) là loại tấn công web nào và làm thế nào để phòng tránh nó trong ứng dụng web Java?

A. Tấn công từ chối dịch vụ (Denial of Service).
B. Tấn công giả mạo request từ người dùng đã xác thực.
C. Tấn công SQL injection.
D. Tấn công Cross-Site Scripting (XSS).

27. ORM (Object-Relational Mapping) framework nào phổ biến nhất trong Java để tương tác với cơ sở dữ liệu quan hệ?

A. JDBC
B. JPA (Java Persistence API)
C. Servlet
D. JMS (Java Message Service)

28. Annotation nào trong Spring MVC được sử dụng để ánh xạ một HTTP request đến một method xử lý cụ thể trong Controller?

A. @Component
B. @Service
C. @RequestMapping
D. @Repository

29. JPA Entity Manager được sử dụng để làm gì?

A. Quản lý session của người dùng.
B. Thực hiện các operations CRUD (Create, Read, Update, Delete) trên các entity trong cơ sở dữ liệu.
C. Xử lý request và response trong Servlet.
D. Định nghĩa routing trong Spring MVC.

30. Serverless computing (ví dụ: AWS Lambda, Google Cloud Functions) là gì và nó khác biệt như thế nào so với mô hình server truyền thống trong việc triển khai ứng dụng web Java?

A. Serverless computing là một mô hình triển khai ứng dụng mà developer phải quản lý server.
B. Serverless computing là mô hình triển khai ứng dụng mà developer không cần quản lý server. Cloud provider quản lý server và tài nguyên, và ứng dụng chạy dưới dạng functions hoặc events. Khác biệt chính là giảm gánh nặng quản lý server, chi phí theo mức sử dụng, và khả năng scale tự động.
C. Serverless computing chỉ phù hợp cho ứng dụng nhỏ và đơn giản.
D. Serverless computing và mô hình server truyền thống là giống nhau về cách triển khai.

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ộ đề 13

1. Session trong ứng dụng web Java được sử dụng để làm 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ộ đề 13

2. Message Broker (ví dụ: Apache Kafka, RabbitMQ) được sử dụng để làm gì trong kiến trúc ứng dụng web Java?

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ộ đề 13

3. Unit testing và integration testing khác nhau như thế nào trong kiểm thử ứng dụng web Java?

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ộ đề 13

4. Thành phần nào trong Servlet lifecycle được gọi đầu tiên khi Servlet được khởi tạo?

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ộ đề 13

5. JSP (JavaServer Pages) được biên dịch thành Servlet. Điều gì xảy ra khi một JSP page được request lần đầu tiên?

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ộ đề 13

6. Containerization (ví dụ: Docker) mang lại lợi ích gì cho việc triển khai ứ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ộ đề 13

7. Logging (ghi log) đóng vai trò gì trong quá trình phát triển và vận hành ứng dụng web Java?

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ộ đề 13

8. Trong JSP, implicit object 'out' được sử dụng để làm gì?

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ộ đề 13

9. Công nghệ nào của Java EE cung cấp API để phát triển các ứng dụng web dựa trên thành phần, giúp đơn giản hóa việc xây dựng giao diện người dùng và quản lý 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ộ đề 13

10. Load balancing được sử dụng để làm gì trong ứng dụng web Java quy mô lớn?

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ộ đề 13

11. Trong Spring Boot, annotation nào được sử dụng để tạo một ứng dụng độc lập có thể chạy được (standalone application)?

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ộ đề 13

12. Microservices architecture là gì và ưu điểm của nó so với monolithic architecture trong phát triển ứ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ộ đề 13

13. Spring Security framework được sử dụng để làm gì trong ứng dụng web Java?

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ộ đề 13

14. Transaction management là gì và tại sao nó quan trọng trong ứng dụng web Java?

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ộ đề 13

15. Thế nào là 'Stateless' trong ngữ cảnh của RESTful API?

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ộ đề 13

16. Dependency Injection (DI) là một nguyên tắc thiết kế quan trọng trong Spring Framework. Mục đích chính của DI là 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ộ đề 13

17. Cookie và Session khác nhau như thế nào trong việc quản lý trạng thái người dùng?

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ộ đề 13

18. RESTful API là gì và nó khác biệt như thế nào so với SOAP (Simple Object Access Protocol)?

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ộ đề 13

19. CI/CD (Continuous Integration/Continuous Delivery) pipeline là gì và tại sao nó quan trọng trong phát triển ứng dụng web Java hiện đại?

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ộ đề 13

20. Reactive programming (lập trình phản ứng) là gì và nó mang lại lợi ích gì trong phát triển ứng dụng web Java, đặc biệt là ứng dụng real-time?

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ộ đề 13

21. Loại lỗi nào thường xảy ra khi phát triển RESTful API và trả về HTTP status code 404?

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ộ đề 13

22. Ưu điểm chính của việc sử dụng framework Spring Boot so với Spring MVC thuần túy 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ộ đề 13

23. Caching (bộ nhớ đệm) được sử dụng để làm gì trong ứng dụng web Java và các loại caching phổ biến 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ộ đề 13

24. Trong mô hình MVC (Model-View-Controller) trong 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?

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ộ đề 13

25. HttpServletRequest và HttpServletResponse là các interface quan trọng trong Servlet API. HttpServletRequest được dùng để làm gì?

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ộ đề 13

26. CSRF (Cross-Site Request Forgery) là loại tấn công web nào và làm thế nào để phòng tránh nó trong ứng dụng web Java?

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ộ đề 13

27. ORM (Object-Relational Mapping) framework nào phổ biến nhất trong Java để tương tác với cơ sở dữ liệu quan hệ?

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ộ đề 13

28. Annotation nào trong Spring MVC được sử dụng để ánh xạ một HTTP request đến một method xử lý cụ thể trong Controller?

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ộ đề 13

29. JPA Entity Manager đượ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ộ đề 13

30. Serverless computing (ví dụ: AWS Lambda, Google Cloud Functions) là gì và nó khác biệt như thế nào so với mô hình server truyền thống trong việc triển khai ứng dụng web Java?