mybatis入门
配置:
Mybatis配置分两部分,java与sql
Sql:
<!-- mybatis文件配置,扫描所有mapper.xml文件 -->
<bean id="sqlSessionFactory"
class="org.mybatis.spring.SqlSessionFactoryBean"
p:dataSource-ref="dataSource"
p:configLocation="classpath:/mybatis/mybatis-config.xml" <!-- mybatis自身的配置,spring mvc中不需要设定 -->
p:mapperLocations="classpath:/mapper/*.xml"/> <!-- mybatis的xml文件位置 -->
Java:
<!-- spring与mybatis整合配置,扫描所有mapper.java -->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"
p:basePackage="com.xxx.mapper" <!-- mybatis的java接口文件位置 -->
p:sqlSessionFactoryBeanName="sqlSessionFactory"/>
使用:
mapper标签:指定相应的Java接口 Mapper.java
insert标签:
<insert id="insert" parameterType="com.dig4j.lsh.model.callIn.LshCustProfileInfo" useGeneratedKeys="true" keyProperty="ccId" >
</insert>
<!-- useGeneratedKeys="true"把新增加的主键赋值到自己定义的keyProperty(id)中 -->
delete标签:
<delete id="deleteByXXX" parameterType="Long" >
</delete>
select标签:
<select id="selectXXXList" parameterType="XXXBean" resultType="XXXBean" >
</select>
update标签:
<update id="updateXXXByXXX" parameterType="XXXBean" >
</update>
if标签:
<if test="list != null">
AND xxx IN ('XXX')
</if>
foreach标签:
<foreach collection="list" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
例子:
<mappernamespace="XXXMapper"><!--插入--><insertid="insert"parameterType="com.dig4j.lsh.model.callIn.LshCustProfileInfo"useGeneratedKeys="true"keyProperty="ccId">INSERTINTOXXX(remark,create_date,update_date)VALUES(#{remark},DATE_ADD(now(),INTERVAL8HOUR),DATE_ADD(now(),INTERVAL8HOUR))</insert><insertid="insertBatch"parameterType="list">INSERTINTOXXX(remark,create_date,update_date)VALUES<foreachcollection="list"item="item"index="index"separator=",">(#{item.remark,jdbcType=VARCHAR},DATE_ADD(now(),INTERVAL8HOUR),DATE_ADD(now(),INTERVAL8HOUR))</foreach></insert><deleteid="deleteByXXX"parameterType="Long">DELETEFROMXXXWHEREXXX=#{XXX}</delete><updateid="updateXXXByXXX"parameterType="XXXBean">UPDATEXXXSETdate=DATE_ADD(now(),INTERVAL8HOUR)WHEREXXX=#{XXX}</update><selectid="selectCount"parameterType="XXXBean"resultType="int">SELECTCOUNT(0)FROMWHEREXXX=#{XXX}</select><selectid="selectXXXList"parameterType="XXXBean"resultType="XXXBean">SELECTFROMWHERE1=1<iftest="XXX!=nullandXXX!=''">ANDXXX=#{XXX}</if></select><selectid="selectXXXList"parameterType="java.util.List"resultType="XXXBean">SELECTXXXFROMXXXWHERE1=1<iftest="list!=null">ANDxxxIN<foreachcollection="list"item="item"index="index"open="("separator=","close=")">#{item}</foreach></if></select></mapper>
错误:
MyBatis 3.3.1 批量插入多行回写自增id
mybatis Parameter 'marge_id' not found. Available parameters are [list]
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。