Tất cả câu hỏi

Ngân hàng câu hỏi trắc nghiệm có đáp án và giải thích chi tiết.

Bấm vào từng câu để xem đáp án
#761
100%
ĐỘ CHÍNH XÁC
6
LƯỢT LÀM
4 LỰA CHỌN
AThey automatically convert to mobile apps
They provide dynamic and fast content updatesĐÚNG
CThey completely avoid CSS
DThey can only be accessed on mobile devices
Giải thích

Các ứng dụng một trang (SPAs) được coi là lý tưởng để xây dựng các ứng dụng web phản hồi vì chúng cung cấp nội dung cập nhật nhanh chóng và động. Điều này đạt được thông qua việc sử dụng JavaScript để tải dữ liệu từ máy chủ và cập nhật nội dung trên trang web mà không cần tải lại trang. Điều này giúp cải thiện trải nghiệm người dùng và tăng tốc độ tải trang. Ngoài ra, các ứng dụng một trang thường được xây dựng trên cơ sở dữ liệu và có thể được truy cập từ bất kỳ thiết bị nào có kết nối internet, bao gồm cả máy tính để bàn và thiết bị di động. Điều này giúp tạo ra một ứng dụng web phản hồi linh hoạt và dễ sử dụng.

#762
88%
ĐỘ CHÍNH XÁC
8
LƯỢT LÀM
4 LỰA CHỌN
AThey provide better back/forward navigation than traditional sites
BThey cannot support routing
CThey use standard browser navigation without modification
Manual configuration is needed to manage browser history correctlyĐÚNG
Giải thích

Các ứng dụng đơn trang (SPAs) có một nhược điểm quan trọng liên quan đến lịch sử và điều hướng của trình duyệt. Khi bạn sử dụng một SPA, trình duyệt không thể lưu lại lịch sử trang web như một trang web truyền thống. Điều này có nghĩa là nếu bạn muốn quay lại trang trước đó, bạn không thể sử dụng tính năng quay lại (back) của trình duyệt. Thay vào đó, bạn phải sử dụng các tính năng riêng của ứng dụng để điều hướng. Một nhược điểm khác là bạn cần cấu hình thủ công để quản lý lịch sử trình duyệt một cách chính xác. Điều này có thể gây khó khăn cho người dùng khi họ muốn quay lại trang trước đó.

#763
83%
ĐỘ CHÍNH XÁC
6
LƯỢT LÀM
4 LỰA CHỌN
Aspring-boot-starter-web
Bspring-boot-starter-data-jpa
spring-boot-starter-testĐÚNG
Dspring-boot-starter-security
Giải thích

Để viết các bài kiểm tra tích hợp trong ứng dụng Spring Boot, bạn cần sử dụng một số module đặc biệt. Module nào trong các lựa chọn dưới đây cung cấp hỗ trợ cho việc viết các bài kiểm tra tích hợp?

#764
83%
ĐỘ CHÍNH XÁC
6
LƯỢT LÀM
4 LỰA CHỌN
ATo manage database connections.
To provide authentication and authorization functionality.ĐÚNG
CTo handle HTTP requests and responses.
DTo manage application configuration.
Giải thích

Mục đích chính của Spring Boot Security là cung cấp tính năng xác thực và ủy quyền cho ứng dụng. Nó cho phép bạn kiểm soát truy cập vào các tài nguyên của ứng dụng, đảm bảo rằng chỉ những người dùng được phép mới có thể truy cập vào chúng. Spring Boot Security cung cấp các tính năng như xác thực người dùng, ủy quyền, bảo vệ chống lại các cuộc tấn công như SQL injection và cross-site scripting (XSS). Nó cũng cho phép bạn cấu hình các chính sách bảo mật tùy chỉnh để đáp ứng nhu cầu của ứng dụng. Ngoài ra, Spring Boot Security cũng hỗ trợ các phương thức xác thực như xác thực dựa trên username và password, xác thực dựa trên token, và xác thực dựa trên OAuth.

