mybatis简单基础配置

本文介绍了MyBatis的基本配置方法,包括通过applicationContext-mybatis.xml文件设置SqlSessionFactoryBean及MapperScannerConfigurer,同时展示了mapper.xml文件的具体用法,如定义映射器、插入更新操作等。
mybatis配置方式有很多,这里做个简单记录applicationContext-mybatis.xml文件如下
	<bean id="sqlSessionFactory-source" class="org.mybatis.spring.SqlSessionFactoryBean">
		<property name="dataSource" ref="dynamicDataSource" />
		<property name="mapperLocations" value="classpath:conf/mybatis/xxxx/*-mapper.xml" />
	</bean>

	<!-- scan for mappers and let them be autowired -->
	<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
		<property name="basePackage" value="com.xxx.dao" />
		<property name="sqlSessionFactoryBeanName" value="sqlSessionFactory-source" />
	</bean>

 

根据配置可以看出SqlSessionFactoryBean配置数据源和mapper的xml文件所在位置,MapperScannerConfigurer用来配置扫描基础目录以及引入SqlSessionFactoryBeanName


下面是mapper.xml的例子

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">

<mapper namespace="com.xx.dao.AssetsFlowMapper">

    <resultMap id="assetsFlowMap" type="com.xx.api.bean.zz">
        <result property="debtId" column="debt_id"/>
        <result property="userId" column="user_id"/>
    </resultMap>

    <!-- 插入数据 -->
    <insert id="addAssetsFlow" parameterType="com.bean.AssetsFlow">
        <selectKey resultType="int" order="AFTER"
                   keyProperty="flowId">
            SELECT LAST_INSERT_ID() AS id
        </selectKey>
        INSERT INTO t_uls_assets_flow
        (debt_id,user_id)
        VALUES
        (#{debtId},#{userId})
    </insert>

    <!-- 更新数据 -->
    <update id="updateAssetsFlow" parameterType="com.bean.AssetsFlow">
        UPDATE t_uls_assets_flow
        <set>
            <if test="debtId != null">
                debt_id=#{debtId},
            </if>
            <if test="userId != null">
                user_id=#{userId},
            </if>
        </set>
        WHERE flow_id = #{flowId}
    </update>

    <!-- 搜索条件 -->
    <sql id="selectWhere">
        <where>
            <if test="debtId != null">
                AND debt_id=#{debtId}
            </if>
            <if test="userId != null">
                AND user_id=#{userId}
            </if>
        </where>
    </sql>

    <!-- 数据总量 -->
    <select id="getxxxCount" resultType="int" parameterType="Map">
        SELECT count(1)
        FROM
        xxxx
        <include refid="selectWhere"></include>
    </select>


</mapper>
接下来就是AssetsFlowMapper接口写上相应的方法,使用@Repository注入即可使用

当然基本的注解扫描,组件扫描必不可少


<context:component-scan base-package="com.xxx.*"/>

内容概要:本文系统介绍了算术优化算法(AOA)的基本原理、核心思想及Python实现方法,并通过图像分割的实际案例展示了其应用价值。AOA是一种基于种群的元启发式算法,其核心思想来源于四则运算,利用乘除运算进行全局勘探,加减运算进行局部开发,通过数学优化器加速函数(MOA)和数学优化概率(MOP)动态控制搜索过程,在全局探索与局部开发之间实现平衡。文章详细解析了算法的初始化、勘探与开发阶段的更新策略,并提供了完整的Python代码实现,结合Rastrigin函数进行测试验证。进一步地,以Flask框架搭建前后端分离系统,将AOA应用于图像分割任务,展示了其在实际工程中的可行性与高效性。最后,通过收敛速度、寻优精度等指标评估算法性能,并提出自适应参数调整、模型优化和并行计算等改进策略。; 适合人群:具备一定Python编程基础和优化算法基础知识的高校学生、科研人员及工程技术人员,尤其适合从事人工智能、图像处理、智能优化等领域的从业者;; 使用场景及目标:①理解元启发式算法的设计思想与实现机制;②掌握AOA在函数优化、图像分割等实际问题中的建模与求解方法;③学习如何将优化算法集成到Web系统中实现工程化应用;④为算法性能评估与改进提供实践参考; 阅读建议:建议读者结合代码逐行调试,深入理解算法流程中MOA与MOP的作用机制,尝试在不同测试函数上运行算法以观察性能差异,并可进一步扩展图像分割模块,引入更复杂的预处理或后处理技术以提升分割效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值