<?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.dao.IPerformanceResultDao">
<insert id="addOnlineResult" parameterType="java.util.List">
BEGIN
<foreach collection="list" item="item" index="index" separator=";">
insert into pts_online_result values(
SEQ_PTS_ONLINE_RESULT.nextval,
#{item.app_name,jdbcType=VARCHAR},
#{item.app_trade,jdbcType=VARCHAR},
#{item.action_name,jdbcType=VARCHAR},
#{item.con_user,jdbcType=VARCHAR},
#{item.press_time,jdbcType=VARCHAR},
#{item.avg_time,jdbcType=VARCHAR},
#{item.tps,jdbcType=VARCHAR},
#{item.succ_action,jdbcType=VARCHAR},
#{item.fail_action,jdbcType=VARCHAR},
#{item.succ_rate,jdbcType=VARCHAR},
#{item.app_cpu_util,jdbcType=VARCHAR},
#{item.db_cpu_util,jdbcType=VARCHAR},
#{item.scenario_type,jdbcType=VARCHAR},
#{item.app_version,jdbcType=VARCHAR},
#{item.online_tester,jdbcType=VARCHAR},
#{item.online_developer,jdbcType=VARCHAR},
#{item.remark,jdbcType=VARCHAR},
sysdate,
sysdate
)
</foreach>
;end;
</insert> <insert id="addBatchResult" parameterType="java.util.List">
BEGIN
<foreach collection="list" item="item" index="index" separator=";">
insert into pts_batch_result values(
SEQ_PTS_BATCH_RESULT.nextval,
#{item.batch_app_name,jdbcType=VARCHAR},
#{item.batch_app_trade,jdbcType=VARCHAR},
#{item.perpare_data,jdbcType=VARCHAR},
#{item.total_cost,jdbcType=VARCHAR},
#{item.succ_record,jdbcType=VARCHAR},
#{item.fail_record,jdbcType=VARCHAR},
#{item.succ_rate,jdbcType=VARCHAR},
#{item.batch_app_cpu_util,jdbcType=VARCHAR},
#{item.batch_db_cpu_util,jdbcType=VARCHAR},
#{item.scenario_type,jdbcType=VARCHAR},
#{item.batch_app_version,jdbcType=VARCHAR},
#{item.batch_tester,jdbcType=VARCHAR},
#{item.batch_developer,jdbcType=VARCHAR},
#{item.remark,jdbcType=VARCHAR},
sysdate,
sysdate
)
</foreach>
;end;
</insert>
<select id="queryOnlineResultList" resultType="com.pts.model.PerformanceOnlineResultModel" >
select t.RESULT_ID
,t.APP_NAME
,t.APP_TRADE
,t.ACTION_NAME
,t.CON_USER
,t.PRESS_TIME
,t.AVG_TIME
,t.TPS
,t.SUCC_ACTION
,t.FAIL_ACTION
,t.SUCC_RATE
,t.APP_CPU_UTIL
,t.DB_CPU_UTIL
,t.SCENARIO_TYPE
,t.APP_VERSION
,t.ONLINE_TESTER
,t.ONLINE_DEVELOPER
,t.REMARK
,to_char(t.CREATE_TIME, 'yyyy-mm-dd hh24:mi:ss')
,to_char(t.UPDATE_TIME, 'yyyy-mm-dd hh24:mi:ss')
from ( select
rownum rn ,p1.*
from
(select * from pts.pts_online_result p order by p.result_id desc) p1
<where>
<if test="perResultModel.app_name != null and perResultModel.app_name != ''">
and p1.app_name like concat('%',concat(#{perResultModel.app_name,jdbcType=VARCHAR},'%'))
</if>
<if test="perResultModel.scenario_type != null and perResultModel.scenario_type != ''">
and p1.scenario_type like concat('%',concat(#{perResultModel.scenario_type,jdbcType=VARCHAR},'%'))
</if>
<if test="perResultModel.app_trade != null and perResultModel.app_trade != ''">
and p1.app_trade like concat('%',concat(#{perResultModel.app_trade,jdbcType=VARCHAR},'%'))
</if>
<if test="perResultModel.online_tester != null and perResultModel.online_tester != ''">
and p1.online_tester like concat('%',concat(#{perResultModel.online_tester,jdbcType=VARCHAR},'%'))
</if>
<if test="perResultModel.action_name != null and perResultModel.action_name != ''">
and p1.action_name like concat('%',concat(#{perResultModel.action_name,jdbcType=VARCHAR},'%'))
</if>
<if test="perResultModel.app_version != null and perResultModel.app_version != ''">
and p1.app_version like concat('%',concat(#{perResultModel.app_version,jdbcType=VARCHAR},'%'))
</if>
</where>
) t
where t.rn &lt;= #{rows,jdbcType=NUMERIC}
and t.rn &gt; #{start,jdbcType=NUMERIC}
order by result_id desc
</select>
<select id="queryOnlineResultCount" resultType="java.lang.Integer" >
select count(*)
from (select * from pts.pts_online_result p order by p.result_id desc) p1
<where>
<if test="perResultModel.app_name != null and perResultModel.app_name != ''">
and p1.app_name like concat('%',concat(#{perResultModel.app_name,jdbcType=VARCHAR},'%'))
</if>
<if test="perResultModel.scenario_type != null and perResultModel.scenario_type != ''">
and p1.scenario_type like concat('%',concat(#{perResultModel.scenario_type,jdbcType=VARCHAR},'%'))
</if>
<if test="perResultModel.app_trade != null and perResultModel.app_trade != ''">
and p1.app_trade like concat('%',concat(#{perResultModel.app_trade,jdbcType=VARCHAR},'%'))
</if>
<if test="perResultModel.online_tester != null and perResultModel.online_tester != ''">
and p1.online_tester like concat('%',concat(#{perResultModel.online_tester,jdbcType=VARCHAR},'%'))
</if>
<if test="perResultModel.action_name != null and perResultModel.action_name != ''">
and p1.action_name like concat('%',concat(#{perResultModel.action_name,jdbcType=VARCHAR},'%'))
</if>
<if test="perResultModel.app_version != null and perResultModel.app_version != ''">
and p1.app_version like concat('%',concat(#{perResultModel.app_version,jdbcType=VARCHAR},'%'))
</if>
</where>
</select>
<select id="queryOnlineResultDetail" resultType="com.pts.model.PerformanceOnlineResultModel">
select * from pts.pts_online_result p
where p.result_id=#{result_id,jdbcType=NUMERIC}
</select>
<delete id="delOneOnlineResult">
delete from pts.pts_online_result p
where p.result_id=#{result_id,jdbcType=NUMERIC}
</delete>
<update id="editOnlineResultDetail">
update pts.pts_online_result p
set P.APP_NAME=#{porModel.app_name,jdbcType=VARCHAR}
,P.APP_TRADE=#{porModel.app_trade,jdbcType=VARCHAR}
,P.ACTION_NAME=#{porModel.action_name,jdbcType=VARCHAR}
,P.CON_USER=#{porModel.con_user,jdbcType=VARCHAR}
,P.PRESS_TIME=#{porModel.press_time,jdbcType=VARCHAR}
,P.AVG_TIME=#{porModel.avg_time,jdbcType=VARCHAR}
,P.TPS=#{porModel.tps,jdbcType=VARCHAR}
,P.SUCC_ACTION=#{porModel.succ_action,jdbcType=VARCHAR}
,P.FAIL_ACTION=#{porModel.fail_action,jdbcType=VARCHAR}
,P.SUCC_RATE=#{porModel.succ_rate,jdbcType=VARCHAR}
,P.APP_CPU_UTIL=#{porModel.app_cpu_util,jdbcType=VARCHAR}
,P.DB_CPU_UTIL=#{porModel.db_cpu_util,jdbcType=VARCHAR}
,P.SCENARIO_TYPE=#{porModel.scenario_type,jdbcType=VARCHAR}
,P.APP_VERSION=#{porModel.app_version,jdbcType=VARCHAR}
,P.ONLINE_TESTER=#{porModel.online_tester,jdbcType=VARCHAR}
,P.ONLINE_DEVELOPER=#{porModel.online_developer,jdbcType=VARCHAR}
,P.REMARK=#{porModel.remark,jdbcType=VARCHAR}
,P.UPDATE_TIME=sysdate
where p.result_id=#{result_id,jdbcType=NUMERIC}
</update>
<select id="queryBatchResultList" resultType="com.pts.model.PerformanceBatchResultModel">
select
t.BATCH_RESULT_ID
,t.BATCH_APP_NAME
,t.BATCH_APP_TRADE
,t.PERPARE_DATA
,t.TOTAL_COST
,t.SUCC_RECORD
,t.FAIL_RECORD
,t.SUCC_RATE
,t.BATCH_APP_CPU_UTIL
,t.BATCH_DB_CPU_UTIL
,t.SCENARIO_TYPE
,t.BATCH_APP_VERSION
,t.BATCH_TESTER
,t.BATCH_DEVELOPER
,t.REMARK
,to_char(t.CREATE_TIME, 'yyyy-mm-dd hh24:mi:ss')
,to_char(t.UPDATE_TIME, 'yyyy-mm-dd hh24:mi:ss')
from (
select rownum rn , p1.*from
(select * from pts.pts_batch_result p order by p.batch_result_id desc) p1
<where>
<if test="perResultModel.batch_app_name != null and perResultModel.batch_app_name != ''">
and p1.batch_app_name like concat('%',concat(#{perResultModel.batch_app_name,jdbcType=VARCHAR},'%'))
</if>
<if test="perResultModel.batch_app_trade != null and perResultModel.batch_app_trade != ''">
and p1.batch_app_trade like concat('%',concat(#{perResultModel.batch_app_trade,jdbcType=VARCHAR},'%'))
</if>
<if test="perResultModel.batch_tester != null and perResultModel.batch_tester != ''">
and p1.batch_batch_tester like concat('%',concat(#{perResultModel.batch_batch_tester,jdbcType=VARCHAR},'%'))
</if>
<if test="perResultModel.batch_app_version != null and perResultModel.batch_app_version != ''">
and p1.batch_app_version like concat('%',concat(#{perResultModel.batch_app_version,jdbcType=VARCHAR},'%'))
</if>
</where>
) t
where t.rn &lt;=#{rows,jdbcType=NUMERIC}
and t.rn &gt;#{start,jdbcType=NUMERIC}
order by batch_result_id desc
</select>
<select id="queryBatchResultCount" resultType="java.lang.Integer" >
select count(*)
from (select * from pts.pts_batch_result p order by p.batch_result_id desc) p1
<where>
<if test="perResultModel.batch_app_name != null and perResultModel.batch_app_name != ''">
and p1.batch_app_name like concat('%',concat(#{perResultModel.batch_app_name,jdbcType=VARCHAR},'%'))
</if>
<if test="perResultModel.batch_app_trade != null and perResultModel.batch_app_trade != ''">
and p1.batch_app_trade like concat('%',concat(#{perResultModel.batch_app_trade,jdbcType=VARCHAR},'%'))
</if>
<if test="perResultModel.batch_tester != null and perResultModel.batch_tester != ''">
and p1.batch_tester like concat('%',concat(#{perResultModel.batch_tester,jdbcType=VARCHAR},'%'))
</if>
<if test="perResultModel.batch_app_version != null and perResultModel.batch_app_version != ''">
and p1.batch_app_version like concat('%',concat(#{perResultModel.batch_app_version,jdbcType=VARCHAR},'%'))
</if>
</where>
</select>
<select id="queryBatchResultDetail" resultType="com.pts.model.PerformanceBatchResultModel">
select * from pts.pts_batch_result p
where p.batch_result_id=#{batch_result_id,jdbcType=NUMERIC}
</select>
<delete id="delOneBatchResult">
delete from pts.pts_batch_result p
where p.batch_result_id=#{batch_result_id,jdbcType=NUMERIC}
</delete>
<update id="editBatchResultDetail">
update pts.pts_batch_result p
set p.BATCH_APP_NAME=#{pbrModel.batch_app_name,jdbcType=VARCHAR}
,p.BATCH_APP_TRADE=#{pbrModel.batch_app_trade,jdbcType=VARCHAR}
,p.PERPARE_DATA=#{pbrModel.perpare_data,jdbcType=VARCHAR}
,p.TOTAL_COST=#{pbrModel.total_cost,jdbcType=VARCHAR}
,p.SUCC_RECORD=#{pbrModel.succ_record,jdbcType=VARCHAR}
,p.FAIL_RECORD=#{pbrModel.fail_record,jdbcType=VARCHAR}
,p.SUCC_RATE=#{pbrModel.succ_rate,jdbcType=VARCHAR}
,p.BATCH_APP_CPU_UTIL=#{pbrModel.batch_app_cpu_util,jdbcType=VARCHAR}
,p.BATCH_DB_CPU_UTIL=#{pbrModel.batch_db_cpu_util,jdbcType=VARCHAR}
,p.SCENARIO_TYPE=#{pbrModel.scenario_type,jdbcType=VARCHAR}
,p.BATCH_APP_VERSION=#{pbrModel.batch_app_version,jdbcType=VARCHAR}
,p.BATCH_TESTER=#{pbrModel.batch_tester,jdbcType=VARCHAR}
,p.BATCH_DEVELOPER=#{pbrModel.batch_developer,jdbcType=VARCHAR}
,p.REMARK=#{pbrModel.remark,jdbcType=VARCHAR}
,p.UPDATE_TIME=sysdate
where p.batch_result_id=#{batch_result_id,jdbcType=NUMERIC}
</update>
</mapper>

mybatis 批量插入和where条件使用的更多相关文章

  1. 160421、MyBatis批量插入数据

    在程序中封装了一个List集合对象,然后需要把该集合中的实体插入到数据库中,由于项目使用了Spring+MyBatis的配置,所以打算使用MyBatis批量插入,由于之前没用过批量插入,在网上找了一些 ...

  2. MyBatis批量插入数据(MySql)

    由于项目需要生成多条数据,并保存到数据库当中,在程序中封装了一个List集合对象,然后需要把该集合中的实体插入到数据库中,项目使用了Spring+MyBatis,所以打算使用MyBatis批量插入,应 ...

  3. Mybatis 批量插入

    一.首先对于批量数据的插入有两种解决方案(下面内容只讨论和Mysql交互的情况) 1)for循环调用Dao中的单条插入方法 2)传一个List<Object>参数,使用Mybatis的批量 ...

  4. mybatis批量插入数据到oracle

    mybatis 批量插入数据到oracle报 ”java.sql.SQLException: ORA-00933: SQL 命令未正确结束“  错误解决方法 oracle批量插入使用 insert a ...

  5. springMVC 接收数组参数,mybatis 接收数组参数,mybatis批量插入/批量删除案例

    案例是给一个用户赋予多个权限,多个权限用其对应的主键 id 为参数,组成了 一个id数组,传给springMVC,然后springMVC传给mybatis,然后mybatis批量插入.其实类似的场景还 ...

  6. 解决Oracle+Mybatis批量插入报错:SQL 命令未正确结束

    Mybatis批量插入需要foreach元素.foreach元素有以下主要属性: (1)item:集合中每一个元素进行迭代时的别名. (2)index:指定一个名字,用于表示在迭代过程中,每次迭代到的 ...

  7. mybatis批量插入oracle时报错:unique constraint (table name) violated

    mybatis批量插入oracle时报错:unique constraint (table name) violated,是因为插入的集合中有两条相同唯一约束的数据.

  8. Mybatis 批量插入数据

    --mybatis 批量插入数据 --1.Oracle(需要测试下是否支持MySQL) < insert id ="insertBatch" parameterType=&q ...

  9. 【mybatis批量插入】

    mybatis批量插入操作: MySQL:1.INSERT INTO TABLE_NAME(ID,NAME)VALUES(1,'张三'),(2,'李四')                  2.INS ...

随机推荐

  1. SDIO接口

    SDIO卡是在SD内存卡接口的基础上发展起来的接口,SDIO接口兼容以前的SD内存卡,并且可以连接SDIO接口的设备,目前根据SDIO协议的SPEC,SDIO接口支持的设备总类有蓝牙,网卡,电视卡等. ...

  2. linux下解决端口被占用的问题

    以端口9877为例,先查看是否有进程占用该端口 netstat -tln | grep 9877 然后查看占用该端口的进程的进程id lsof -i :9877 最后kill 命令结束该进程: kil ...

  3. Nginx 安装编译配置

    ./configure --prefix=/usr/local/nginx-1.8.0 --with-http_ssl_module --with-http_spdy_module --with-ht ...

  4. BZOJ 2252 矩阵距离

    BFS. #include<iostream> #include<cstdio> #include<cstring> #include<algorithm&g ...

  5. 初见Gnuplot——时间序列的描述

    研读一本书,<数据之魅:基于开源工具的数据分析>(Data Analysis with Open Source Tools),写的很好.这里,复述一下书中用Gnuplot分析时间序列数据的 ...

  6. Inno_setup制作升级包必须面临的几个问题

    Inno_setup制作升级包必须面临的几个问题 分类: c/c++/GamingAnyWhere JavaScript linux shell基础知识 2013-12-18 22:14 1496人阅 ...

  7. WCF寻址

    1.如果在<System.ServiceModel>.<Services>.<Service>.<host>.<baseaddress>定义 ...

  8. [转]在Windows中配置Rsync同步

    在Windows中配置Rsync同步 Rsync是一款不错的文件免费同步软件,可以镜像保存整个目录树和文件系统,同 时保持原来文件的权限.时间.软硬链接.第一次同步时 rsync 会复制全部内容,下次 ...

  9. python numpy 模块简单介绍

    用python自带的list去处理数组效率很低, numpy就诞生了, 它提供了ndarry对象,N-dimensional object, 是存储单一数据类型的多维数组,即所有的元素都是同一种类型. ...

  10. jquery获取所有选中的checkbox的ID

    //获取所有选中的CheckBox的id function getCheckBox() { var spCodesTemp = ""; $("input:checkbox ...