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

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


Phát triển ứng dụng Web với Java

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

1. Transaction management (quản lý giao dịch) quan trọng như thế nào trong ứng dụng web Java tương tác với cơ sở dữ liệu?

A. Chỉ quan trọng với các ứng dụng tài chính.
B. Đảm bảo tính toàn vẹn dữ liệu, hoặc tất cả các thao tác thành công, hoặc không có thao tác nào được thực hiện (nguyên tắc ACID).
C. Giúp tăng tốc độ truy vấn dữ liệu.
D. Chủ yếu để logging và auditing.

2. ServletConfig và ServletContext khác nhau như thế nào?

A. ServletConfig dùng chung cho tất cả Servlets, ServletContext riêng cho từng Servlet.
B. ServletConfig chứa thông tin cấu hình riêng cho từng Servlet, ServletContext chứa thông tin chung cho toàn bộ ứng dụng web.
C. ServletConfig dùng cho cấu hình bảo mật, ServletContext cho cấu hình hiệu suất.
D. Không có sự khác biệt, ServletConfig và ServletContext là như nhau.

3. EL (Expression Language) trong JSP được sử dụng để làm gì?

A. Viết logic nghiệp vụ phức tạp.
B. Truy cập và hiển thị dữ liệu từ các Java beans và scope objects trực tiếp trong JSP pages.
C. Định nghĩa cấu trúc cơ sở dữ liệu.
D. Viết CSS styles.

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

A. Lưu trữ dữ liệu phía máy chủ cho mỗi phiên làm việc của người dùng.
B. Tăng tốc độ tải trang web.
C. Bảo vệ ứng dụng khỏi tấn công CSRF.
D. Quản lý kết nối cơ sở dữ liệu.

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

A. Một loại Servlet đặc biệt để xử lý file uploads.
B. Một thành phần web có thể intercept request và response để thực hiện các tác vụ tiền xử lý hoặc hậu xử lý (ví dụ: logging, authentication, encoding).
C. Một công cụ để tối ưu hóa hiệu suất.
D. Một framework frontend.

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

A. Tăng tốc độ truy cập cơ sở dữ liệu.
B. Đơn giản hóa việc phát triển, tăng tính tái sử dụng và bảo trì mã.
C. Cải thiện bảo mật phía máy chủ.
D. Tự động tối ưu hóa hiệu suất frontend.

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

A. Quản lý giao diện người dùng.
B. Xử lý logic nghiệp vụ phức tạp.
C. Cung cấp môi trường runtime cho Servlets và quản lý vòng đời của chúng.
D. Quản lý cơ sở dữ liệu.

8. Cookie và Session khác nhau cơ bản ở điểm nào?

A. Cookie lưu trữ dữ liệu phía server, Session lưu trữ phía client.
B. Cookie lưu trữ dữ liệu phía client, Session lưu trữ phía server.
C. Cookie chỉ dùng cho bảo mật, Session dùng cho quản lý trạng thái.
D. Không có sự khác biệt, Cookie và Session là như nhau.

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

A. Lắng nghe các sự kiện từ phía client.
B. Lắng nghe các sự kiện lifecycle của Servlet context, session hoặc request để thực hiện các hành động khi các sự kiện này xảy ra (ví dụ: khởi tạo ứng dụng, hủy session).
C. Lắng nghe các thay đổi trong cơ sở dữ liệu.
D. Lắng nghe các sự kiện mạng.

10. Dependency Injection (DI) là gì và tại sao nó quan trọng trong phát triển ứng dụng web Java với Spring?

A. Một kỹ thuật để tối ưu hóa truy vấn cơ sở dữ liệu.
B. Một pattern thiết kế giúp giảm sự phụ thuộc giữa các thành phần, tăng tính module hóa và khả năng kiểm thử.
C. Một phương pháp bảo mật ứng dụng web.
D. Một cách để quản lý tài nguyên hệ thống hiệu quả hơn.

