有像@Component,@Service,@Repository,@Service @Resource和@Autowired等什麼是最適合在服務中注入daos的方法,Spring中的控制器中的服務?
什麼是服務注入我的daos的最適當的方式,以及我的服務類的Spring框架許多註解在Spring Controller中。
有了這麼多的註釋,它變得混亂,尤其是@Autowired在所有情況下工作。
有像@Component,@Service,@Repository,@Service @Resource和@Autowired等什麼是最適合在服務中注入daos的方法,Spring中的控制器中的服務?
什麼是服務注入我的daos的最適當的方式,以及我的服務類的Spring框架許多註解在Spring Controller中。
有了這麼多的註釋,它變得混亂,尤其是@Autowired在所有情況下工作。
@Service
和@Repository
只是@Component
的「子註釋」,用於指定多一點的bean(將更多複雜的東西從存儲庫中分離出來)。從注射的角度來看,這三者是平等的。
對於注射,有3:
@Resource
@Inject
@Autowired
@Autowired
是最有力的註釋,但是@Resource
(JSR-250)和@Inject
(JSR -330)是標準化的。 - 無論如何,如果你不打算在非Spring環境中重用你的應用程序,那麼我不會多加關注這個問題。
見Annotation based configuration in Spring,最好Spring Annotation
教程適合我。
我更喜歡避免註釋,特別是如果它們開始變得混亂。在這種情況下,沒有什麼不好的老吸氣劑和吸入劑。只需要自己連線,這並不難,註釋是必要的。
我一直在使用這種舊的方法多年來與getters和setter和xml文件。但隨着春季的新版本,我想嘗試註釋。 – ashishjmeshram 2011-05-16 06:16:24
額外的xml配置是另一個複雜的層面(天氣簡單與否,它算作另一層)。 Java本身就是一種嘈雜的語言,僅僅爲了注入而使用setter/constructors使得代碼看起來更加笨拙。我不知道在Java代碼需要更改時重構XML文件的IDE。 – AR3Y35 2012-10-20 22:56:45