2013-04-08 44 views
5

我正在開發spring-hibernate-jsf應用程序,但我不明白managedbean和spring控制器之間的區別。我認爲managedbeans像控制器一樣工作。使用控制器還是managedbean有什麼優勢?託管bean和彈簧控制器有什麼區別?

+0

區別在於它們不同。不是一個真正的問題。 – EJP 2013-04-09 01:28:15

回答

1

託管豆提供服務並用作UI組件的模型。控制器是請求/響應組件,如Servlets。

JSF是一個基於組件的web框架& Spring是一個DI框架。 JSF & Spring管理自己的bean,所以要引用ManagedBeans並注入它們,您需要使用@Controller註釋將JSF ManagedBeans標記爲Spring控制器。

如果您正在考慮將其中一個替換爲另一個,那麼如果您想同時使用兩個彈簧組合,則不需要使用它們。

+0

我剛剛將managedbeans更改爲控制器(我只是添加了@controller annotiation並刪除了@managedbean),並給出了「exampleController解析爲null ...」。 – 2013-04-08 13:32:27

+0

您需要分別爲JSF和Spring保留'@ ManagedBean'和'@ Controller'註釋。 – 2013-04-08 14:00:53

+0

我只會將託管bean作爲* controller *用於UI界面,並使用Spring進行DI和類注入。儘管如此,如果你要在Java EE環境中工作,最好使用EJB而不是Spring(也許可以通過Hibernate實現JPA)。 – 2013-04-08 14:29:32

相關問題