iBATIS与Spring整合

iBATIS与Spring整合实战
本文详细介绍了iBATIS与Spring框架的整合过程。通过具体的配置示例,展示了如何设置数据源、SqlMapClient及SqlMapClientTemplate,实现iBATIS在Spring环境中的无缝集成。

接着iBATIS的入门实例来说,ibatis与Spring的整合其实跟hibernate与Spring的整合大同小异,都是一个模子的,回想hibernate整合spring:主要是在spring中配置,需要数据源,需要hibernate配置文件,需要sessionFactory。iBATIS走的路线完全一致,直接看配置就明白

先是src/sqlmap.xml

 

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMapConfig PUBLIC "-//iBATIS.com//DTD SQL Map Config 2.0//EN"
    "http://www.ibatis.com/dtd/sql-map-config-2.dtd">
<sqlMapConfig>
  <settings cacheModelsEnabled="true" enhancementEnabled="true" lazyLoadingEnabled="true" maxRequests="32"
    maxSessions="10" maxTransactions="5" useStatementNamespaces="true" />

	<sqlMap resource="com/javacrazyer/myweb/ibatis/SysDeliverCompany.xml" />
	<sqlMap resource="com/javacrazyer/myweb/ibatis/SysArea.xml" />
	<sqlMap resource="com/javacrazyer/myweb/ibatis/SmsActivityExpense.xml" />
	<sqlMap resource="com/javacrazyer/myweb/ibatis/deptMgr.xml" />
	<sqlMap resource="com/javacrazyer/myweb/ibatis/userMgr.xml" />
	<sqlMap resource="com/javacrazyer/myweb/ibatis/SysCost.xml" />
	<sqlMap resource="com/javacrazyer/myweb/ibatis/orders.xml" />
	<sqlMap resource="com/javacrazyer/myweb/ibatis/privilege.xml" />
	<sqlMap resource="com/javacrazyer/myweb/ibatis/app.xml" />
  
</sqlMapConfig>

 

 很显然这个配置里没有配数据源,配置到spring即可

 applictionContext.xml

 

<?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:p="http://www.springframework.org/schema/p"
	xmlns:context="http://www.springframework.org/schema/context"
	xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"
	xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-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/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
	http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd">

     <!--数据源,用的是spring容器自带的数据源,-->
	<bean id="dataSource"
		class="org.springframework.jdbc.datasource.DriverManagerDataSource">
		<property name="driverClassName">
			<value>com.microsoft.sqlserver.jdbc.SQLServerDriver</value>
		</property>
		<property name="url">
			<value>jdbc:sqlserver://localhost:1433;databaseName=dbName
			</value>
		</property>
		<property name="username">
			<value>sa</value>
		</property>
		<property name="password">
			<value>123</value>
		</property>
		
		<property name="connectionProperties">
			<props>
				<!--  
				<prop key="useUnicode">true</prop>
				<prop key="characterEncoding">utf-8</prop>
				连接池中连接用完时,新的请求等待时间,毫秒,-1表示无限等待
				<prop key="maxWait">1000</prop>
				-->
				<!-- 是否清理空闲连接 -->
				<prop key="removeAbandoned">true</prop>
				<!-- 活动连接的最大空闲时间,秒 -->
				<prop key="removeAbandonedTimeout">60</prop>
				<!-- 初始连接数量 -->
				<prop key="initialSize">3</prop>
				<!-- 连接池支持的最大连接数,0表示无限制 -->
				<prop key="maxActive">50</prop>
				<!-- 连接池中最多可空闲maxIdle个连接,0表示无限制   -->
				<prop key="maxIdle">10</prop>
				<!-- 连接池中最小空闲maxIdle个连接   -->
				<prop key="minIdle">2</prop>
			</props>
		</property>
	</bean>
	<bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
		<property name="configLocation" value="classpath:sqlmap.xml" />
		<!-- 从IBATIS基本示例可以看到,sqlmap.xml中是应该配置dataSource的,不过没配置也没关系,可以在spring中继续配 -->
		<property name="dataSource" ref="dataSource" />
		<!--
			<property name="useTransactionAwareDataSource"
			value="true"></property>
		-->
	</bean>
	<!--根据sqlMapClien创建一个SqlMapClient模版类-->
	<!-- 那么这个sqlMapClientTemplate就相当于sessionFactory获取的session -->
	<bean id="sqlMapClientTemplate" class="org.springframework.orm.ibatis.SqlMapClientTemplate">
		<property name="sqlMapClient">
			<ref bean="sqlMapClient" />
		</property>
	</bean>
	
</beans>

 然后在需要的类写上个private SqlMapClientTemplate  sqlMapClientTemplate 当做字段并提供SETTER方法,之后在applicationContext.xml中注入sqlMapClientTemplate即可直接使用了,具体的方法与入门实例sqlMapper的方

法一样

 

内容概要:本文提出了一种基于融合鱼鹰算法和柯西变异的改进麻雀优化算法(OCSSA),用于优化变分模态分解(VMD)的参数,进而结合卷积神经网络(CNN)双向长短期记忆网络(BiLSTM)构建OCSSA-VMD-CNN-BILSTM模型,实现对轴承故障的高【轴承故障诊断】基于融合鱼鹰和柯西变异的麻雀优化算法OCSSA-VMD-CNN-BILSTM轴承诊断研究【西储大学数据】(Matlab代码实现)精度诊断。研究采用西储大学公开的轴承故障数据集进行实验验证,通过优化VMD的模态数和惩罚因子,有效提升了信号分解的准确性稳定性,随后利用CNN提取故障特征,BiLSTM捕捉时间序列的深层依赖关系,最终实现故障类型的智能识别。该方法在提升故障诊断精度鲁棒性方面表现出优越性能。; 适合人群:具备一定信号处理、机器学习基础,从事机械故障诊断、智能运维、工业大数据分析等相关领域的研究生、科研人员及工程技术人员。; 使用场景及目标:①解决传统VMD参数依赖人工经验选取的问题,实现参数自适应优化;②提升复杂工况下滚动轴承早期故障的识别准确率;③为智能制造预测性维护提供可靠的技术支持。; 阅读建议:建议读者结合Matlab代码实现过程,深入理解OCSSA优化机制、VMD信号分解流程以及CNN-BiLSTM网络架构的设计逻辑,重点关注参数优化故障分类的联动关系,并可通过更换数据集进一步验证模型泛化能力。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值