#765
100%
ĐỘ CHÍNH XÁC
4
LƯỢT LÀM
4 LỰA CHỌN
ATo store user data.
To store the signing algorithm and token type.ĐÚNG
CTo store the signature.
DTo store the expiration time.
Giải thích

JWT (JSON Web Token) là một loại token được sử dụng để xác thực và truyền thông tin giữa các ứng dụng. Header của JWT chứa thông tin về thuật toán ký và loại token. Nó được sử dụng để xác định cách thức ký token và loại token được sử dụng. Ví dụ, nếu header chứa thông tin về thuật toán HMAC SHA256 và loại token là JWT, thì ứng dụng nhận được token có thể xác định được cách thức ký token và loại token được sử dụng. Điều này giúp ứng dụng nhận được token có thể xác thực và giải mã token một cách chính xác. Ngoài ra, header còn chứa thông tin về phiên bản của JWT, giúp ứng dụng nhận được token có thể xác định được phiên bản của token và xử lý token một cách phù hợp.

#766
67%
ĐỘ CHÍNH XÁC
6
LƯỢT LÀM
4 LỰA CHỌN
AThe HTTP method (e.g., GET, POST)
BThe endpoint URL
CThe request and response payloads
The underlying database schemaĐÚNG
Giải thích

Trong tài liệu REST của Spring, các yếu tố quan trọng thường được tìm thấy bao gồm phương thức HTTP (ví dụ: GET, POST), URL endpoint, và dữ liệu yêu cầu và phản hồi. Tuy nhiên, cấu trúc cơ sở dữ liệu ẩn dưới (the underlying database schema) không phải là một phần quan trọng trong tài liệu REST của Spring. Điều này là vì tài liệu REST thường tập trung vào giao diện và hành vi của API, chứ không phải là chi tiết về cơ sở dữ liệu.

#767
100%
ĐỘ CHÍNH XÁC
5
LƯỢT LÀM
4 LỰA CHỌN
By using the @ApiResponses and @ApiResponse annotations on the controller method.ĐÚNG
BBy listing them in the method's Javadoc comments.
CBy configuring them in the application.yml file.
DBy creating separate methods for each possible response code.
Giải thích

Để ghi chép các phản hồi khả năng xảy ra khác nhau cho một điểm cuối, chẳng hạn như 200 OK hoặc 404 Not Found, bạn có thể sử dụng các annotation @ApiResponses và @ApiResponse trên phương thức controller. Các annotation này cho phép bạn mô tả các phản hồi khả năng xảy ra khác nhau cho một điểm cuối, bao gồm cả mã trạng thái HTTP và mô tả của phản hồi. Điều này giúp cho việc sử dụng và hiểu rõ về điểm cuối trở nên dễ dàng hơn.

#768
100%
ĐỘ CHÍNH XÁC
3
LƯỢT LÀM
4 LỰA CHỌN
AMongoRepository
BMongoClient
MongoTemplateĐÚNG
DSimpleMongoRepository
Giải thích

Trong Spring Data MongoDB, có một số cách để tương tác với MongoDB. Tuy nhiên, nếu bạn muốn thực hiện các hoạt động cơ bản của MongoDB như insert, update, delete, thì bạn cần sử dụng một lớp mẫu (template) để thực hiện các hoạt động này. Lớp mẫu này được gọi là MongoTemplate. MongoTemplate cung cấp các phương thức để thực hiện các hoạt động cơ bản của MongoDB và cung cấp sự linh hoạt để tùy chỉnh các hoạt động này.

#769
80%
ĐỘ CHÍNH XÁC
5
LƯỢT LÀM
4 LỰA CHỌN
Aupdate()
find()ĐÚNG
CinsertOne()
DdeleteMany()
Giải thích

Để lấy dữ liệu từ một collection trong MongoDB, bạn cần sử dụng lệnh find(). Lệnh này cho phép bạn tìm kiếm và trả về các tài liệu (documents) dựa trên các điều kiện cụ thể. Ví dụ, bạn có thể tìm kiếm các tài liệu có tên là 'John' hoặc các tài liệu có tuổi lớn hơn 18. Ngoài ra, lệnh find() còn cho phép bạn thực hiện các phép toán toán học, so sánh và các hàm khác để lọc dữ liệu.

