missfresh问题记录
一、基本信息
1、登陆机器 ssh lina02@mjump.missfresh.net -p2222
二、问题
1、分页问题:job_id为空时能查询出来(笛卡尔乘积),需要加上AND res.job_id IS NOT NULL AND task.job_id IS NOT NULL AND res.job_id !='' AND task.job_id !=''
<resultMap id="dtoMap" type="com.mryx.matrix.codeanalyzer.dto.CodeScanTaskDto">
<id column="id" property="id" jdbcType="INTEGER"/>
<association property="codeScanResult" javaType="com.mryx.matrix.codeanalyzer.domain.CodeScanResult">
<id column="id" property="id" jdbcType="INTEGER"/>
<result column="blocker" property="blocker" jdbcType="INTEGER"/>
<result column="critical" property="critical" jdbcType="INTEGER"/>
<result column="major" property="major" jdbcType="INTEGER"/>
<result column="minor" property="minor" jdbcType="INTEGER"/>
<result column="info" property="info" jdbcType="INTEGER"/>
<result column="status" property="status" jdbcType="INTEGER"/>
<result column="blockerResultUrl" property="blockerResultUrl" jdbcType="VARCHAR"/>
<result column="criticalResultUrl" property="criticalResultUrl" jdbcType="VARCHAR"/>
<result column="majorResultUrl" property="majorResultUrl" jdbcType="VARCHAR"/>
</association>
<association property="projectCodeScanTask" javaType="com.mryx.matrix.codeanalyzer.domain.ProjectCodeScanTask">
<id column="id" property="id" jdbcType="INTEGER"/>
<result column="task_name" property="taskName" jdbcType="VARCHAR"/>
<result column="app_code" property="appCode" jdbcType="VARCHAR"/>
<result column="mode_of_scan" property="modeOfScan" jdbcType="SMALLINT"/>
<result column="app_branch" property="appBranch" jdbcType="VARCHAR"/>
<result column="user_name" property="userName" jdbcType="VARCHAR"/>
<result column="update_time" property="updateTime" jdbcType="TIMESTAMP"/>
</association>
</resultMap> <sql id="conditions">
<if test="id != null ">and id = #{id,jdbcType=INTEGER}</if>
<if test="taskName != null and taskName != '' ">and task_name like '%${taskName}%'</if>
<if test="appCode != null and appCode != '' ">and app_code like '%${appCode}%'</if>
<if test="modeOfScan != null ">and mode_of_scan = #{modeOfScan,jdbcType=INTEGER}</if>
<if test="appBranch != null and appBranch != '' ">and app_branch = #{appBranch,jdbcType=VARCHAR}</if>
<if test="baseVersion != null and baseVersion != '' ">and base_version = #{baseVersion,jdbcType=INTEGER}</if>
<if test="compareVersion != null and compareVersion != '' ">and compare_version =
#{compareVersion,jdbcType=VARCHAR}
</if>
<if test="timeTrigger != null and timeTrigger != '' ">and time_trigger = #{timeTrigger,jdbcType=TIMESTAMP}</if>
<if test="userName != null and userName != '' ">and user_name = #{userName,jdbcType=VARCHAR}</if>
<if test="createTime != null and createTime != '' ">and create_time = #{createTime,jdbcType=TIMESTAMP}</if>
<if test="updateTime != null and updateTime != '' ">and update_time = #{updateTime,jdbcType=TIMESTAMP}</if>
</sql> <select id="getCodeScanTask" resultMap="dtoMap"
parameterType="com.mryx.matrix.codeanalyzer.domain.ProjectCodeScanTask">
SELECT task.id,task.task_name,task.app_code,task.mode_of_scan,task.app_branch,task.user_name,task.update_time,
res.blocker,res.critical,res.major,res.minor,res.info,res.status,res.blocker_result_url,res.critical_result_url,res.major_result_url
FROM project_codescan_task AS task INNER JOIN code_scan_result AS res ON task.job_id=res.job_id
WHERE 1=1 AND res.job_id IS NOT NULL AND task.job_id IS NOT NULL AND res.job_id !='' AND task.job_id !=''
<include refid="conditions"/>
ORDER BY task.id DESC
limit #{startOfPage},#{pageSize}
</select> <!-- 分页查询总数 -->
<select id="pageTotal" resultType="java.lang.Integer"
parameterType="com.mryx.matrix.codeanalyzer.domain.ProjectCodeScanTask">
SELECT count(*)
FROM project_codescan_task AS task INNER JOIN code_scan_result AS res ON task.job_id=res.job_id
WHERE 1=1 AND res.job_id IS NOT NULL AND task.job_id IS NOT NULL AND res.job_id !='' AND task.job_id !=''
<include refid="conditions"/>
</select>
2、insert数据库问题: 字段属性有NOT NULL属性,mapper文件中的sql语句没有为该字段写值,导致插入不了数据库,字段需要有DEFAULT属性
3、实体类中的属性是驼峰命名的时候,mapper中的sql语句需要使用resultMap
<resultMap id="sonarMap" type="com.mryx.matrix.codeanalyzer.domain.CodeScanResult">
<id column="id" property="id" jdbcType="INTEGER"/>
<result column="task_name" property="taskName" jdbcType="VARCHAR"/>
<result column="app_code" property="appCode" jdbcType="VARCHAR"/>
<result column="type_of_scan" property="typeOfScan" jdbcType="SMALLINT"/>
<result column="mode_of_scan" property="modeOfScan" jdbcType="SMALLINT"/>
<result column="code_branch" property="codeBranch" jdbcType="VARCHAR"/>
<result column="user_name" property="userName" jdbcType="VARCHAR"/>
<result column="update_time" property="updateTime" jdbcType="TIMESTAMP"/>
<result column="blocker" property="blocker" jdbcType="INTEGER"/>
<result column="critical" property="critical" jdbcType="INTEGER"/>
<result column="major" property="major" jdbcType="INTEGER"/>
<result column="minor" property="minor" jdbcType="INTEGER"/>
<result column="info" property="info" jdbcType="INTEGER"/>
<result column="status" property="status" jdbcType="INTEGER"/>
<result column="blocker_result_url" property="blockerResultUrl" jdbcType="VARCHAR"/>
<result column="critical_result_url" property="criticalResultUrl" jdbcType="VARCHAR"/>
<result column="major_result_url" property="majorResultUrl" jdbcType="VARCHAR"/>
</resultMap> <!-- 分页查询 -->
<select id="getCodeScanTask" resultMap="sonarMap"
resultType="com.mryx.matrix.codeanalyzer.domain.CodeScanResult">
SELECT
id,task_name,app_code,type_of_scan,mode_of_scan,code_branch,user_name,update_time,
blocker,critical,major,minor,info,status,blocker_result_url,critical_result_url,major_result_url
FROM code_scan_result WHERE manual_or_automatic != 0
<include refid="conditions"/>
ORDER BY id DESC
limit #{startOfPage},#{pageSize}
</select>
发邮件:https://www.cnblogs.com/sea520/p/4565273.html
missfresh问题记录的更多相关文章
- 记一次debug记录:Uncaught SyntaxError: Unexpected token ILLEGAL
在使用FIS3搭建项目的时候,遇到了一些问题,这里记录下. 这里是发布搭建代码: // 代码发布时 fis.media('qa') .match('*.{js,css,png}', { useHash ...
- nginx配置反向代理或跳转出现400问题处理记录
午休完上班后,同事说测试站点访问接口出现400 Bad Request Request Header Or Cookie Too Large提示,心想还好是测试服务器出现问题,影响不大,不过也赶紧上 ...
- Kali对wifi的破解记录
好记性不如烂笔头,记录一下. 我是在淘宝买的拓实N87,Kali可以识别,还行. 操作系统:Kali 开始吧. 查看一下网卡的接口.命令如下 airmon-ng 可以看出接口名称是wlan0mon. ...
- 2015 西雅图微软总部MVP峰会记录
2015 西雅图微软总部MVP峰会记录 今年决定参加微软MVP全球峰会,在出发之前本人就已经写这篇博客,希望将本次会议原汁原味奉献给大家 因为这次是本人第一次写会议记录,写得不好的地方希望各位园友见谅 ...
- 分享一个SQLSERVER脚本(计算数据库中各个表的数据量和每行记录所占用空间)
分享一个SQLSERVER脚本(计算数据库中各个表的数据量和每行记录所占用空间) 很多时候我们都需要计算数据库中各个表的数据量和每行记录所占用空间 这里共享一个脚本 CREATE TABLE #tab ...
- 我是如何在SQLServer中处理每天四亿三千万记录的
首先声明,我只是个程序员,不是专业的DBA,以下这篇文章是从一个问题的解决过程去写的,而不是一开始就给大家一个正确的结果,如果文中有不对的地方,请各位数据库大牛给予指正,以便我能够更好的处理此次业务. ...
- 前端学HTTP之日志记录
前面的话 几乎所有的服务器和代理都会记录下它们所处理的HTTP事务摘要.这么做出于一系列的原因:跟踪使用情况.安全性.计费.错误检测等等.本文将谥介绍日志记录 记录内容 大多数情况下,日志的记录出于两 ...
- ASP.NET Core应用中如何记录和查看日志
日志记录不仅对于我们开发的应用,还是对于ASP.NET Core框架功能都是一项非常重要的功能特性.我们知道ASP.NET Core使用的是一个极具扩展性的日志系统,该系统由Logger.Logger ...
- python+uwsgi导致redis无法长链接引起性能下降问题记录
今天在部署python代码到预生产环境时,web站老是出现redis链接未初始化,无法连接到服务的提示,比对了一下开发环境与测试环境代码,完全一致,然后就是查看各种日志,排查了半天也没有查明是什么原因 ...
随机推荐
- Unity 摄像机旋转初探
接触打飞机的游戏时都会碰见把摄像机绕 x 轴顺时针旋转 90°形成俯瞰的视角的去看飞船.也没有多想,就感觉是坐标系绕 x 轴旋转 90°完事了.但是昨天用手比划发一下发现不对.我就想这样的话绕 x 轴 ...
- 远程调用appium server
例如:我有两台电脑A(192.168.112.10)和B(192.168.112.11),那我怎么能在A执行本地脚本,但是使用B上的server呢? 查看appium连接appium服务并开启一个 ...
- poj1475 Pushing Boxes[双重BFS(毒瘤搜索题)]
地址. 很重要的搜索题.★★★ 吐槽:算是写过的一道码量比较大的搜索题了,细节多,还比较毒瘤.虽然是一遍AC的,其实我提前偷了大数据,但是思路还是想了好长时间,照理说想了半小时出不来,我就会翻题解,但 ...
- Zigbee协议栈--Z-Stack的使用
使用方法简介:一般情况下用户只需要额外添加三个文件就可以完成一个项目.一个是主文件,存放具体的任务事件处理函数:一个是这个主文件的头文件:另外一个是以Osal开头的操作系统接口文件,是专门存放任务处理 ...
- failed to create rwlayer: lstat /var/lib/docker/overlay2/ no such file or directory
在使用Docker构建微服务镜像时出现的错误.第一天构建好好的,第二天就出现了这样的错误.通过百度这条错误的信息非常少,只在 stackoverflow.com 上找到一条,问题指向了 dockerf ...
- go语言中将函数作为变量传递
在Go中函数也是一种变量,我们可以通过type来定义它,它的类型就是所有拥有相同的参数,相同的返回值的一种类型,函数当做值和类型在我们写一些通用接口的时候非常有用,通过下面这个例子我们可以看到test ...
- js实现星级评分之方法一
利用一个星级评分的小案例,来逐步封装js星级评分插件. 从最基础的js知识,通过一个小的demo,逐步学习js的面向对象知识. 从浅到深,逐步递进. 图片素材 <!DOCTYPE html> ...
- Linux下使用sendEmail发送带附件的邮件(转载)
转载:http://www.ttlsa.com/linux/use-sendemail-send-file/ sendEmail是一个轻量级,命令行的SMTP邮件客户端.如果你需要使用命令行发送邮件, ...
- BDBR vs BDPSNR 计算方法 (转载)
转自:http://blog.csdn.net/menyangyang/article/details/42874575
- Vue.js中,如何自己维护路由跳转记录?
在Vue的项目中,如果我们想要做返回.回退操作时,一般会调用router.go(n)这个api,但是实际操作中,使用这个api有风险,就是会让用户跳出当前应用,因为它记录的是浏览器的访问记录,而不是你 ...