Spring中的bean和Dao类声明

时间:2013-08-25 04:51:33

标签: java spring

Spring提供了在application-context.xml文件中定义bean类和DAO类的功能,现在我正在定义像这样的bean类

<context:component-scan base-package="com.forum.jsfbeans" />

但谷歌的很多地方我看到人们定义DAO,bean,服务类的方式与此不同

<!-- Beans Declaration -->
    <bean id="User" class="com.otv.model.User"/>

    <!-- User Service Declaration -->
    <bean id="UserService" class="com.otv.user.service.UserService">
        <property name="userDAO" ref="UserDAO" />
    </bean>

    <!-- User DAO Declaration -->
    <bean id="UserDAO" class="com.otv.user.dao.UserDAO">
        <property name="sessionFactory" ref="SessionFactory" />
    </bean>

我们必须以不同方式定义application-context.xml文件中的所有类(就像我上面所做的那样),或者我们可以对每种类型的类使用以下标记,而不是DAO,Bean或Service?

<context:component-scan base-package="com.forum.dao,com.forum.jsfbeans,com.forum.service" />

如果我们将定义类似上面的内容,它将起作用,Spring知道它必须在DAO,Service或Bean类中执行什么操作。

1 个答案:

答案 0 :(得分:0)

实现相同结果只是两种不同的方式。有些人喜欢在xml中定义bean,比如使用组件扫描进行自动检测。