Spring beans配置案(三)学習ノート

3727 ワード

tomactの方式で配置します.
 
<beans
	xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns:p="http://www.springframework.org/schema/p"
	xmlns:tx="http://www.springframework.org/schema/tx"
	xmlns:aop="http://www.springframework.org/schema/aop"
	xsi:schemaLocation="http://www.springframework.org/schema/beans
	 http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
	 http://www.springframework.org/schema/tx
	 http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
	 http://www.springframework.org/schema/aop
	 http://www.springframework.org/schema/aop/spring-aop-2.5.xsd">
	
   <!--      --> 

	<!--   DataSource -->
    	<bean id="myDataSource" class="org.apache.tomcat.dbcp.dbcp.BasicDataSource">
         	<property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"/>
        	<property name="url" value="jdbc:oracle:thin:@192.168.1.146:1521:orcl"/>
        	<property name="username" value="admin"/>
         	<property name="password" value="abcd"/>
   	</bean>
     
    	 <!--   SessionFactory -->
   	 <bean id="myOneSF" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
       	 	<property name="dataSource" ref="myDataSource"/>
       	 	<property name="hibernateProperties">
           		<props>
              			<prop key="hibernate.dialect">org.hibernate.dialect.Oracle10gDialect</prop>
              			<prop key="hibernate.show_sql">true</prop>
              			<prop key="hibernate.format_sql">true</prop>
           		</props>
        	</property>
        	<!--   ORM       -->
       		 <property name="mappingResources">
             		<list>
               		<value>orm/Books.hbm.xml</value>
             		</list>
        	 </property>
    	</bean>

    <!-- ** -->
	
	<!--   hibernate       -->
	<bean id="guanli" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
		<property name="sessionFactory" ref="myOneSF"/>
	</bean>
	
	<!--       ,             -->
	<tx:advice id="txA" transaction-manager="guanli">
		<!--     ,       -->
		<tx:attributes>
			<tx:method name="get*" read-only="true" propagation="SUPPORTS"/>
			<tx:method name="add*" propagation="REQUIRED"/>
		</tx:attributes>
	</tx:advice>
	
	<aop:config>
		<!--              -->
		<aop:pointcut expression="execution(* biz.impl.*.*(..))" id="method"/>
		<!--                 -->
		<aop:advisor advice-ref="txA" pointcut-ref="method"/>
	</aop:config>
	
	<!--   DAO -->
    <bean id="booksDao" class="dao.impl.BooksDaoImpl">
    	<property name="sessionFactory" ref="myOneSF"></property>
    </bean>
    
    <!--   BIZ -->
    <bean id="booksBiz" class="biz.impl.BooksBizImpl">
        <property name="booksDao" ref="booksDao"/>
    </bean>
    
    <!--       -->
    <bean id="booksAction" class="web.action.BooksAction">
       <property name="booksBiz" ref="booksBiz"/>
    </bean>
</beans>