#770
100%
ĐỘ CHÍNH XÁC
3
LƯỢT LÀM
4 LỰA CHỌN
ATo specify the local database path.
To authenticate the application with the MongoDB Atlas cluster.ĐÚNG
CTo configure the JDBC driver.
DTo define the data model.
Giải thích

Khi cấu hình chuỗi kết nối cho MongoDB Atlas trong Spring Boot, mục đích bao gồm tên đăng nhập và mật khẩu là để xác thực ứng dụng với cụm MongoDB Atlas. Điều này giúp đảm bảo rằng ứng dụng có quyền truy cập vào dữ liệu trong cụm MongoDB Atlas. Khi bạn bao gồm tên đăng nhập và mật khẩu trong chuỗi kết nối, ứng dụng sẽ sử dụng chúng để xác thực với MongoDB Atlas và truy cập vào dữ liệu. Điều này là rất quan trọng để bảo vệ dữ liệu của bạn khỏi truy cập không hợp lệ.

#771
100%
ĐỘ CHÍNH XÁC
6
LƯỢT LÀM
4 LỰA CHỌN
AA local installation of MongoDB.
A cloud-hosted database service by MongoDB.ĐÚNG
CA Java driver for MongoDB.
DA tool for managing relational databases.
Giải thích

MongoDB Atlas là một dịch vụ cơ sở dữ liệu được lưu trữ trên đám mây do MongoDB cung cấp. Nó cho phép người dùng tạo và quản lý các cơ sở dữ liệu MongoDB trên các nền tảng đám mây như AWS, Google Cloud và Azure. Với MongoDB Atlas, người dùng có thể dễ dàng tạo và cấu hình các cơ sở dữ liệu, cũng như quản lý quyền truy cập và bảo mật. Ngoài ra, MongoDB Atlas cũng cung cấp các tính năng tự động hóa và giám sát để giúp người dùng tối ưu hóa hiệu suất và bảo mật của cơ sở dữ liệu. Điều này làm cho MongoDB Atlas trở thành một lựa chọn phổ biến cho các ứng dụng và dự án cần một cơ sở dữ liệu mạnh mẽ và linh hoạt.

#772
100%
ĐỘ CHÍNH XÁC
5
LƯỢT LÀM
4 LỰA CHỌN
AAutomatic generation of CRUD methods.
Flexibility for complex queries and operations.ĐÚNG
CSimplified data model definition.
DBuilt-in transaction management.
Giải thích

MongoTemplate là một công cụ mạnh mẽ trong Spring Data MongoDB, cung cấp nhiều lợi ích khi sử dụng. Một trong những lợi ích chính của MongoTemplate là tính linh hoạt trong việc thực hiện các truy vấn phức tạp và các hoạt động khác. Với MongoTemplate, bạn có thể dễ dàng tạo ra các truy vấn phức tạp bằng cách sử dụng các phương thức như find, update, remove và nhiều hơn nữa. Điều này giúp bạn có thể thực hiện các truy vấn và các hoạt động phức tạp mà không cần phải viết mã thủ công. Ngoài ra, MongoTemplate cũng cung cấp các tính năng như hỗ trợ các loại dữ liệu phức tạp, hỗ trợ các loại dữ liệu không xác định và hỗ trợ các tính năng khác của MongoDB. Tính linh hoạt của MongoTemplate giúp bạn có thể dễ dàng thích nghi với các yêu cầu phức tạp của dự án và tăng hiệu suất của ứng dụng.

#773
100%
ĐỘ CHÍNH XÁC
3
LƯỢT LÀM
4 LỰA CHỌN
AWhen you need the total number of elements and total pages.
When you want to avoid counting all elements and improve performance.ĐÚNG
CWhen you need to sort the results with detailed page information.
DWhen you only need the data and a "previous" indicator.
Giải thích

