记录一下加班的感受-第一次真正使用java

虽然我学习java已经4年多了,但是我实话实说使用的话还是第一次真正意义上的使用java,这一次是我们的影像库出现了问题,好像是影像库的服务挂掉了。

问题出现

因为我负责运维的系统会在单据发起的时候产生一个二维码,这里则需要使用影像库的服务,但是很不巧这个影像库的这个服务挂掉了,两天,我们这个二维码的使用是在最后一个环节才会使用,所以说当我意识到出现了问题时候,已经产生了80+个数据,(在这里吐槽一下我的系统的流量两天才不到100个)。

问题思路

首先解决的思路肯定是,先手动生成二维码,然后写sql,去更新生产的库,但是问题来了,第一个生成二维码的url在swagger上面,这个是只能够传单个单据的参数,但是很不巧的是这个需要四个参数,返回值是二维码在影像库的地址,我们可以通过数据库将需要的参数取出,然后只能够手动去swagger将参数去生成二维码,这一步还是避免不不了的,然后去通过批量的方式将sql进行生成。

问题解决

首先第一个就是找到数据,在数据如何搜索,但是很不巧的是数据库里面有一些垃圾数据,然后经过多次尝试

SELECT
	t.instance_id,
	t.bill_code,
	    CONCAT(
    '{"proDefId":"","proInsId":"',t.instance_id,
    '","instanceId":','"',t.instance_id,
    '","flowKey":','"',t.flow_key,
    '","compId":','"',t.comp_id,
    '","compCode":','"',t.comp_code,
    '"}'
    ) bussInfo

FROM
(

SELECT
	bill_code,
	instance_id,
	flow_key,
	comp_id,
	comp_code,
	created_date,
	codeimage 
FROM
	reim_base_bill 
) t
WHERE
	t.codeimage IS NULL 
		AND
	t.created_date>'2020-11-29 17:09:55'
	AND
	t.instance_id<> ''
ORDER BY
	t.created_date DESC 	

然后将搜索出来的数据存到Excel中,便于我们后面手动swagger里面找到
拼接出来的json样式就是

{
"proDefId":"",
"proInsId":"2786440",
"instanceId":"2786440",
"flowKey":"sid_9f50165e932b4203a57845dcfef50f9c:17:1651697",
"compId":"331","compCode":"001001021"
}

然后是手动的将json参数放在swagger上面得到影像库的地址,这一步是因为我们的接口发布需要经过测试但是最近我们的新项目上线所以没有时间来处理这个问题,直接手动的将json参数放在swagger上面得到影像库的地址。
然后就是感觉是一个灵魂之作,虽然简单但是我感觉这是我实用的第一步,

public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        ArrayList billcode=new ArrayList();
        ArrayList codeimage=new ArrayList();
        for (int i = 0; i < 82; i++) {
            String s = sc.nextLine();
            billcode.add(s);
        }
        for (int i = 0; i < 82; i++) {
            String s = sc.nextLine();
            codeimage.add(s);
        }
        for (int i = 0; i < 82; i++) {
            System.out.println("UPDATE reim_base_bill set codeimage='"+codeimage.get(i)+"'");
            System.out.println("where bill_code='"+billcode.get(i)+"';");
            System.out.println();
        }
    }

最后通过这个代码的得到的sql

UPDATE reim_base_bill 
set codeimage='7z21g4l2g13544fskib465m7i'
where bill_code='RBZJ-202012001001006000021';

虽然半年的运维生活还是浪费了很多的时间,但是也是学到了一些东西正在整理中,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

又是重名了

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值