mybatis+springmvc+jbpm4整合配置


花了一段时间研究了下jbpm4,后来想把它整合在maven上,但是,后来发现,maven的中央仓库和私服上要么缺了jbpm4的jar包,要么springmvc的相关jar包版本跟原项目的版本匹配不上,所以干脆将jbpm4的jar包不使用maven管理,手工进行添加,成功完成整合。

 

关键配置文件如下:

applicationContext.xml配置:

  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <beans xmlns="http://www.springframework.org/schema/beans"  
  3.     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop"  
  4.     xmlns:tx="http://www.springframework.org/schema/tx" xmlns:context="http://www.springframework.org/schema/context"  
  5.     xmlns:p="http://www.springframework.org/schema/p"  
  6.     xsi:schemaLocation="    
  7.             http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd    
  8.             http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd    
  9.             http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd    
  10.             http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.0.xsd    
  11.             http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd"  
  12.     default-autowire="byName" default-lazy-init="false">  
  13.   
  14.     <context:property-placeholder location="classpath:db.properties" />  
  15.   
  16.     <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"  
  17.         destroy-method="close">  
  18.         <property name="driverClassName" value="${jdbc.driver}" />  
  19.         <property name="url" value="${jdbc.url}" />  
  20.         <property name="username" value="${jdbc.username}" />  
  21.         <property name="password" value="${jdbc.password}" />  
  22.         <property name="maxActive" value="30" />  
  23.         <property name="maxIdle" value="5" />  
  24.     </bean>  
  25.       
  26.     <bean id="transactionManager"  
  27.         class="org.springframework.jdbc.datasource.DataSourceTransactionManager">  
  28.         <property name="dataSource" ref="dataSource" />  
  29.     </bean>  
  30.   
  31.   
  32.     <bean id="sqlSessionFactoryBuild" class="org.mybatis.spring.SqlSessionFactoryBean">  
  33.         <!--dataSource属性指定要用到的连接池 -->  
  34.         <property name="dataSource" ref="dataSource" />  
  35.         <!-- <property name="typeAliasesPackage" value="zttc.itat.user.po"/> -->  
  36.         <property name="configLocation" value="classpath:/mybatis-config.xml" />  
  37.     </bean>  
  38.   
  39.     <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">  
  40.         <property name="basePackage" value="zttc.itat.user.dao" />  
  41.     </bean>  
  42.       
  43.     <bean id="sessionFactoryJBPM"  
  44.         class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">  
  45.         <property name="dataSource" ref="dataSource" />  
  46.   
  47.         <property name="configLocation">  
  48.             <value>classpath:jbpm.hibernate.cfg.xml </value>  
  49.         </property>  
  50.         <property name="configurationClass" value="org.hibernate.cfg.AnnotationConfiguration" />  
  51.         <property name="hibernateProperties">  
  52.             <props>  
  53.                 <prop key="hibernate.dialect">  
  54.                     org.hibernate.dialect.OracleDialect  
  55.                 </prop>  
  56.   
  57.                 <prop key="hibernate.query.factory_class">  
  58.                     org.hibernate.hql.ast.ASTQueryTranslatorFactory  
  59.                 </prop>  
  60.   
  61.                 <prop key="hibernate.show_sql">true </prop>  
  62.             </props>  
  63.         </property>  
  64.     </bean>  
  65.   
  66.     <bean id="transactionManagerJBPM"  
  67.         class="org.springframework.orm.hibernate3.HibernateTransactionManager">  
  68.         <property name="sessionFactory" ref="sessionFactoryJBPM" />  
  69.     </bean>  
  70.   
  71.     <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">  
  72.         <property name="dataSource" ref="dataSource" />  
  73.     </bean>  
  74.   
  75.     <bean class="org.springframework.transaction.support.TransactionTemplate">  
  76.         <constructor-arg ref="transactionManagerJBPM"></constructor-arg>  
  77.     </bean>  
  78.     <!-- <tx:annotation-driven/> -->  
  79.     <!-- jbpm工作流 -->  
  80.     <bean id="springHelper" class="org.jbpm.pvm.internal.processengine.SpringHelper">  
  81.         <property name="jbpmCfg" value="jbpm.cfg.xml"></property>  
  82.     </bean>  
  83.     <bean id="processEngine" factory-bean="springHelper"  
  84.         factory-method="createProcessEngine">  
  85.     </bean>  
  86.   
  87.     <bean id="repositoryService" factory-bean="processEngine"  
  88.         factory-method="getRepositoryService" />  
  89.   
  90.   
  91.     <bean id="executionService" factory-bean="processEngine"  
  92.         factory-method="getExecutionService" />  
  93.   
  94.   
  95.     <bean id="taskService" factory-bean="processEngine"  
  96.         factory-method="getTaskService" />  
  97.   
  98.   
  99.     <bean id="historyService" factory-bean="processEngine"  
  100.         factory-method="getHistoryService" />  
  101.   
  102.   
  103.     <bean id="identityService" factory-bean="processEngine"  
  104.         factory-method="getIdentityService" />  
  105. </beans>   
