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

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

1. Thế nào là 'embedded server' trong ngữ cảnh Spring Boot và nó khác gì so với việc deploy ứng dụng web truyền thống lên application server (ví dụ: Tomcat standalone)?
2. Microservices architecture (kiến trúc microservices) là gì và nó mang lại lợi ích gì so với kiến trúc monolithic (nguyên khối) trong phát triển ứng dụng web Java?
3. Transaction management (quản lý giao dịch) là gì và tại sao nó quan trọng trong ứng dụng web Java tương tác với cơ sở dữ liệu?
4. API Gateway pattern (mô hình API Gateway) thường được sử dụng trong kiến trúc microservices để giải quyết vấn đề gì?
5. Công nghệ nào trong Java EE cung cấp API để truy cập và quản lý dữ liệu từ các nguồn dữ liệu khác nhau, bao gồm cả cơ sở dữ liệu quan hệ và NoSQL?
6. Docker và containerization mang lại lợi ích gì cho việc triển khai ứng dụng web Java?
7. Điểm khác biệt chính giữa `HttpServletRequest` và `HttpServletResponse` trong Servlet là gì?
8. Server-Side Rendering (SSR) và Client-Side Rendering (CSR) là hai phương pháp rendering trang web khác nhau. Phương pháp nào thường được ưu tiên để cải thiện SEO (Search Engine Optimization) và performance ban đầu?
9. Trong ngữ cảnh phát triển ứng dụng web Java, Servlet container (ví dụ: Tomcat) chịu trách nhiệm chính cho công việc nào?
10. Annotation `@RestController` trong Spring MVC khác với `@Controller` như thế nào?
11. Trong Spring Security, `FilterChain` đóng vai trò gì?
12. Cookie và Session khác nhau như thế nào trong việc quản lý trạng thái người dùng trong ứng dụng web Java?
13. JSP (JavaServer Pages) được biên dịch thành loại file nào trước khi được Servlet container thực thi?
14. OAuth 2.0 là gì và nó thường được sử dụng để giải quyết vấn đề gì trong ứng dụng web?
15. CSRF (Cross-Site Request Forgery) là loại tấn công bảo mật nào và làm thế nào để phòng tránh nó trong ứng dụng web Java?
16. Session trong ngữ cảnh web Java (ví dụ: HttpSession) được sử dụng để làm gì?
17. JUnit và Mockito là các thư viện phổ biến được sử dụng cho mục đích gì trong phát triển ứng dụng web Java?
18. Message queue (hàng đợi tin nhắn) như Kafka hoặc RabbitMQ được sử dụng để làm gì trong kiến trúc ứng dụng web Java?
19. CI/CD (Continuous Integration/Continuous Delivery hoặc Continuous Deployment) là gì và tại sao nó quan trọng trong phát triển ứng dụng web hiện đại?
20. Trong JPA, thực thể (Entity) là gì và nó được ánh xạ tới thành phần nào trong cơ sở dữ liệu?
21. Lazy loading và eager loading là gì trong ORM (ví dụ: Hibernate) và khi nào nên sử dụng loại loading nào?
22. WebSockets là gì và nó khác gì so với HTTP truyền thống trong giao tiếp client-server?
23. RESTful API là gì và tại sao nó trở nên phổ biến trong phát triển web hiện đại?
24. Framework Spring Boot giúp đơn giản hóa việc phát triển ứng dụng web Java bằng cách nào?
25. Annotation `@WebServlet` trong Servlet được sử dụng để làm gì?
26. Reactive programming và Reactive Streams API (ví dụ: Project Reactor, RxJava) mang lại lợi ích gì trong phát triển ứng dụng web Java hiệu năng cao?
27. XSS (Cross-Site Scripting) là loại tấn công bảo mật nào và biện pháp phòng tránh chính là gì?
28. Trong mô hình MVC (Model-View-Controller) áp dụng cho phát triển 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 dữ liệu?
29. ORM (Object-Relational Mapping) framework như Hibernate giải quyết vấn đề gì trong phát triển ứng dụng web Java?
30. 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ới Spring?