11. Công nghệ nào của Java EE cho phép phát triển ứng dụng web theo mô hình MVC (Model-View-Controller) một cách rõ ràng và cấu trúc?

A. JDBC
B. JSP và Servlets
C. EJB (Enterprise JavaBeans)
D. JPA (Java Persistence API)

12. Microservices architecture (kiến trúc microservices) là gì và ưu điểm của nó so với monolithic architecture (kiến trúc nguyên khối) trong phát triển ứng dụng web?

A. Kiến trúc microservices là một loại cơ sở dữ liệu mới.
B. Kiến trúc microservices chia ứng dụng thành các dịch vụ nhỏ, độc lập, dễ phát triển, triển khai và scale hơn so với monolithic.
C. Monolithic architecture luôn tốt hơn cho mọi loại ứng dụng.
D. Microservices chỉ phù hợp cho ứng dụng mobile.

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

A. Thay thế HTTP cho mọi loại giao tiếp web.
B. Thiết lập kênh giao tiếp full-duplex (hai chiều) liên tục giữa client và server, cho phép truyền dữ liệu real-time.
C. Tăng tốc độ tải trang web tĩnh.
D. Bảo mật kết nối web.

14. JSTL (JSP Standard Tag Library) cung cấp những gì cho việc phát triển JSP?

A. Các components UI phức tạp.
B. Một tập hợp các tag libraries chuẩn để thực hiện các tác vụ phổ biến như lặp, điều kiện, định dạng dữ liệu trong JSP.
C. Khả năng kết nối cơ sở dữ liệu trực tiếp từ JSP.
D. Các công cụ để debug JavaScript.

15. JPA (Java Persistence API) là gì?

A. Một loại web server.
B. Một đặc tả (specification) chuẩn cho ORM trong Java EE.
C. Một framework frontend JavaScript.
D. Một thư viện để xây dựng RESTful API.

16. Caching (bộ nhớ đệm) được sử dụng để làm gì trong ứng dụng web Java?

A. Thay thế cơ sở dữ liệu.
B. Lưu trữ tạm thời dữ liệu thường xuyên được truy cập để giảm thời gian phản hồi và tải cho server.
C. Tăng cường bảo mật.
D. Quản lý phiên làm việc.

17. Deployment Descriptor (web.xml) trong ứng dụng web Java dùng để làm gì?

A. Viết code Java.
B. Cấu hình ứng dụng web, định nghĩa Servlets, Filters, Listeners, mapping URL, và các tham số khởi tạo.
C. Thiết kế giao diện người dùng.
D. Quản lý cơ sở dữ liệu.

18. 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 động.
B. Kết nối và tương tác với cơ sở dữ liệu.
C. Quản lý phiên làm việc của người dùng.
D. Triển khai logic nghiệp vụ phía máy chủ.

19. Spring Boot khác biệt chính so với Spring Framework truyền thống ở điểm nào trong việc phát triển ứng dụng web Java?

A. Spring Boot là một framework frontend.
B. Spring Boot tập trung vào 'convention over configuration′, tự động cấu hình, và embedded server, giúp giảm cấu hình rườm rà và đơn giản hóa quá trình bootstrap ứng dụng.
C. Spring Boot không hỗ trợ Dependency Injection.
D. Spring Boot chỉ dùng cho ứng dụng microservices.

20. JSON (JavaScript Object Notation) thường được sử dụng để làm gì trong phát triển RESTful API?

A. Thay thế HTML để xây dựng giao diện người dùng.
B. Định nghĩa cấu trúc cơ sở dữ liệu.
C. Định dạng dữ liệu để trao đổi giữa client và server trong các API.
D. Viết logic nghiệp vụ phía server.

21. RESTful API là gì và nó thường được sử dụng để làm gì trong ứng dụng web?

A. Một loại cơ sở dữ liệu NoSQL.
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 phương thức HTTP (GET, POST, PUT, DELETE).
C. Một framework frontend JavaScript.
D. Một giao thức bảo mật cho truyền dữ liệu web.

22. Docker và Kubernetes thường được sử dụng để làm gì trong việc triển khai ứng dụng web Java?

