SpringとHibernateを組み合わせたアプリケーションContext.xmlファイル構成



<!--    :      --> 
<bean id="dateSource" class="org.springframework.jndi.JndiObjectFactoryBean">
  <property name="jndiName" value="java:comp/env/jdbc/oracle">
  </property>
</bean>

<!--    :  sessionFactory -->
<bean id="sessionFactory"  class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
  <property name="dateSource" ref="dateSource">
  </property>
  <property name="hibernateProperties">
    <props>
      <prop key="hibernate.dialect">
        org.hibernate.dialect.Oracle9Dialect
      </prop>
    </props>
  </property>
  <property name="mappingResources">
    <list>
      <value>com/gmd/pojo/TUser.hbm.xml</value>
    </list>
  </property>

<!--    :        -->
<bean name="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
  <property name="sessionFactory" ref="sessionFactory">
  </property>
</bean>

<!--    :        -->
<bean name="baseTransactionProxyFactory" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean" abstract="true">
  <property name="transactionManager" ref="transactionManager">
  </property>
  <property name="transactionAttributes">
    <props>
      <prop key="*">PROPAGATION_REQUIRED</prop>
    </props>
  </property>
</bean>

<!--    :        -->
<bean name="userDao" class="com.gmd.dao.impl.UserDao">
  <property name="sessionFactory" ref="sessionFactory">
  </property>
</bean>

<!--    :        -->
<bean name="rbacService" class="com.gmd.service.impl.RBACService">
  <property name="userdao" ref="userDao">
  </property>
</bean>

<!--    :          -->
<bean name="rbacServiceProxy" parent="baseTransactionProxyFactory">
  <property name="target" ref="rbacService">
  </property>
</bean>

<!--    :  action   -->
<bean name="/user" class="com.gmd.web.UserAction">
  <property name="rbacService" ref="rbacServiceProxy">
  </property>
</bean>