Khi sử dụng Slice interface trong Spring Data JPA, bạn nên lưu ý rằng nó không phải là một cách thay thế cho Page interface. Slice interface được thiết kế để trả về một phần của dữ liệu, không bao gồm thông tin tổng số phần tử và tổng số trang. Điều này giúp cải thiện hiệu suất khi bạn không cần phải đếm tất cả các phần tử. Slice interface phù hợp khi bạn cần trả về một phần dữ liệu và chỉ cần biết có phần tử trước đó hay không. Ví dụ, khi bạn muốn trả về 10 phần tử đầu tiên và chỉ cần biết có phần tử trước đó hay không, bạn có thể sử dụng Slice interface. Tuy nhiên, nếu bạn cần biết tổng số phần tử và tổng số trang, bạn nên sử dụng Page interface.

#774
83%
ĐỘ CHÍNH XÁC
6
LƯỢT LÀM
4 LỰA CHỌN
It prevents concurrent data conflictsĐÚNG
BIt improves UI rendering
CIt replaces caching
DIt manages database indexes
Giải thích

Optimistic locking trong JPA là một kỹ thuật giúp ngăn chặn các xung đột dữ liệu đồng thời. Khi một ứng dụng cố gắng cập nhật dữ liệu trong cơ sở dữ liệu, JPA sẽ kiểm tra xem bản ghi dữ liệu đó đã được cập nhật bởi người dùng khác hay chưa. Nếu dữ liệu đã được cập nhật, ứng dụng sẽ ném ra ngoại lệ, giúp ngăn chặn các xung đột dữ liệu đồng thời. Điều này giúp đảm bảo tính toàn vẹn và chính xác của dữ liệu trong cơ sở dữ liệu. Ngoài ra, optimistic locking cũng giúp cải thiện hiệu suất của ứng dụng, vì nó không yêu cầu các khóa ngoại (foreign key) để ngăn chặn các xung đột dữ liệu.

#775
100%
ĐỘ CHÍNH XÁC
6
LƯỢT LÀM
4 LỰA CHỌN
ASession.
Transaction.ĐÚNG
CSessionFactory.
DConfiguration.
Giải thích

Trong Hibernate, giao diện được sử dụng để quản lý các giao dịch cơ sở dữ liệu là Transaction. Giao diện Transaction cho phép bạn bắt đầu, hoàn thành và hủy bỏ các giao dịch cơ sở dữ liệu. Điều này giúp bạn có thể quản lý các giao dịch cơ sở dữ liệu một cách hiệu quả và an toàn. Khi sử dụng giao diện Transaction, bạn có thể đảm bảo rằng các giao dịch cơ sở dữ liệu được thực hiện một cách nguyên tử và không bị ảnh hưởng bởi các lỗi hoặc sự cố khác. Ngoài ra, giao diện Transaction cũng cho phép bạn sử dụng các tính năng như rollback và commit để quản lý các giao dịch cơ sở dữ liệu.

#776
100%
ĐỘ CHÍNH XÁC
4
LƯỢT LÀM
4 LỰA CHỌN
ACaching.
hbm2ddl (DDL auto feature)ĐÚNG
CAutomatic dirty checking.
DTransaction management.
Giải thích

Tính năng chính của Hibernate cung cấp tự động tạo bảng và tạo schema là hbm2ddl (tính năng tự động DDL). Đây là tính năng cho phép Hibernate tự động tạo bảng và schema trong cơ sở dữ liệu khi bạn chạy ứng dụng. Khi bạn sử dụng hbm2ddl, Hibernate sẽ tự động tạo bảng và schema dựa trên các thông tin được định nghĩa trong các tệp mapping Hibernate (hbm.xml hoặc hibernate.cfg.xml). Điều này giúp bạn tiết kiệm thời gian và công sức khi tạo cơ sở dữ liệu cho ứng dụng của mình. Ngoài ra, tính năng này cũng giúp bạn dễ dàng quản lý và cập nhật cơ sở dữ liệu khi ứng dụng của bạn thay đổi.

