mybatis+springmvc+jbpm4整合配置

2023-12-22 21:58

本文主要是介绍mybatis+springmvc+jbpm4整合配置,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!


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

 

关键配置文件如下:

applicationContext.xml配置:

[java] view plain copy print ?
  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配置文件如下:

 

[java] view plain copy print ?
  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>  

这篇关于mybatis+springmvc+jbpm4整合配置的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/525611

相关文章

SpringBoot中四种AOP实战应用场景及代码实现

《SpringBoot中四种AOP实战应用场景及代码实现》面向切面编程(AOP)是Spring框架的核心功能之一,它通过预编译和运行期动态代理实现程序功能的统一维护,在SpringBoot应用中,AO... 目录引言场景一:日志记录与性能监控业务需求实现方案使用示例扩展:MDC实现请求跟踪场景二:权限控制与

Android开发环境配置避坑指南

《Android开发环境配置避坑指南》本文主要介绍了Android开发环境配置过程中遇到的问题及解决方案,包括VPN注意事项、工具版本统一、Gerrit邮箱配置、Git拉取和提交代码、MergevsR... 目录网络环境:VPN 注意事项工具版本统一:android Studio & JDKGerrit的邮

慢sql提前分析预警和动态sql替换-Mybatis-SQL

《慢sql提前分析预警和动态sql替换-Mybatis-SQL》为防止慢SQL问题而开发的MyBatis组件,该组件能够在开发、测试阶段自动分析SQL语句,并在出现慢SQL问题时通过Ducc配置实现动... 目录背景解决思路开源方案调研设计方案详细设计使用方法1、引入依赖jar包2、配置组件XML3、核心配

Java NoClassDefFoundError运行时错误分析解决

《JavaNoClassDefFoundError运行时错误分析解决》在Java开发中,NoClassDefFoundError是一种常见的运行时错误,它通常表明Java虚拟机在尝试加载一个类时未能... 目录前言一、问题分析二、报错原因三、解决思路检查类路径配置检查依赖库检查类文件调试类加载器问题四、常见

Java注解之超越Javadoc的元数据利器详解

《Java注解之超越Javadoc的元数据利器详解》本文将深入探讨Java注解的定义、类型、内置注解、自定义注解、保留策略、实际应用场景及最佳实践,无论是初学者还是资深开发者,都能通过本文了解如何利用... 目录什么是注解?注解的类型内置注编程解自定义注解注解的保留策略实际用例最佳实践总结在 Java 编程

Java 实用工具类Spring 的 AnnotationUtils详解

《Java实用工具类Spring的AnnotationUtils详解》Spring框架提供了一个强大的注解工具类org.springframework.core.annotation.Annot... 目录前言一、AnnotationUtils 的常用方法二、常见应用场景三、与 JDK 原生注解 API 的

Java controller接口出入参时间序列化转换操作方法(两种)

《Javacontroller接口出入参时间序列化转换操作方法(两种)》:本文主要介绍Javacontroller接口出入参时间序列化转换操作方法,本文给大家列举两种简单方法,感兴趣的朋友一起看... 目录方式一、使用注解方式二、统一配置场景:在controller编写的接口,在前后端交互过程中一般都会涉及

Java中的StringBuilder之如何高效构建字符串

《Java中的StringBuilder之如何高效构建字符串》本文将深入浅出地介绍StringBuilder的使用方法、性能优势以及相关字符串处理技术,结合代码示例帮助读者更好地理解和应用,希望对大家... 目录关键点什么是 StringBuilder?为什么需要 StringBuilder?如何使用 St

使用Java将各种数据写入Excel表格的操作示例

《使用Java将各种数据写入Excel表格的操作示例》在数据处理与管理领域,Excel凭借其强大的功能和广泛的应用,成为了数据存储与展示的重要工具,在Java开发过程中,常常需要将不同类型的数据,本文... 目录前言安装免费Java库1. 写入文本、或数值到 Excel单元格2. 写入数组到 Excel表格

Java并发编程之如何优雅关闭钩子Shutdown Hook

《Java并发编程之如何优雅关闭钩子ShutdownHook》这篇文章主要为大家详细介绍了Java如何实现优雅关闭钩子ShutdownHook,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起... 目录关闭钩子简介关闭钩子应用场景数据库连接实战演示使用关闭钩子的注意事项开源框架中的关闭钩子机制1.