自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

原创 mybatis高并发情况下防止重复插入记录的方法

需求描述:一个手机号,表示一个用户,一个用户一个票id只能购买一次,但是当用户退票时,则可以再次购买,用户可以退票多次,也可以重复购买多次。目前该表主键只有id做为自增主键,如果在高并发的情况下控制插入情部,那么就需要要每次插入时,就需要先查看一下库中是否存在该用户购票记录。一般的防止重复插入记录方法,是设立主键,或者唯一主键来控制,但是如果主键和唯一主键都不能控制的情况下要如何处理呢?如果库中不在存在购买且未退的记录,则可以插入库中。time 买票时间。

2023-03-07 09:00:12 1971

原创 java获取异步执行结果

在业务处理过程中,会经常使用到多线程进行异步处理,日常情况下就会开启一个线程,直接执行。但在有些情况下,我们需要获取到异步执行的结果, jdk 1.5以后新引入了Future和Callable,可以方便的获取异步线程的执行结果,本文使用代码进行演示。1.使用future 获取异步结果。

2022-09-29 16:24:28 2663 1

原创 代码精简之路(1)

前言 对于接口请求和应答类中,我们除了设置相应的接口字段外,还需要为各个字段设置get和set的方法,以及toString方法。常规方式 一般的ide中,已为提供便捷的生成代码,以下面代码为例:首先,我们先建言一个请求类TestReqpackage hystrix.domain;public class TestReq { private String name; private String age; private String addr; ...

2021-10-28 09:32:12 179

原创 使用Hystrix实现服务隔离

前言虽然Netflix在多年之前,已经停止更新Hystrix,但是Hystrix在国内依然在广泛使用,Hystrix主要作用是实现服务隔离与保护,以及熔断与降级。服务隔离一般在使用tomcat容器时,http服务用共用一个线程池,当一个http服务访问后端出现响应慢异常时, 造成了服务响应延迟。当多个请求集中在这一个服务上时,这会导致所有的线程池中的线程被这一个服务耗尽,并都处阻塞状态,最终导致整个服务崩溃。使用服务隔离,就是对不同的服务分配不同的线程池,当一个服务出现异常时,不会对其它服务

2021-10-25 11:02:07 221

原创 注解不够用?自定义注解来帮忙

一、相关概念注解是一种特殊的接口,其继承了Annotation,其具体实现类是java运行时的动态代理类,我们可以通过反射获取到动态代理对象,再通过代理对象,就可以调用接口中定义的方法。元注解是可以加在注解上的注解。元注解是不可以自定义的。元注解分为以下四个类型,现在通过图表来一一进行讲解。1.@Retention该注解是用来标注一个注解的生命周期,其参数包含 以下几种:RetentionPolicy.SOURCE 源文件有效 RetentionPolicy.CLASS .

2021-10-14 17:42:40 72

原创 还在用使用if else?试试这个吧

最近在修改别人写的代码,现在碰到最不舒服的地方,就是代码中充诉着大量的if else,代码读起来既不清晰,格式又难看,于是便 着手去修改这部分代码。在以前实践中,使用过多种模式,来规避大量的if else使用,这里来介绍一个spring自带的InitializingBean接口来处理这个问题。首先,我们假设一个场景,公司准备有三个方案,当情况为A时,使用方案A,当情况为B时,使用方案B,当情况为C时,使用方案C。使用传统方法我们分别编写类A B C public class A

2021-10-14 14:46:35 61

原创 查询数据库表空间

SELECTTABLE_SCHEMA,CONCAT(TRUNCATE(SUM(data_free)/1024/1024,2),'MB') AS data_free,CONCAT(TRUNCATE(SUM(index_length)/1024/1024,2),'MB') AS index_sizeFROMinformation_schema.tablesWHERETABLE_SCHEMA = '数据库名';

2020-09-27 16:08:51 187

原创 读取sm国密算法公私钥

1生成国密SM2公私钥国密公钥格式:公钥为64位,前后各32位,对应椭圆算法中BigInteger X 和 BigInteger X ,私钥为32位,对应算法中的BigInteger d。公私钥生成算法,网上有多种,这里采用最简单一种,使用支付宝开放平台工具,直接生成工具地址https://docs.open.alipay.com/291/105972/2.java读取公钥...

2020-01-13 16:16:49 8816 6

原创 利用openssl生在国密公私钥

openssl 1.1.1版本目前已支持国密算法,本篇文章介绍如何使用openssl生成国密公么钥文件。安装gcc本案例以CentOS为基础,由于openssl安装使用gcc进行编译,所以首先需要安装gcc。安装gcc分两种,如果主机可以联网,则可以执行以下命令,可以自动进行安装:yum install gcc如果主机不支持联网,则需要手动安装gcc,安装教程请自行面度...

2020-01-02 10:51:18 1982 2

原创 Maven多模块开发

在日常项目开发过程中,总会遇到多模块协作开发的情况。在多模块开发过程中,会提取出公共代码作为common模块。对于common模块,在开发编译过程使用如下1.使用eclipses,导入公共模块和当前开发模块2.点击右键,使用maven install,将common模块导到的本地maven仓库3.在当前开发模块pom文件,引用common模块包4.编译当前模块,就会将com...

2018-10-08 16:00:54 430

原创 查看执行计划

db2 expln -d 数据库 -p bnd文件名 -c QA65 -o 目标文件名

2017-01-12 10:54:40 177

原创 Assume started (pipe). 一般原因

CMDTUX_CAT:819: INFO: Process id=675936 Assume started (pipe).两个环境xlC的版本是否一致缺少程序需要的动态库两个环境的Oracle的版本是否一致

2016-04-14 14:42:20 1626

原创 db2 runstates

1. db2 runstats on table [模式名].[表名] with distribution and detailed indexes all2.重启绑定bnd文件3.重启相关应用

2016-02-05 14:07:12 2262

原创 大括号的作用

大括号{},个人理解是将变量限制在局部范围之内。举个例子int i = 0;int i = 1;编译会报错;int i = 0;{int i =1;}编译通过,但后面这个变量i作用范转只限于大括号内。mark一下,在这上面栽过跟头。

2016-01-06 08:59:19 1760

原创 db2 连接 ERRORCODE=-4499, SQLSTATE=08001,解决办法

1.更新服务名db2 update database manager configuration using svcename $SVCNAME服务名可在 cat /etc/services |grep $USER 查看2.设置通讯方式db2set b2comm=tcpip-----------------------

2015-12-09 13:59:05 22466

原创 db2 外置设备建立数据库步骤

db2set db2comm=tcpipdb2set db2codepage=1386db2set DB2_COLLECT_TS_REC_INFO=OFFdb2 terminate db2 create db $DBM_NAME using codeset gbk territory CN collate using identity db2 connect to $D

2015-12-08 11:09:35 458

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除