工具代码,springboot+springcloud连接Greenplum数据库,对应mapping,impl
<?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="testGp" >
<!--GP测试表通用查询条件 -->
<sql id="TEST_GP_WHERE">
<where>
<if test="ID != null and ID != ''">
AND T.ID = #{ID}
</if>
<if test="ID_LIKE != null and ID_LIKE != ''">
AND T.ID::text LIKE ${ID_LIKE}
</if>
<if test="CREATE_TIME != null and CREATE_TIME != ''">
AND T.CREATE_TIME = TO_TIMESTAMP(#{CREATE_TIME},'YYYY-MM-DD hh24:mi:ss')
</if>
<if test="CREATE_TIME_MIN != null and CREATE_TIME_MIN != ''">
AND T.CREATE_TIME >= TO_TIMESTAMP(#{CREATE_TIME_MIN},'YYYY-MM-DD hh24:mi:ss')
</if>
<if test="CREATE_TIME_MAX != null and CREATE_TIME_MAX != ''">
AND T.CREATE_TIME <= TO_TIMESTAMP(#{CREATE_TIME_MAX},'YYYY-MM-DD hh24:mi:ss')
</if>
<if test="CREATE_DATE != null and CREATE_DATE != ''">
AND T.CREATE_DATE = TO_TIMESTAMP(#{CREATE_DATE},'YYYY-MM-DD hh24:mi:ss')
</if>
<if test="CREATE_DATE_MIN != null and CREATE_DATE_MIN != ''">
AND T.CREATE_DATE >= TO_TIMESTAMP(#{CREATE_DATE_MIN},'YYYY-MM-DD hh24:mi:ss')
</if>
<if test="CREATE_DATE_MAX != null and CREATE_DATE_MAX != ''">
AND T.CREATE_DATE <= TO_TIMESTAMP(#{CREATE_DATE_MAX},'YYYY-MM-DD hh24:mi:ss')
</if>
<if test="NAME != null and NAME != ''">
AND T.NAME = #{NAME}
</if>
<if test="NAME_LIKE != null and NAME_LIKE != ''">
AND T.NAME::text LIKE ${NAME_LIKE}
</if>
<if test="AGE != null and AGE != ''">
AND T.AGE = #{AGE}
</if>
<if test="AGE_LIKE != null and AGE_LIKE != ''">
AND T.AGE::text LIKE ${AGE_LIKE}
</if>
</where>
</sql>
<!-- GP测试表通用查询 -->
<select id="selectTestGp" parameterType="java.util.Map" resultType="java.util.Map" >
SELECT T.ID,
TO_CHAR(T.CREATE_TIME,'YYYY-MM-DD hh24:mi:ss') CREATE_TIME,
TO_CHAR(T.CREATE_DATE,'YYYY-MM-DD hh24:mi:ss') CREATE_DATE,T.NAME,T.AGE
FROM "TEST_GP" T
<include refid="TEST_GP_WHERE"/>
<if test="sortName != null and sortName != ''">
ORDER BY ${sortName}
<if test="sortOrder != null and sortOrder != ''">
${sortOrder}
</if>
</if>
<if test="curPage != null and curPage != ''">
<if test="pageSize != null and pageSize != ''">
limit #{pageSize} offset (#{curPage} - 1) * #{pageSize}
</if>
</if>
</select>
<!-- GP测试表通用查询个数 -->
<select id="selectTestGpCount" parameterType="java.util.Map" resultType="java.lang.Integer" >
SELECT COUNT(1) FROM "TEST_GP" T <include refid="TEST_GP_WHERE"/>
</select>
<!-- GP测试表保存 -->
<insert id="insertTestGp" parameterType="java.util.Map" >
insert into "TEST_GP"
<trim prefix="(" suffix=")" suffixOverrides="," >
<if test="ID != null and ID != ''">
ID ,
</if>
CREATE_TIME ,
CREATE_DATE ,
<if test="NAME != null and NAME != ''">
NAME ,
</if>
<if test="AGE != null and AGE != ''">
AGE ,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides="," >
<if test="ID != null and ID != ''">
#{ID},
</if>
<if test="CREATE_TIME != null and CREATE_TIME != ''">
#{CREATE_TIME},
</if>
<if test="CREATE_DATE != null and CREATE_DATE != ''">
#{CREATE_DATE},
</if>
<if test="NAME != null and NAME != ''">
#{NAME},
</if>
<if test="AGE != null and AGE != ''">
#{AGE},
</if>
</trim>
</insert>
<!-- GP测试表修改-->
<update id="updateTestGp" parameterType="java.util.Map" >
update "TEST_GP" T
<set>
<if test="CREATE_TIME_NEW != null and CREATE_TIME_NEW != ''">
CREATE_TIME= TO_DATE(#{CREATE_TIME_NEW},'YYYY-MM-DD hh24:mi:ss'),
</if>
<if test="CREATE_DATE_NEW != null and CREATE_DATE_NEW != ''">
CREATE_DATE= TO_DATE(#{CREATE_DATE_NEW},'YYYY-MM-DD hh24:mi:ss'),
</if>
<if test="NAME_NEW != null and NAME_NEW != ''">
NAME= #{NAME_NEW},
</if>
<if test="AGE_NEW != null and AGE_NEW != ''">
AGE= #{AGE_NEW},
</if>
</set>
where
<if test="ID_NEW != null and ID_NEW != ''">
ID= #{ID_NEW}
</if>
<include refid="TEST_GP_WHERE"/>
</update>
<!-- GP测试表删除-->
<delete id="deleteTestGp" parameterType="java.util.Map">
delete from "TEST_GP" T <include refid="TEST_GP_WHERE"/>
</delete>
</mapper>
controller层代码
package com.xinan.dataservice.test.controller;
import com.xinan.dataservice.test.service.ITestService;
import com.xinan.distributeCore.entity.PageEntity;
import com.xinan.distributeCore.result.BaseResult;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections.MapUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
import java.util.Map;
@RestController
@Api(value = "测试")
@RequestMapping(value="/test")
@Slf4j
public class TestController {
@Autowired
private ITestService testService;
@ApiOperation(value = "增加GP测试表记录")
@RequestMapping(value={"/insertTestGp"}, method={RequestMethod.POST})
public BaseResult<Integer> insertTestGp(@RequestBody Map mapParam){return BaseResult.getInstance(testService.insert("testGp.insertTestGp", mapParam));}
@ApiOperation(value = "删除GP测试表记录")
@RequestMapping(value={"/deleteTestGp"}, method={RequestMethod.POST})
public BaseResult<Integer> deleteTestGp(@RequestBody Map mapParam ){
System.out.println("进入删除");
return BaseResult.getInstance(testService.delete("testGp.deleteTestGp", mapParam));}
@ApiOperation(value = "修改GP测试表记录")
@RequestMapping(value={"/updateTestGp"}, method={RequestMethod.POST})
public BaseResult<Integer> updateTestGp(@RequestBody Map mapParam){
System.out.println("1");
return BaseResult.getInstance(testService.update("testGp.updateTestGp", mapParam));}
@ApiOperation(value = "查询GP测试表记录")
@RequestMapping(value={"/selectTestGp"}, method={RequestMethod.POST})
public BaseResult<PageEntity<Map>> selectTestGp(@RequestBody Map mapParam){
System.out.println("1");
PageEntity<Map> pageEntity = new PageEntity<Map>();
List<Map> rows = testService.select("testGp.selectTestGp",mapParam);
pageEntity.setRows(rows);
if (MapUtils.getIntValue(mapParam,"curPage",-100)>-1){
if (MapUtils.getIntValue(mapParam,"pageSize",-100)>-1){
pageEntity.setTotal((int)testService.selectOne("testGp.selectTestGpCount",mapParam));
}
}else{
pageEntity.setTotal(rows.size());
}
return BaseResult.getInstance(pageEntity);
}
@ApiOperation(value = "查询GP测试表记录个数")
@RequestMapping(value={"/selectTestGpCount"}, method={RequestMethod.POST})
public BaseResult<Integer> selectTestGpCount(@RequestBody Map mapParam){return BaseResult.getInstance((int)testService.selectOne("testGp.selectTestGpCount", mapParam));}
//------------------------------------------------------------------
@ApiOperation(value = "oracle事务测试有事务")
@RequestMapping(value={"/testTx"}, method={RequestMethod.POST})
public BaseResult<Integer> testTx(@RequestBody Map mapParam){
if(MapUtils.getIntValue(mapParam,"tx",0)==1){
return BaseResult.getInstance(testService.insertTx());
}
return BaseResult.getInstance(testService.noTx());
}
@ApiOperation(value = "gp事务测试有事务")
@RequestMapping(value={"/testTxGp"}, method={RequestMethod.POST})
public BaseResult<Integer> testTxGp(@RequestBody Map mapParam){
if(MapUtils.getIntValue(mapParam,"tx",0)==1){
return BaseResult.getInstance(testService.insertTxGp());
}
return BaseResult.getInstance(testService.noTxGp());
}
@ApiOperation(value = "导出测试")
@RequestMapping(value={"/export"}, method={RequestMethod.POST})
public BaseResult<Map> testExport(@RequestParam int total){
return BaseResult.getInstance(testService.export(total));
}
}