A. Phát triển frontend.
B. Đóng gói ứng dụng và quản lý việc triển khai, scale và vận hành ứng dụng trong môi trường containerized.
C. Quản lý cơ sở dữ liệu.
D. Kiểm thử hiệu năng.

23. Thành phần nào của Spring MVC chịu trách nhiệm xử lý request và trả về response cho client?

A. View Resolver.
B. DispatcherServlet.
C. Controller.
D. Handler Mapping.

24. JSP (JavaServer Pages) được biên dịch thành gì trước khi thực thi trên server?

A. File HTML tĩnh.
B. Servlet.
C. File JavaScript.
D. File XML.

25. SQL Injection là gì và làm thế nào để ngăn chặn nó trong ứng dụng web Java?

A. Tấn công bằng cách chèn mã SQL độc hại vào input của ứng dụng để truy cập hoặc thay đổi database.
B. Tấn công vào hệ điều hành server.
C. Tấn công vào DNS server.
D. Tấn công vào email server.

26. Load balancing (cân bằng tải) là gì và tại sao nó quan trọng trong ứng dụng web Java có lượng truy cập lớn?

A. Một kỹ thuật để tối ưu hóa code Java.
B. Phân phối request đến nhiều server để tránh quá tải cho một server duy nhất, tăng khả năng chịu tải và độ tin cậy.
C. Một phương pháp bảo mật cho API.
D. Một cách để nén dữ liệu truyền tải trên mạng.

27. Annotation (chú thích) trong Java được sử dụng như thế nào trong các framework web như Spring?

A. Thay thế hoàn toàn XML configuration, giảm sự rườm rà.
B. Chỉ dùng để tạo comment trong code.
C. Để định nghĩa giao diện người dùng.
D. Để tăng cường bảo mật ứng dụng.

28. XSS (Cross-Site Scripting) là loại tấn công web nào và cách phòng chống chính là gì?

A. Tấn công bằng cách chèn mã độc hại (thường là JavaScript) vào website để thực thi trên trình duyệt của người dùng khác.
B. Tấn công brute-force password.
C. Tấn công Man-in-the-Middle.
D. Tấn công buffer overflow.

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

A. Tấn công từ chối dịch vụ (DoS).
B. Tấn công bằng cách giả mạo request từ người dùng đã xác thực để thực hiện hành động trái phép.
C. Tấn công SQL Injection.
D. Tấn công XSS (Cross-Site Scripting).

30. 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 tốc độ xử lý frontend.
B. Đơn giản hóa việc tương tác với cơ sở dữ liệu bằng cách map object trong code với bảng trong database.
C. Tự động scale ứng dụng web.
D. Cung cấp bảo mật lớp ứng dụng.

1 / 30

Category: Phát triển ứng dụng Web với Java

Tags: Bộ đề 10

1. Transaction management (quản lý giao dịch) quan trọng như thế nào trong ứng dụng web Java tương tác với cơ sở dữ liệu?

2 / 30

Category: Phát triển ứng dụng Web với Java

Tags: Bộ đề 10

2. ServletConfig và ServletContext khác nhau như thế nào?

3 / 30

Category: Phát triển ứng dụng Web với Java

Tags: Bộ đề 10

3. EL (Expression Language) trong JSP được sử dụng để làm gì?

4 / 30

Category: Phát triển ứng dụng Web với Java

Tags: Bộ đề 10

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

5 / 30

Category: Phát triển ứng dụng Web với Java

Tags: Bộ đề 10

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

6 / 30

Category: Phát triển ứng dụng Web với Java

Tags: Bộ đề 10

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

7 / 30

Category: Phát triển ứng dụng Web với Java

Tags: Bộ đề 10

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

8 / 30

Category: Phát triển ứng dụng Web với Java

Tags: Bộ đề 10

8. Cookie và Session khác nhau cơ bản ở điểm nào?

9 / 30

Category: Phát triển ứng dụng Web với Java

Tags: Bộ đề 10

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

