Công cụ chú thích @SpringBean
của Wicket hoạt động như thế nào? Liệu nó có sử dụng sự phản chiếu trong thời gian chạy không? Liệu nó làm cho trình biên dịch tiêm một số mã? Hay cái gì?Chú thích @SpringBean của Wicket hoạt động như thế nào?
Trả lời
Mùa xuân sử dụng trình tải lớp và ASM khi chạy để tìm tất cả các lớp được chú thích.
Bạn có thể configure nơi mùa xuân nên tìm kiếm cho đậu:
<context:component-scan base-package="some.package.to.start.from"/>
này sử dụng ClassPathBeanDefinitionScanner nội bộ mà sẽ sử dụng PathMatchingResourcePatternResolver để tìm các lớp học và ASM-based MetadataReader để đọc các chú thích.
Cơ chế này không liên quan gì đến '@ SpringBean', đó là cấu trúc Wicket, không phải là cấu trúc Spring. – skaffman
Tôi chưa từng sử dụng Wicket. Tôi nghĩ anh ấy có nghĩa là chú thích @Component etc. Tốt để biết. –
@SpringBean
hoạt động bằng Wicket's underlying Injector mechanism. Khi bạn khởi tạo một thành phần Wicket, hàm tạo của lớp cơ sở thành phần của Wicket nhìn vào lớp đang được khởi tạo, tìm kiếm chú thích @SpringBean
. Nếu đậu được tìm thấy, sau đó Wicket tạo ra một proxy cho đậu mùa xuân và tiêm nó vào trường của thành phần. Đây là tương đương Wicket tương đương với chú thích @Autowired
của Spring, hiệu ứng cũng tương tự.
Tuy nhiên, nó không có liên quan gì đến chức năng quét ngữ cảnh/lớp học của Spring (ví dụ: @Component
), về tự động khám phá những gì và không phải là bean, hệ thống dây điện.
Để sử dụng, chỉ cần thêm trình nghe SpringComponentInjector vào ứng dụng Wicket để nghe các thành phần instantiations. – Matt
Lớp đánh dấu bằng một chú thích @SpringBean phải có một trong số:
- Một constructor không args
- Một lớp cha với một constructor không có args
- Thực hiện một giao diện
Một ngoại lệ sẽ bị ném nếu các điều kiện này không được đáp ứng vì Wicket sẽ không thể ủy quyền lớp học.
đây là thông tin hữu ích nhưng không thực sự là câu trả lời cho câu hỏi. nó có thể là tốt hơn như một bình luận các câu hỏi hoặc câu trả lời khác. –
- 1. Chú thích của người dùng hoạt động như thế nào?
- 2. Các chú thích Java này hoạt động như thế nào?
- 3. wicket @SpringBean không thể tạo bean
- 4. Phương thức Wicket setResponsePage() hoạt động như thế nào?
- 5. Mô hình Wicket hoạt động như thế nào với chung?
- 6. Nút Thích của Facebook hoạt động như thế nào?
- 7. Chú thích từ javax.validation.constraints không hoạt động
- 8. Chú thích là gì và chúng thực sự hoạt động như thế nào cho các khung công tác như Spring?
- 9. ResourceReferences trong Wicket là gì và chúng hoạt động như thế nào?
- 10. Chú thích hữu ích như thế nào trong PHP?
- 11. Xóa động các chú thích
- 12. Chú thích phương thức Java hoạt động kết hợp với phương pháp ghi đè như thế nào?
- 13. Thiết bị của Duff hoạt động như thế nào?
- 14. Zmq poller hoạt động như thế nào?
- 15. __iter__ hoạt động như thế nào?
- 16. foldr hoạt động như thế nào?
- 17. thông báo của facebook hoạt động như thế nào?
- 18. ProcessMonitor của SysInternal hoạt động như thế nào?
- 19. RunWith (PowerMockRunner.class) không hoạt động với chú thích gói
- 20. jQuery.on() hoạt động như thế nào?
- 21. UpdatePanel hoạt động như thế nào?
- 22. Nén MPEG4 hoạt động như thế nào?
- 23. Chú thích dựa trên Spring MVC LocaleChangeInterceptor không hoạt động
- 24. CorFlags.exe/32BIT + hoạt động như thế nào?
- 25. Chú thích mùa xuân @Inject không hoạt động
- 26. Đặt tọa độ khóa (chú thích) không hoạt động?
- 27. PropertyChangedEventHandler hoạt động như thế nào?
- 28. Printf hoạt động như thế nào?
- 29. Angular $ q.when hoạt động như thế nào?
- 30. Dịch Magento hoạt động như thế nào?
Không có chú thích '@ SpringBean' trong API Spring. Có một trong Wicket, mặc dù, là những gì bạn đang sử dụng? – skaffman
Ah, tôi không biết điều đó - vâng tôi đang sử dụng Wicket. Tôi sẽ thay đổi câu hỏi và thẻ để phản ánh điều đó. Cảm ơn. – Tarquila
@Tarquila - Tôi nghĩ rằng sẽ dễ dàng hơn khi sửa câu hỏi này cho mùa xuân. Và thêm một cái mới cho Wicket. –