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路径外;方便后期合成时删除
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
- mybatis的增删查改
- mybatis的增删查改
- Mybatis的增删改查
- mybatis的 增删改查
- mybatis的增删改查
- Mybatis 增删改查
- mybatis增删改查
- mybatis增删改查
- mybatis 增删改查
- MyBatis增删改查
- mybatis--增删改查
- MyBatis增删改查
- MyBatis增删改查
- mybatis增删改查
- Mybatis增删改查
- mybatis增删改查
- mybatis增删改查
- mybatis增删改查
- HDU4012 Paint on a Wall(BFS)
- leetcode118. Pascal's Triangle
- Android官方开发文档Training系列课程中文版:使用Fragment构建动态UI之与其它Fragment通信
- 最新Android Studio开发NDK步骤(自动版)
- c++实验2—标准体重
- mybatis的增删查改
- 指纹拼接
- Xcode安装XAlign
- Eclipse配置默认新建文件类型
- 九月十月百度,迅雷,华为,阿里巴巴笔试面试六十题(第411~470题)
- 【分享】PotPlayer播放器【整合硬盘版】[带LAV0.68+madVR0.90.13+234皮肤+OpenCodec解码+DSP插件++mad设置注册表+电视直播+免设置&卸载补丁]
- python3使用pickle读取文件提示TypeError或者UnicodeDecodeError的解决办法
- 8.3 fileinput--多文件输入操作
- PAT甲级1007. Maximum Subsequence Sum (25) (vector)