10 / 30

Category: Phát triển ứng dụng Web với Java

Tags: Bộ đề 10

10. Dependency Injection (DI) là gì và tại sao nó quan trọng trong phát triển ứng dụng web Java với Spring?

11 / 30

Category: Phát triển ứng dụng Web với Java

Tags: Bộ đề 10

11. Công nghệ nào của Java EE cho phép phát triển ứng dụng web theo mô hình MVC (Model-View-Controller) một cách rõ ràng và cấu trúc?

12 / 30

Category: Phát triển ứng dụng Web với Java

Tags: Bộ đề 10

12. Microservices architecture (kiến trúc microservices) là gì và ưu điểm của nó so với monolithic architecture (kiến trúc nguyên khối) trong phát triển ứng dụng web?

13 / 30

Category: Phát triển ứng dụng Web với Java

Tags: Bộ đề 10

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

14 / 30

Category: Phát triển ứng dụng Web với Java

Tags: Bộ đề 10

14. JSTL (JSP Standard Tag Library) cung cấp những gì cho việc phát triển JSP?

15 / 30

Category: Phát triển ứng dụng Web với Java

Tags: Bộ đề 10

15. JPA (Java Persistence API) là gì?

16 / 30

Category: Phát triển ứng dụng Web với Java

Tags: Bộ đề 10

16. Caching (bộ nhớ đệm) được sử dụng để làm gì trong ứng dụng web Java?

17 / 30

Category: Phát triển ứng dụng Web với Java

Tags: Bộ đề 10

17. Deployment Descriptor (web.xml) trong ứng dụng web Java dùng để làm gì?

18 / 30

Category: Phát triển ứng dụng Web với Java

Tags: Bộ đề 10

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

19 / 30

Category: Phát triển ứng dụng Web với Java

Tags: Bộ đề 10

19. Spring Boot khác biệt chính so với Spring Framework truyền thống ở điểm nào trong việc phát triển ứng dụng web Java?

20 / 30

Category: Phát triển ứng dụng Web với Java

Tags: Bộ đề 10

20. JSON (JavaScript Object Notation) thường được sử dụng để làm gì trong phát triển RESTful API?

21 / 30

Category: Phát triển ứng dụng Web với Java

Tags: Bộ đề 10

21. RESTful API là gì và nó thường được sử dụng để làm gì trong ứng dụng web?

22 / 30

Category: Phát triển ứng dụng Web với Java

Tags: Bộ đề 10

22. Docker và Kubernetes thường được sử dụng để làm gì trong việc triển khai ứng dụng web Java?

23 / 30

Category: Phát triển ứng dụng Web với Java

Tags: Bộ đề 10

23. Thành phần nào của Spring MVC chịu trách nhiệm xử lý request và trả về response cho client?

24 / 30

Category: Phát triển ứng dụng Web với Java

Tags: Bộ đề 10

24. JSP (JavaServer Pages) được biên dịch thành gì trước khi thực thi trên server?

25 / 30

Category: Phát triển ứng dụng Web với Java

Tags: Bộ đề 10

25. SQL Injection là gì và làm thế nào để ngăn chặn nó trong ứng dụng web Java?

26 / 30

Category: Phát triển ứng dụng Web với Java

Tags: Bộ đề 10

26. Load balancing (cân bằng tải) là gì và tại sao nó quan trọng trong ứng dụng web Java có lượng truy cập lớn?

27 / 30

Category: Phát triển ứng dụng Web với Java

Tags: Bộ đề 10

27. Annotation (chú thích) trong Java được sử dụng như thế nào trong các framework web như Spring?

28 / 30

Category: Phát triển ứng dụng Web với Java

Tags: Bộ đề 10

28. XSS (Cross-Site Scripting) là loại tấn công web nào và cách phòng chống chính là gì?

29 / 30

Category: Phát triển ứng dụng Web với Java

Tags: Bộ đề 10

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

30 / 30

Category: Phát triển ứng dụng Web với Java

Tags: Bộ đề 10

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