<?xml version="1.0" encoding="utf-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop"
	xmlns:tx="http://www.springframework.org/schema/tx" xmlns:context="http://www.springframework.org/schema/context"
	xmlns:p="http://www.springframework.org/schema/p"
	xsi:schemaLocation="  
            http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd  
            http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd  
            http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd  
            http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.0.xsd  
            http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd"
	default-autowire="byName" default-lazy-init="false">

	<context:property-placeholder location="classpath:db.properties" />

	<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
		destroy-method="close">
		<property name="driverClassName" value="${jdbc.driver}" />
		<property name="url" value="${jdbc.url}" />
		<property name="username" value="${jdbc.username}" />
		<property name="password" value="${jdbc.password}" />
		<property name="maxActive" value="30" />
		<property name="maxIdle" value="5" />
	</bean>
	
	<bean id="transactionManager"
		class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
		<property name="dataSource" ref="dataSource" />
	</bean>


	<bean id="sqlSessionFactoryBuild" class="org.mybatis.spring.SqlSessionFactoryBean">
		<!--dataSource属性指定要用到的连接池 -->
		<property name="dataSource" ref="dataSource" />
		<!-- <property name="typeAliasesPackage" value="zttc.itat.user.po"/> -->
		<property name="configLocation" value="classpath:/mybatis-config.xml" />
	</bean>

	<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
		<property name="basePackage" value="zttc.itat.user.dao" />
	</bean>
	
	<bean id="sessionFactoryJBPM"
		class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
		<property name="dataSource" ref="dataSource" />

		<property name="configLocation">
			<value>classpath:jbpm.hibernate.cfg.xml </value>
		</property>
		<property name="configurationClass" value="org.hibernate.cfg.AnnotationConfiguration" />
		<property name="hibernateProperties">
			<props>
				<prop key="hibernate.dialect">
					org.hibernate.dialect.OracleDialect
				</prop>

				<prop key="hibernate.query.factory_class">
					org.hibernate.hql.ast.ASTQueryTranslatorFactory
				</prop>

				<prop key="hibernate.show_sql">true </prop>
			</props>
		</property>
	</bean>

	<bean id="transactionManagerJBPM"
		class="org.springframework.orm.hibernate3.HibernateTransactionManager">
		<property name="sessionFactory" ref="sessionFactoryJBPM" />
	</bean>

	<bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
		<property name="dataSource" ref="dataSource" />
	</bean>

	<bean class="org.springframework.transaction.support.TransactionTemplate">
		<constructor-arg ref="transactionManagerJBPM"></constructor-arg>
	</bean>
	<!-- <tx:annotation-driven/> -->
	<!-- jbpm工作流 -->
	<bean id="springHelper" class="org.jbpm.pvm.internal.processengine.SpringHelper">
		<property name="jbpmCfg" value="jbpm.cfg.xml"></property>
	</bean>
	<bean id="processEngine" factory-bean="springHelper"
		factory-method="createProcessEngine">
	</bean>

	<bean id="repositoryService" factory-bean="processEngine"
		factory-method="getRepositoryService" />


	<bean id="executionService" factory-bean="processEngine"
		factory-method="getExecutionService" />


	<bean id="taskService" factory-bean="processEngine"
		factory-method="getTaskService" />


	<bean id="historyService" factory-bean="processEngine"
		factory-method="getHistoryService" />


	<bean id="identityService" factory-bean="processEngine"
		factory-method="getIdentityService" />
</beans> 

 mybatis-config.xml配置文件如下:

 

  1. <?xml version="1.0" encoding="UTF-8" ?>  
  2. <!DOCTYPE configuration  
  3.         PUBLIC "-//mybatis.org//DTD Config 3.0//EN"  
  4.         "http://mybatis.org/dtd/mybatis-3-config.dtd">  
  5.   
  6. <configuration>  
  7.     <settings>  
  8.         <setting name="cacheEnabled" value="true" />  
  9.         <setting name="lazyLoadingEnabled" value="false" />  
  10.         <setting name="aggressiveLazyLoading" value="true" />  
  11.         <setting name="logImpl" value="LOG4J" />  
  12.     </settings>  
  13.   
  14.     <typeAliases>  
  15.         <package name="zttc.itat.user.po" />  
  16.     </typeAliases>  
  17.       
  18.     <plugins>  
  19.         <plugin interceptor="com.github.pagehelper.PageHelper">  
  20.             <!-- 支持通过Mapper接口参数来传递分页参数 -->  
  21.             <property name="supportMethodsArguments" value="true" />  
  22.         </plugin>  
  23.     </plugins>  
  24.   
  25.     <environments default="development">  
  26.         <environment id="development">  
  27.             <transactionManager type="JDBC">  
  28.                 <property name="" value="" />  
  29.             </transactionManager>  
  30.             <dataSource type="UNPOOLED">  
  31.                 <property name="driver" value="oracle.jdbc.driver.OracleDriver" />  
  32.                 <property name="url" value="jdbc:oracle:thin:@//localhost:1521/orcl" />  
  33.                 <property name="username" value="root" />  
  34.                 <property name="password" value="root" />  
  35.             </dataSource>  
  36.         </environment>  
  37.     </environments>  
  38.   
  39.     <databaseIdProvider type="DB_VENDOR">  
  40.         <property name="Oracle" value="oracle" />  
  41.     </databaseIdProvider>  
  42.   
  43.     <mappers>  
  44.         <mapper resource="zttc/itat/user/mapper/TUserMapper.xml" />  
  45.         <mapper resource="zttc/itat/user/mapper/Jbpm4DeploymentMapper.xml" />  
  46.         <mapper resource="zttc/itat/user/mapper/TLeaveApplyMapper.xml" />  
  47.     </mappers>  
  48. </configuration>  
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值