#777
100%
ĐỘ CHÍNH XÁC
3
LƯỢT LÀM
4 LỰA CHỌN
ABy requiring manual SQL queries for every operation.
By providing an object-relational mapping (ORM) layer.ĐÚNG
CBy hiding all data from the application.
DBy increasing the number of database connections.
Giải thích

JPA (Java Persistence API) giúp quản lý tương tác với cơ sở dữ liệu bằng cách cung cấp một lớp ánh xạ đối tượng-relational (ORM). Điều này cho phép các lập trình viên viết mã Java mà không cần phải viết mã SQL thủ công để tương tác với cơ sở dữ liệu. Thay vào đó, JPA sẽ tự động chuyển đổi các đối tượng Java thành các bản ghi trong cơ sở dữ liệu và ngược lại. Điều này giúp giảm thiểu sự phức tạp và tăng cường hiệu suất khi tương tác với cơ sở dữ liệu. Ngoài ra, JPA cũng cung cấp các tính năng như quản lý trạng thái, quản lý mối quan hệ và hỗ trợ các tính năng nâng cao khác.

#778
100%
ĐỘ CHÍNH XÁC
5
LƯỢT LÀM
4 LỰA CHỌN
ATo increase API complexity.
To simplify data persistence and retrieval.ĐÚNG
CTo hide database interactions.
DTo reduce API functionality.
Giải thích

Kết nối một dịch vụ web RESTful với JPA (Java Persistence API) là một phương pháp phổ biến trong lập trình web. Lý do chính để thực hiện điều này là để đơn giản hóa quá trình lưu trữ và truy xuất dữ liệu. JPA cung cấp một lớp trừu tượng giữa ứng dụng và cơ sở dữ liệu, giúp giảm thiểu sự phức tạp trong việc quản lý dữ liệu. Khi sử dụng JPA, bạn có thể tập trung vào việc phát triển logic kinh doanh của ứng dụng mà không cần lo lắng về việc tương tác với cơ sở dữ liệu. Điều này giúp tăng hiệu suất và giảm thiểu thời gian phát triển. Ngoài ra, JPA cũng hỗ trợ các tính năng như phân tích dữ liệu, tạo báo cáo và quản lý phiên bản dữ liệu, giúp bạn có thể dễ dàng quản lý và phân tích dữ liệu của ứng dụng.

#779
100%
ĐỘ CHÍNH XÁC
6
LƯỢT LÀM
4 LỰA CHỌN
AThe database connection URL.
BThe database dialect.
The location of a Hibernate mapping file that defines how a Java class is mapped to a database table.ĐÚNG
DThe location of the Hibernate configuration file.
Giải thích

Dòng <mapping resource="User.hbm.xml"> trong file hibernate.cfg.xml chỉ định vị trí của một tệp định nghĩa ánh xạ Hibernate (Hibernate mapping file) mà định nghĩa cách ánh xạ một lớp Java sang một bảng trong cơ sở dữ liệu. Tệp này thường được gọi là tệp định nghĩa ánh xạ (mapping file) và thường có định dạng .hbm.xml. Mục đích chính của tệp này là định nghĩa cách ánh xạ các trường trong lớp Java sang các cột trong bảng cơ sở dữ liệu, cũng như các mối quan hệ giữa các bảng.

#780
100%
ĐỘ CHÍNH XÁC
6
LƯỢT LÀM
4 LỰA CHỌN
A@RequestBody
B@RequestParam
@PathVariableĐÚNG
D@RequestHeader
Giải thích

Trong Spring Boot REST, annotation được sử dụng để trích xuất các biến đường dẫn từ URL là @PathVariable. Annotation này cho phép bạn truy cập vào các phần của URL và sử dụng chúng như là các biến trong phương thức của controller. Ví dụ, nếu bạn có một phương thức như sau: @GetMapping("/users/{id}") public String getUser(@PathVariable Long id) { // code here } Trong ví dụ trên, @PathVariable được sử dụng để trích xuất giá trị của id từ URL và sử dụng nó như là một biến trong phương thức getUser.