动态sql
2016-01-06 18:28
274 查看
<?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">
//对应的userinfodao
<mapper namespace="com.croe.dao.UserInfoDAO">
//62行返回结果resultMap="usermap"
<resultMap type="UserInfo" id="usermap">
<id column="USER_ID" property="USER_ID" />
//数据库字段 实体类字段
<result column="USER_NAME" property="USER_NAME" />
<result column="USER_SEX" property="USER_SEX" />
<result column="USER_PHONE" property="USER_PHONE" />
<result column="USER_PASSWORD" property="USER_PASSWORD" />
<result column="USER_TYPE" property="USER_TYPE" />
</resultMap>
<insert id="add" parameterType="UserInfo" >
insert into user_info
//数据库字段
(USER_NAME,USER_SEX,USER_PHONE,USER_PASSWORD,USER_TYPE)
//实体类字段
values(#{USER_NAME},#{USER_SEX},#{USER_PHONE},#{USER_PASSWORD},#{USER_TYPE})
</insert>
UserInfoDAO对应定义的方法
<delete id="delete" parameterType="UserInfo">
// 数据库 实体类
delete from user_info where USER_ID=#{USER_ID}
</delete>
<delete id="deleteAll" parameterType="UserInfo">
delete from
user_info where
USER_ID =
#{deleteAll}
</delete>
<update id="update" parameterType="UserInfo">
update user_info
<set>
//实体类字段
<if test="USER_NAME!=null">
USER_NAME=#{USER_NAME},
</if>
<if test="USER_SEX!=null">
USER_SEX=#{USER_SEX},
</if>
<if test="USER_PHONE!=null">
USER_PHONE=#{USER_PHONE},
</if>
<if test="USER_PASSWORD!=null">
USER_PASSWORD=#{USER_PASSWORD},
</if>
<if test="USER_TYPE!=null">
USER_TYPE=#{USER_TYPE},
</if>
</set>
where USER_ID=#{USER_ID}
</update>
<select id="getUserList" parameterType="UserInfo" resultMap="usermap">
select * from user_info
<where>
<if test="USER_TYPE!=null and USER_TYPE!=''">
and USER_TYPE =#{USER_TYPE}
</if>
<if test="USER_NAME!=null and USER_NAME!=''">
and USER_NAME like #{USER_NAME}
</if>
</where>
// 分页,第多少条开始,多少条为一页
limit #{start},#{length}
</select>
<select id="getcount" parameterType="UserInfo" resultType="long">
select count(1) as total from user_info
<where>
<if test="USER_NAME!=null and USER_NAME!=''">
USER_NAME like #{USER_NAME}
</if>
</where>
</select>
<select id="getUserInfo" parameterType="UserInfo" resultMap="usermap">
select * from user_info
<where>
<if test="USER_ID !=null and USER_ID!=''">
and USER_ID=#{USER_ID}
</if>
<if test="USER_PHONE !=null">
and USER_PHONE=#{USER_PHONE}
</if>
</where>
</select>
</mapper>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
//对应的userinfodao
<mapper namespace="com.croe.dao.UserInfoDAO">
//62行返回结果resultMap="usermap"
<resultMap type="UserInfo" id="usermap">
<id column="USER_ID" property="USER_ID" />
//数据库字段 实体类字段
<result column="USER_NAME" property="USER_NAME" />
<result column="USER_SEX" property="USER_SEX" />
<result column="USER_PHONE" property="USER_PHONE" />
<result column="USER_PASSWORD" property="USER_PASSWORD" />
<result column="USER_TYPE" property="USER_TYPE" />
</resultMap>
<insert id="add" parameterType="UserInfo" >
insert into user_info
//数据库字段
(USER_NAME,USER_SEX,USER_PHONE,USER_PASSWORD,USER_TYPE)
//实体类字段
values(#{USER_NAME},#{USER_SEX},#{USER_PHONE},#{USER_PASSWORD},#{USER_TYPE})
</insert>
UserInfoDAO对应定义的方法
<delete id="delete" parameterType="UserInfo">
// 数据库 实体类
delete from user_info where USER_ID=#{USER_ID}
</delete>
<delete id="deleteAll" parameterType="UserInfo">
delete from
user_info where
USER_ID =
#{deleteAll}
</delete>
<update id="update" parameterType="UserInfo">
update user_info
<set>
//实体类字段
<if test="USER_NAME!=null">
USER_NAME=#{USER_NAME},
</if>
<if test="USER_SEX!=null">
USER_SEX=#{USER_SEX},
</if>
<if test="USER_PHONE!=null">
USER_PHONE=#{USER_PHONE},
</if>
<if test="USER_PASSWORD!=null">
USER_PASSWORD=#{USER_PASSWORD},
</if>
<if test="USER_TYPE!=null">
USER_TYPE=#{USER_TYPE},
</if>
</set>
where USER_ID=#{USER_ID}
</update>
<select id="getUserList" parameterType="UserInfo" resultMap="usermap">
select * from user_info
<where>
<if test="USER_TYPE!=null and USER_TYPE!=''">
and USER_TYPE =#{USER_TYPE}
</if>
<if test="USER_NAME!=null and USER_NAME!=''">
and USER_NAME like #{USER_NAME}
</if>
</where>
// 分页,第多少条开始,多少条为一页
limit #{start},#{length}
</select>
<select id="getcount" parameterType="UserInfo" resultType="long">
select count(1) as total from user_info
<where>
<if test="USER_NAME!=null and USER_NAME!=''">
USER_NAME like #{USER_NAME}
</if>
</where>
</select>
<select id="getUserInfo" parameterType="UserInfo" resultMap="usermap">
select * from user_info
<where>
<if test="USER_ID !=null and USER_ID!=''">
and USER_ID=#{USER_ID}
</if>
<if test="USER_PHONE !=null">
and USER_PHONE=#{USER_PHONE}
</if>
</where>
</select>
</mapper>
相关文章推荐
- mysql的导入导出工具mysqldump命令详解
- 命令行下mysql新建用户及分配权限
- mysql随记
- c#中用lua脚本执行redis命令
- mysql5.5编译安装过程(自己总结)
- Sqlhelper
- IMP-00013: 错误的解决
- Oracle 中查询数据库中表的字段名称
- 关于SQL中使用正则表达式的一些笔记
- 4000 命令行删除mysql服务
- MySQL学习笔记-MHA安装配置
- Oracle中select查询 分页 分组 统计语句
- oracle中的空表无法导出
- quartz 1.x版本出现OPTION SQL_SELECT_LIMIT=DEFAULT错误解决方案
- SQL语句,查询数据库里是否存在某个表
- mysql数据库root密码忘记的修改方法
- mysqldump
- 数据库中可以执行的sql语句,在程序中执行抛出乱码异常
- SQL Server 执行计划操作符详解(3)——计算标量(Compute Scalar)
- SQL Server 执行计划操作符详解(3)——计算标量(Compute Scalar)