【发布时间】:2014-09-10 15:11:49
【问题描述】:
我正在将 Hibernate、Spring 和 JSF 用于应用程序。 我实际上正在使用带有 Jersey(JAX-RS) 的 Restfull WebService 来改进应用程序。为此,我用@Component 注释了我的类。在这个类中,我需要调用一个服务来从数据库中获取一些东西。
@Component
@Path("/Graphic")
public class GraphicService {
//@Autowired //@Inject
//ParticipantBo participantBo;
or
//@ManagedProperty("#{participantBo}")
//private ParticipantBo participantBo;
我在教程中遇到了一些我不太了解/理解其含义的注释。 所以我想检查一下我的整个应用程序的配置是否正常,或者我是否可以清理一些东西。
大多数时候,我使用@ManagedProperty 注释在我的类中包含一个使用@ManagedBean 注释的依赖项(一个ServiceBO,然后调用一个Dao)。
@ManagedBean(name="participantController")
@ViewScoped
public class AddParticipantBean implements Serializable{
private static final long serialVersionUID = -6952203235934881190L;
@ManagedProperty(value="#{participantBo}")
ParticipantBo participantBo;
}
我有一个 applicationContext.xml 文件,我在其中声明所有类:
<!-- Participant Data Access Object -->
<bean id="participantDao" class="X.X.X.dao.participant.ParticipantDaoImpl" >
<property name="sessionFactory" ref="sessionFactory"></property>
</bean>
<!-- Participant Business Object -->
<bean id="participantBo" class="X.X.X.bo.participant.ParticipantBoImpl" >
<property name="participantDao" ref="participantDao" />
</bean>
我的配置做得好吗?我可以以不同的方式配置应用程序吗? ,也许没有xml声明?使用@Inject 或@AutoWired 可能吗?但是它们的用例是什么?
【问题讨论】:
标签: spring rest jsf-2 annotations managed-bean