MyBatis中XML 映射配置文件的简单介绍
官网写的比较具体,可以查看以下的网站:
http://www.mybatis.org/mybatis-3/zh/configuration.html
另外,实际用到标准的CRUD的操作和查询列表,
<?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">
<mapper namespace="com.iteye.tom.dao.AuthItemRecordDao">
<sql id="requestAllFields">
<![CDATA[
id,
record_time AS recordTime,
source_code AS sourceCode,
userid,
auth_item_id AS authItemId,
isvalid,
last_status_time AS lastStatusTime
]]>
</sql>
<sql id="whereClause">
<where>
<if test="null!=id">AND id = #{id}</if>
<if test="null!=sourceCode and ''!=sourceCode">AND source_code = #{sourceCode}</if>
<if test="null!=userid and ''!=userid">AND userid = #{userid}</if>
<if test="null!=authItemId and ''!=authItemId">AND auth_item_id = #{authItemId}</if>
<if test="null!=isvalid and ''!=isvalid">AND isvalid = #{isvalid}</if>
<include refid="extendedWhereClause" />
</where>
</sql>
<insert id="add" useGeneratedKeys="true" parameterType="com.iteye.tom.bean.AuthItemRecord" keyProperty="id">
INSERT INTO tab_auth_item_record
<trim prefix="(" suffix=")" prefixOverrides=",">
<if test="null!=recordTime">,record_time</if>
<if test="null!=sourceCode and ''!=sourceCode">,source_code</if>
<if test="null!=userid and ''!=userid">,userid</if>
<if test="null!=authItemId and ''!=authItemId">,auth_item_id</if>
<if test="null!=isvalid and ''!=isvalid">,isvalid</if>
<if test="null!=lastStatusTime">,last_status_time</if>
</trim>
VALUES
<trim prefix="(" suffix=")" prefixOverrides=",">
<if test="null!=recordTime">,#{recordTime}</if>
<if test="null!=sourceCode and ''!=sourceCode">,#{sourceCode}</if>
<if test="null!=userid and ''!=userid">,#{userid}</if>
<if test="null!=authItemId and ''!=authItemId">,#{authItemId}</if>
<if test="null!=isvalid and ''!=isvalid">,#{isvalid}</if>
<if test="null!=lastStatusTime">,#{lastStatusTime}</if>
</trim>
</insert>
<update id="update" parameterType="com.iteye.tom.bean.AuthItemRecord">
UPDATE tab_auth_item_record
<trim prefix="SET" prefixOverrides=",">
<if test="null!=recordTime">,record_time = #{recordTime}</if>
<if test="null!=sourceCode and ''!=sourceCode">,source_code = #{sourceCode}</if>
<if test="null!=userid and ''!=userid">,userid = #{userid}</if>
<if test="null!=authItemId and ''!=authItemId">,auth_item_id = #{authItemId}</if>
<if test="null!=isvalid and ''!=isvalid">,isvalid = #{isvalid}</if>
<if test="null!=lastStatusTime">,last_status_time = #{lastStatusTime}</if>
<include refid="extendedUpdateSql" />
</trim>
WHERE id = #{id}
</update>
<select id="query" parameterType="com.iteye.tom.bean.AuthItemRecord" resultType="com.iteye.tom.bean.AuthItemRecord">
SELECT <include refid="requestAllFields"/> FROM tab_auth_item_record
<include refid="whereClause" />
<include refid="extendedOrderByClause" />
<if test="null!=requestOffset">
LIMIT #{requestOffset}, #{requestCount}
</if>
</select>
<select id="get" parameterType="com.iteye.tom.bean.AuthItemRecord" resultType="com.iteye.tom.bean.AuthItemRecord">
SELECT <include refid="requestAllFields"/> FROM tab_auth_item_record
<include refid="whereClause" />
LIMIT 1
</select>
<select id="getById" parameterType="long" resultType="com.iteye.tom.bean.AuthItemRecord">
SELECT <include refid="requestAllFields"/> FROM tab_auth_item_record WHERE id = #{id}
</select>
<select id="count" parameterType="com.iteye.tom.bean.AuthItemRecord" resultType="int">
SELECT COUNT(1) FROM tab_auth_item_record <include refid="whereClause" />
</select>
<delete id="deleteByUserid" parameterType="com.iteye.tom.bean.AuthItemRecord" >
DELETE FROM tab_auth_item_record WHERE userid = #{userid} </delete>
<!-- 扩展的更新等语句(自定义)-->
<sql id="extendedUpdateSql">
<if test="null!=extendedParameter">
</if>
</sql>
<!-- 扩展的条件过滤语句(自定义)-->
<sql id="extendedWhereClause">
<if test="null!=extendedParameter">
</if>
</sql>
<!-- 扩展的排序等语句(自定义)-->
<sql id="extendedOrderByClause">
<if test="null!=extendedParameter">
</if>
</sql>
</mapper>
MyBatis中XML 映射配置文件的简单介绍的更多相关文章
- Mybatis学习--XML映射配置文件
学习笔记,选自Mybatis官方中文文档:http://www.mybatis.org/mybatis-3/zh/configuration.html MyBatis 的配置文件包含了影响 MyBat ...
- mybatis学习(一)-------XML 映射配置文件详解
XML 映射配置文件 MyBatis 的配置文件包含了会深深影响 MyBatis 行为的设置(settings)和属性(properties)信息.文档的顶层结构如下: configuration 配 ...
- MyBatis官方文档——XML 映射配置文件
XML 映射配置文件 MyBatis 的配置文件包含了影响 MyBatis 行为甚深的设置(settings)和属性(properties)信息.文档的顶层结构如下: configuration 配置 ...
- Java数据持久层框架 MyBatis之API学习三(XML 映射配置文件)
对于MyBatis的学习而言,最好去MyBatis的官方文档:http://www.mybatis.org/mybatis-3/zh/index.html 对于语言的学习而言,马上上手去编程,多多练习 ...
- 【mybatis xml】数据层框架应用--Mybatis 基于XML映射文件实现数据的CRUD
使用MyBatis框架进行持久层开发 MyBatis是支持普通SQL查询,存储过程和高级映射的优秀持久层框架. MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索. MyBa ...
- XML映射配置文件
XML映射配置文件 http://www.mybatis.org/mybatis-3/configuration.html Type Handlers 类型处理器 每当MyBatis在Prepared ...
- Mybatis中输出映射resultType与resultMap的区别
Mybatis中输出映射resultType与resultMap的区别 (原文地址:http://blog.csdn.net/acmman/article/details/46509375) 一.re ...
- Mybatis特殊字符处理,Mybatis中xml文件特殊字符的处理
Mybatis特殊字符处理,Mybatis中xml文件特殊字符的处理 >>>>>>>>>>>>>>>>& ...
- Mybatis XML 映射配置文件 -- 熟悉配置
来源:http://www.mybatis.org/mybatis-3/zh/configuration.html properties mybatis读取属性顺序. 如果属性在不只一个地方进行了配置 ...
随机推荐
- oracel分页查询
SELECT * FROM ( SELECT temp.*, ROWNUM RN FROM (SELECT * FROM 表名) temp WHERE ROWNUM <=end (page*pa ...
- Hibernate与 MyBatis的区别
第一章 Hibernate与MyBatis Hibernate 是当前最流行的O/R mapping框架,它出身于sf.net,现在已经成为Jboss的一部分. Mybatis 是另外一种优秀 ...
- spring cloud学习笔记二 ribbon负载均衡
Ribbon是Netflix发布的负载均衡器,它有助于控制HTTP和TCP的客户端的行为.为Ribbon配置服务提供者地址后,Ribbon就可基于某种负载均衡算法,自动地帮助服务消费者去请求.Ribb ...
- INSTR代替NOT LIKE
instr(title,'手册')>0 相当于 title like '%手册%' instr(title,'手册')=1 相当于 title like '手册%' instr(titl ...
- head、tail 命令和实时(real-time)更新
head.tail 命令和实时(real-time)更新 head filename: 输出 filename 文件的前10项 tail filename: 输出 filename 文件的后10项 即 ...
- leetcode-15双周赛-1288-删除被覆盖区间
题目描述: 方法一:排序O(Nlogn) class Solution: def removeCoveredIntervals(self, intervals: List[List[int]]) -& ...
- notepad++ 安装 hex_editor 十六进制查看插件
1.到 https://github.com/chcg/NPP_HexEdit/releases 去下载相应的文件,注意32位和64位的区别 2.点击notepad++的设置--->导入--&g ...
- 企业资源计划(ERP)
ERP(企业资源计划)一般指企业资源计划(ERP) 物资资源管理(物流).人力资源管理(人流).财务资源管理(财流).信息资源管理(信息流) 信息技术在企业管理学上的应用可分做如下发展阶段:A. MI ...
- Outlets
Outlets Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Sub ...
- EditText设置/隐藏光标位置、选中文本和获取/清除焦点(转)
转:http://blog.csdn.net/dajian790626/article/details/8464722 有时候需要让光标显示在EditText的指定位置或者选中某些文本.同样,为了方便 ...