Mybatis相关操作

本文记录一些mybatis经常用到的操作。

目录

1、返回插入的id

2、选择结构 (choose,when,otherwise)

3、循环<foreach></foreach>

 

4、批量操作<trim></trim>

4、处理特殊字符格式包含<![CDATA[...]]>


1、返回插入的id

加上两个标签    keyProperty="id" useGeneratedKeys="true"

2、选择结构 (choose,when,otherwise)

<select id="dynamicChooseTest" parameterType="Blog" resultType="Blog">
    select * from t_blog where 1 = 1
        <choose>
            <when test="title != null">
                and title = #{title}
            </when>
            <when test="content != null">
                and content = #{content}
            </when>
            <otherwise>
                and owner = "owner1"
            </otherwise>
        </choose>
</select>

3、循环

<insert id="insertList">
    INSERT INTO xgx_course_mapping (course_id, coure_mapping_id,sort) VALUES
    <foreach collection="courseMappingIdList" index="index" item="item" separator=",">
      (#{courseId},#{item.courseId},#{item.sort})
    </foreach>
  </insert>

4、批量操作<trim></trim>

批量操作:判断每一个参数,并指定前缀后缀,去重前面和后面多余的字段

<trim prefix="" suffix="" suffixOverrides="" prefixOverrides="">

</trim>
#prefix:在trim标签内sql语句加上前缀。
#suffix:在trim标签内sql语句加上后缀。
#suffixOverrides:指定去除多余的后缀内容,如:suffixOverrides=",",去除trim标签内sql语句多余的后缀","。
#prefixOverrides:指定去除多余的前缀内容
如:

        INSERT INTO 表名
        <trim prefix="(" suffix=")" suffixOverrides=",">
            type,
            <if test="title != null and title != ''">
                title,
            </if>
            <if test="targetId != null and targetId != ''">
                target_id,
            </if>
        </trim>
        <trim prefix=" VALUES (" suffix=")" suffixOverrides=",">
            #{type},
            <if test="title != null and title != ''">
                #{title},
            </if>
            <if test="targetId != null and targetId != ''">
                #{targetId},
            </if>
        </trim>

巨坑:MySQL连接数据库时,添加语句:“&allowMultiQueries=true”

作用:
1.可以在sql语句后携带分号,实现多语句执行。
2.可以执行批处理,同时发出多个SQL语句。

 

4、处理特殊字符
格式包含

<![CDATA[
    内容
]]>

如:字符串模糊查询

        <if test="nickname != null  and nickname !=''">
            AND (nickname LIKE CONCAT('%', #{nickname}, '%') OR cellphone = #{cellphone})
        </if>

 

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看rEADME.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看rEADME.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
要使用MyBatis操作SQLite数据库,首先需要进行一些配置和准备工作。您可以按照以下步骤进行操作: 1. 配置依赖:在项目的pom.xml文件中添加MyBatis的依赖项,如下所示: ``` <!-- MyBatis --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.4</version> </dependency> ``` 2. 创建MyBatisUtil类:在项目中创建一个名为MyBatisUtil的工具类,用于获取SqlSession实例。您可以使用以下代码作为参考: ``` import org.apache.ibatis.io.Resources; import org.apache.ibatis.session.SqlSession; import org.apache.ibatis.session.SqlSessionFactory; import org.apache.ibatis.session.SqlSessionFactoryBuilder; import java.io.IOException; import java.io.InputStream; public class MyBatisUtil { private static SqlSessionFactory factory = null; static { try { String resource = "mybatis-config.xml"; InputStream inputStream = Resources.getResourceAsStream(resource); factory = new SqlSessionFactoryBuilder().build(inputStream); } catch (Exception e) { e.printStackTrace(); } } public static SqlSession getSqlSession() throws IOException { return factory.openSession(); } } ``` 3. 配置SqlMapConfig.xml:在项目的资源文件夹中创建一个名为SqlMapConfig.xml的配置文件,并进行相关配置。您可以使用以下示例代码作为参考: ``` <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration> <settings> <setting name="mapUnderscoreToCamelCase" value="true"/> </settings> <typeAliases> <package name="cn.suncsf.sc.sf.wfilesearch.dt" /> </typeAliases> </configuration> ``` 完成以上步骤后,您就可以在MyBatis中使用SQLite数据库了。您可以创建Mapper接口和对应的Mapper.xml文件来定义数据库操作语句,并使用SqlSession来执行这些操作。在执行操作之前,您可以通过调用MyBatisUtil.getSqlSession()方法获取SqlSession实例。 请注意,上述代码中的路径和配置信息是示例代码,您需要根据您的实际项目路径和配置进行相应的修改。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [mybatis整合sqlite详解](https://blog.csdn.net/aaaa4444ss22/article/details/100080709)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* [MyBatis之SQLite](https://blog.csdn.net/weixin_42606057/article/details/128962585)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值