HSF302 - Làm việc với Spring Framework
Trả lời ngay tại đây
Consider the following Java code snippet:
public class MyService {
private MyDependency dependency;
public void setDependency(MyDependency dependency) {
this.dependency = dependency;
}
public void performAction() {
dependency.doSomething();
}
}Which Spring Core Container feature is being demonstrated in this code?
Trả lời hết các câu trên để xem tổng kết, hoặc vào phiên học ngay.
Bắt đầu một phiên học theo môn
Tiến độ của bạn luôn được tính và đồng bộ trực tiếp theo tổng số lượng câu hỏi mới nhất của môn học này.
Câu hỏi của môn
AfterAfterReturningBeforeAroundLabelButtonTextFieldImageViewĐáp án đúng: "Scene scene = new Scene(new Button("Click Me")); ". Trong JavaFX, Scene là vùng chứa toàn bộ đồ thị nút (scene graph) và constructor của nó nhận một Parent làm nút gốc; Button kế thừa Control, Control kế thừa Region rồi Parent, nên truyền thẳng một Button vào constructor của Scene là hợp lệ và nút đó trở thành gốc của cảnh, tức đã được đưa vào scene. "Stage stage = new Stage(new Button("Click Me")); " không biên dịch được vì Stage là cửa sổ, chỉ có constructor rỗng hoặc nhận StageStyle, và nội dung được gắn vào Stage qua setScene chứ không phải qua một nút. "Button button = new Button("Click Me"); " chỉ tạo ra đối tượng nút trong bộ nhớ, chưa gắn vào layout hay Scene nào nên chưa hiện lên màn hình. "Node node = new Node(new Button("Click Me")); " sai vì Node là lớp trừu tượng, không thể new trực tiếp và cũng không có constructor nhận một nút con.
Đáp án đúng: "<fx:controller fx:id="controller" value="MyController" />". Cần nói thẳng: trong FXML thật không có phần tử nào tên fx:controller; controller được gắn bằng thuộc tính fx:controller đặt trên phần tử gốc của tệp, ví dụ <VBox fx:controller="com.foo.MyController">, rồi FXMLLoader tạo đối tượng lớp đó và tiêm các trường @FXML theo fx:id. Vì vậy cả bốn phương án đều không phải cú pháp chạy được, và đáp án ở đây được giữ theo khoá của đề chứ không có căn cứ kỹ thuật nào để xếp nó trên phương án chỉ có value: cả hai cùng mang ý khai báo lớp controller MyController qua tên fx:controller, còn thuộc tính fx:id thêm vào không đóng vai trò gì trong việc gắn controller, nó chỉ đặt định danh cho một phần tử. "<fxml controller="MyController" /> " sai vì FXML không có thẻ fxml, và controller ở đây thiếu tiền tố fx. "<fx:controller type="MyController" />" sai vì type không phải thuộc tính dùng để gắn controller. "<fx:controller value="MyController" />" cũng sai cú pháp y như vậy vì vẫn dùng một phần tử fx:controller không tồn tại.
main()start()launch()run()public class AppStarter {
public static void main(String[] args) {
SpringApplication.run(AppStarter.class, args);
}
}VBoxFlowPaneBorderPaneHBox