mybatis的增删查改

来源:互联网 发布:ubuntu 开启ssh服务 编辑:程序博客网 时间:2024/05/01 17:04

mybatis的增删查改:
1、  一个java类接口 对应一个xml映射文件;相当于此xml映射文件是该接口的实现所书写的sql代码;
2、 xml文件的声明;  并且声明为mapper映射文件
  <?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">
3、   对应接口类 去掉.java后缀<mapper namespace="com.lovo.my.dao.IUserMapper">
书写映射的sql 
<!-- 编写一个新增方法    parameterType参数类型-->
<insert id="saveUserBean" parameterType="UserBean" useGeneratedKeys="true" keyProperty="u.id">
insert into t_user (user_name,password,sex,salary) values (#{u.userName},#{u.password},#{u.sex},#{u.salary})
</insert>
<insert id="batchAddUserBean" parameterType="java.util.List">
insert into t_user (user_name,password,sex,salary) values
<foreach collection="list" item="user" separator=",">
(#{user.userName},#{user.password},#{user.sex},#{user.salary})
</foreach>
</insert>
<!-- 编写一个修改方法 在方法中除了id是必填外 其他属性皆为可选 -->
<update id="updateUserBean">
update t_user set user_name = #{u.userName},password = #{u.password},sex = #{u.sex},salary = #{u.salary} where id = #{id}
</update>
<delete id="deleteUserBean">
delete from t_user where id = #{id}
</delete>
<delete id="batchDeleteUserBean">
delete from t_user where id in 
<foreach collection="list" item="id" separator="," open="(" close=")">
#{id}
</foreach>
</delete>
<!--适合在字段名和属性名可能不相符就写resultMap 
-适合在字段名和属性名可能相符就写resultType-->
<select id="getUserBeanByNameAndPassword" resultMap="userMap">
select * from t_user where user_name = #{userName} and password = #{password}
<lect>
<select id="findAll" resultMap="userMap">
select * from t_user
<lect>
<select id="selectCountUserBeanCondition" resultType="int">
select count(*) from t_user where 1 = 1 
<include refid="item"></include>
<lect>
<select id="selectUserBeanCondition" resultMap="userMap">
select count(*) from t_user where 1 = 1 
<include refid="item"></include>
limit ${index}.${rows}
<lect>
<sql id="item">
<if test="userName != null and userName!=''">
and user_name like '%"${userName}"%'
</if>
<if test="sex != null and sex!=''">
and sex = #{sex}
</if>
<l>
</mapper>
测试文件写在src路径外;方便后期合成时删除 

0 0
原创粉丝点击