首页 技术 正文
技术 2022年11月21日
0 收藏 356 点赞 4,105 浏览 8273 个字

mapper 如下:

使用<selectkey>实现 也可以使用oracle的row 级触发器trigger实现;

<?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.hxb.wide.demo.mapper.CCustInfoMapper”>
<resultMap id=”BaseResultMap” type=”com.hxb.wide.demo.entity.CCustInfo”>
<result column=”CUST_NO” property=”custNo” jdbcType=”VARCHAR” />
<result column=”CUST_NAME” property=”custName” jdbcType=”VARCHAR” />
<result column=”GENDER” property=”gender” jdbcType=”VARCHAR” />
<result column=”ID_TYPE” property=”idType” jdbcType=”VARCHAR” />
<result column=”ID_NO” property=”idNo” jdbcType=”VARCHAR” />
<result column=”MAIL_ADDR” property=”mailAddr” jdbcType=”VARCHAR” />
<result column=”MOBILE” property=”mobile” jdbcType=”VARCHAR” />
<result column=”LOGIN_PWD” property=”loginPwd” jdbcType=”VARCHAR” />
<result column=”ADDRESS” property=”address” jdbcType=”VARCHAR” />
<result column=”STATUS” property=”status” jdbcType=”VARCHAR” />
<result column=”LAST_UP_DATE” property=”lastUpDate” jdbcType=”VARCHAR” />
<result column=”LAST_LOGIN_DATE” property=”lastLoginDate” jdbcType=”VARCHAR” />
</resultMap>
<sql id=”Example_Where_Clause”>
<where>
<foreach collection=”oredCriteria” item=”criteria” separator=”or”>
<if test=”criteria.valid”>
<trim prefix=”(” suffix=”)” prefixOverrides=”and”>
<foreach collection=”criteria.criteria” item=”criterion”>
<choose>
<when test=”criterion.noValue”>and ${criterion.condition}</when>
<when test=”criterion.singleValue”>and ${criterion.condition} #{criterion.value}</when>
<when test=”criterion.betweenValue”>and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}</when>
<when test=”criterion.listValue”>
and ${criterion.condition}
<foreach collection=”criterion.value” item=”listItem” open=”(” close=”)” separator=”,”>#{listItem}</foreach>
</when>
</choose>
</foreach>
</trim>
</if>
</foreach>
</where>
</sql>
<sql id=”Update_By_Example_Where_Clause”>
<where>
<foreach collection=”example.oredCriteria” item=”criteria” separator=”or”>
<if test=”criteria.valid”>
<trim prefix=”(” suffix=”)” prefixOverrides=”and”>
<foreach collection=”criteria.criteria” item=”criterion”>
<choose>
<when test=”criterion.noValue”>and ${criterion.condition}</when>
<when test=”criterion.singleValue”>and ${criterion.condition} #{criterion.value}</when>
<when test=”criterion.betweenValue”>and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}</when>
<when test=”criterion.listValue”>
and ${criterion.condition}
<foreach collection=”criterion.value” item=”listItem” open=”(” close=”)” separator=”,”>#{listItem}</foreach>
</when>
</choose>
</foreach>
</trim>
</if>
</foreach>
</where>
</sql>
<sql id=”Base_Column_List”>CUST_NO, CUST_NAME, GENDER, ID_TYPE, ID_NO, MAIL_ADDR, MOBILE, LOGIN_PWD, ADDRESS,
STATUS, LAST_UP_DATE, LAST_LOGIN_DATE</sql>
<select id=”selectByExample” resultMap=”BaseResultMap” parameterType=”com.hxb.wide.demo.mapper.example.CCustInfoExample”>
select
<if test=”distinct”>distinct</if>
<include refid=”Base_Column_List” />
from C_CUST_INFO
<if test=”_parameter != null”>
<include refid=”Example_Where_Clause” />
</if>
<if test=”orderByClause != null”>order by ${orderByClause}</if>
</select>
<delete id=”deleteByExample” parameterType=”com.hxb.wide.demo.mapper.example.CCustInfoExample”>
delete from C_CUST_INFO
<if test=”_parameter != null”>
<include refid=”Example_Where_Clause” />
</if>
</delete>
<insert id=”insert” parameterType=”com.hxb.wide.demo.entity.CCustInfo”>insert into C_CUST_INFO (CUST_NO, CUST_NAME, GENDER,
ID_TYPE, ID_NO, MAIL_ADDR,
MOBILE, LOGIN_PWD, ADDRESS,
STATUS, LAST_UP_DATE, LAST_LOGIN_DATE
)
values (#{custNo,jdbcType=VARCHAR}, #{custName,jdbcType=VARCHAR}, #{gender,jdbcType=VARCHAR},
#{idType,jdbcType=VARCHAR}, #{idNo,jdbcType=VARCHAR}, #{mailAddr,jdbcType=VARCHAR},
#{mobile,jdbcType=VARCHAR}, #{loginPwd,jdbcType=VARCHAR}, #{address,jdbcType=VARCHAR},
#{status,jdbcType=VARCHAR}, #{lastUpDate,jdbcType=VARCHAR}, #{lastLoginDate,jdbcType=VARCHAR}
)</insert>
<insert id=”insertSelective” parameterType=”com.hxb.wide.demo.entity.CCustInfo”>
<selectKey resultType=”java.lang.String” order=”BEFORE” keyProperty=”custNo”>SELECT seq_cust_id.nextval AS custNo FROM dual</selectKey>
insert into C_CUST_INFO
<trim prefix=”(” suffix=”)” suffixOverrides=”,”>
<if test=”custNo!=null “>CUST_NO,</if>
<if test=”custName != null”>CUST_NAME,</if>
<if test=”gender != null”>GENDER,</if>
<if test=”idType != null”>ID_TYPE,</if>
<if test=”idNo != null”>ID_NO,</if>
<if test=”mailAddr != null”>MAIL_ADDR,</if>
<if test=”mobile != null”>MOBILE,</if>
<if test=”loginPwd != null”>LOGIN_PWD,</if>
<if test=”address != null”>ADDRESS,</if>
<if test=”status != null”>STATUS,</if>
<if test=”lastUpDate != null”>LAST_UP_DATE,</if>
<if test=”lastLoginDate != null”>LAST_LOGIN_DATE,</if>
</trim>
<trim prefix=”values (” suffix=”)” suffixOverrides=”,”>
<if test=”custNo!=null”>#{custNo,jdbcType=VARCHAR},</if>
<if test=”custName != null”>#{custName,jdbcType=VARCHAR},</if>
<if test=”gender != null”>#{gender,jdbcType=VARCHAR},</if>
<if test=”idType != null”>#{idType,jdbcType=VARCHAR},</if>
<if test=”idNo != null”>#{idNo,jdbcType=VARCHAR},</if>
<if test=”mailAddr != null”>#{mailAddr,jdbcType=VARCHAR},</if>
<if test=”mobile != null”>#{mobile,jdbcType=VARCHAR},</if>
<if test=”loginPwd != null”>#{loginPwd,jdbcType=VARCHAR},</if>
<if test=”address != null”>#{address,jdbcType=VARCHAR},</if>
<if test=”status != null”>#{status,jdbcType=VARCHAR},</if>
<if test=”lastUpDate != null”>#{lastUpDate,jdbcType=VARCHAR},</if>
<if test=”lastLoginDate != null”>#{lastLoginDate,jdbcType=VARCHAR},</if>
</trim>
</insert>
<select id=”countByExample” parameterType=”com.hxb.wide.demo.mapper.example.CCustInfoExample” resultType=”java.lang.Integer”>
select count(*) from C_CUST_INFO
<if test=”_parameter != null”>
<include refid=”Example_Where_Clause” />
</if>
</select>
<update id=”updateByExampleSelective” parameterType=”map”>
update C_CUST_INFO
<set>
<if test=”record.custNo != null”>CUST_NO = #{record.custNo,jdbcType=VARCHAR},</if>
<if test=”record.custName != null”>CUST_NAME = #{record.custName,jdbcType=VARCHAR},</if>
<if test=”record.gender != null”>GENDER = #{record.gender,jdbcType=VARCHAR},</if>
<if test=”record.idType != null”>ID_TYPE = #{record.idType,jdbcType=VARCHAR},</if>
<if test=”record.idNo != null”>ID_NO = #{record.idNo,jdbcType=VARCHAR},</if>
<if test=”record.mailAddr != null”>MAIL_ADDR = #{record.mailAddr,jdbcType=VARCHAR},</if>
<if test=”record.mobile != null”>MOBILE = #{record.mobile,jdbcType=VARCHAR},</if>
<if test=”record.loginPwd != null”>LOGIN_PWD = #{record.loginPwd,jdbcType=VARCHAR},</if>
<if test=”record.address != null”>ADDRESS = #{record.address,jdbcType=VARCHAR},</if>
<if test=”record.status != null”>STATUS = #{record.status,jdbcType=VARCHAR},</if>
<if test=”record.lastUpDate != null”>LAST_UP_DATE = #{record.lastUpDate,jdbcType=VARCHAR},</if>
<if test=”record.lastLoginDate != null”>LAST_LOGIN_DATE = #{record.lastLoginDate,jdbcType=VARCHAR},</if>
</set>
<if test=”_parameter != null”>
<include refid=”Update_By_Example_Where_Clause” />
</if>
</update>
<update id=”updateByExample” parameterType=”map”>
update C_CUST_INFO
set CUST_NO = #{record.custNo,jdbcType=VARCHAR},
CUST_NAME = #{record.custName,jdbcType=VARCHAR},
GENDER = #{record.gender,jdbcType=VARCHAR},
ID_TYPE = #{record.idType,jdbcType=VARCHAR},
ID_NO = #{record.idNo,jdbcType=VARCHAR},
MAIL_ADDR = #{record.mailAddr,jdbcType=VARCHAR},
MOBILE = #{record.mobile,jdbcType=VARCHAR},
LOGIN_PWD = #{record.loginPwd,jdbcType=VARCHAR},
ADDRESS = #{record.address,jdbcType=VARCHAR},
STATUS = #{record.status,jdbcType=VARCHAR},
LAST_UP_DATE = #{record.lastUpDate,jdbcType=VARCHAR},
LAST_LOGIN_DATE = #{record.lastLoginDate,jdbcType=VARCHAR}
<if test=”_parameter != null”>
<include refid=”Update_By_Example_Where_Clause” />
</if>
</update>
<select id=”selectByExampleWithRowbounds” resultMap=”BaseResultMap” parameterType=”com.hxb.wide.demo.mapper.example.CCustInfoExample” resultType=”com.hxb.wide.demo.entity.CCustInfo”>
select
<if test=”distinct”>distinct</if>
<include refid=”Base_Column_List” />
from C_CUST_INFO
<if test=”_parameter != null”>
<include refid=”Example_Where_Clause” />
</if>
<if test=”orderByClause != null”>order by ${orderByClause}</if>
</select>
<select id=”selectByPrimaryKey” />
<delete id=”deleteByPrimaryKey” />
<update id=”updateByPrimaryKeySelective” />
<update id=”updateByPrimaryKey” />
<delete id=”deleteByCustName” parameterType=”com.hxb.wide.demo.entity.CCustInfo”>delete from C_CUST_INFO where CUST_NAME = #{custName,jdbcType=VARCHAR}</delete>
<delete id=”deleteByCustNo”>delete from C_CUST_INFO where CUST_NO = #{custNo,jdbcType=VARCHAR}</delete>

<select id=”queryByCustNo” parameterType=”java.lang.String” resultMap=”BaseResultMap” >select * from C_CUST_INFO where CUST_NO = #{custNo,jdbcType=VARCHAR}</select>
</mapper>

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,000
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,512
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,358
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,141
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,771
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,849