MyBatis常用

MyBitys

1、批量保存

<insert id="Report_insert" parameterType="upc.jxzygl.entity.Security.Risk.RiskReportEntity"    >
    insert into
	    Tab(
	     id,name, type,oilfield,ip
	     )
	    select aqsc_seq.nextval,da.*  from(
	    <foreach collection="el" index="" item="item" separator="union all">
	        select
	        #{item.name,jdbcType=VARCHAR},
	        #{item.type,jdbcType=VARCHAR},
	        #{oilfield,jdbcType=VARCHAR},
	        #{ip,jdbcType=VARCHAR}
	        from dual
	    </foreach>)da
</insert>

2、批量修改

<update id="Report_update"  parameterType="upc.jxzygl.entity.Security.Risk.RiskReportEntity" >
	<foreach collection="el" item="item" index="index" open="begin" close=";end;" separator=";">
		 update PC_AQSC_RISK_REPORT
			  <set>
				  <if test="item.type!=null and item.type.length() &gt; 0">
				          type ='${item.type}',
				  </if>
				   last_time=sysdate
			   </set>
		   where risk_id = #{item.risk_id,jdbcType=INTEGER}
	</foreach>
</update>

3、插入并返回id

<insert id="insert1" parameterType="com.dhop.scjh.model.Cc_GroupEntity">
    <selectKey keyProperty="group_id" order="BEFORE" resultType="int">
            select vehicle_apply_seq.NEXTVAL as group_id from DUAL
   </selectKey>
		insert into
		DHOP_DBA17_PERFORATION_GROUP
		(
		group_id,event_id,type
		)values(
		#{group_id},#{event_id,jdbcType=INTEGER},#{type,jdbcType=INTEGER}
		)
</insert>
Mybatis常用方法包括但不限于以下几种: 1. 查询单个对象:通过selectOne方法可以查询返回单个对象,例如:`User user = sqlSession.selectOne("com.example.mapper.UserMapper.selectUserById", 1);` \[2\] 2. 查询列表:通过selectList方法可以查询返回多个对象组成的列表,例如:`List<User> userList = sqlSession.selectList("com.example.mapper.UserMapper.selectAllUsers");` \[2\] 3. 插入数据:通过insert方法可以向数据库中插入数据,例如:`int rows = sqlSession.insert("com.example.mapper.UserMapper.insertUser", user);` \[2\] 4. 更新数据:通过update方法可以更新数据库中的数据,例如:`int rows = sqlSession.update("com.example.mapper.UserMapper.updateUser", user);` \[2\] 5. 删除数据:通过delete方法可以删除数据库中的数据,例如:`int rows = sqlSession.delete("com.example.mapper.UserMapper.deleteUserById", 1);` \[2\] 6. 批量插入数据:通过insertBatch方法可以批量插入数据,例如:`int rows = sqlSession.insert("com.example.mapper.UserMapper.insertBatchUsers", userList);` \[2\] 7. 动态SQL:Mybatis提供了动态SQL的支持,可以根据条件动态生成SQL语句,例如:`<if test="name != null">AND name = #{name}</if>` \[2\] 8. 分页查询:通过RowBounds或PageHelper插件可以实现分页查询,例如:`List<User> userList = sqlSession.selectList("com.example.mapper.UserMapper.selectAllUsers", null, new RowBounds(0, 10));` \[2\] 以上是Mybatis常用的一些方法,根据具体的业务需求可以选择适合的方法进行操作。 #### 引用[.reference_title] - *1* [# Mybatis 常用操作、使用技巧](https://blog.csdn.net/qq_37248504/article/details/106932085)[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^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [MyBatis常用方法](https://blog.csdn.net/weixin_44624117/article/details/120823825)[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^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [mybatis常见用法总结](https://blog.csdn.net/weixin_41501825/article/details/126326723)[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^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值