- 博客(107)
- 资源 (4)
- 收藏
- 关注
原创 spring cloud stream操作kafka和redis,以及kafka与redis队列性能比较(未完)
上次用redis队列做了性能测试,不过redis毕竟不是专门用来做队列的,这次用kafka试试。这次我用spring cloud stream来操作kafka。Spring Cloud Stream是构建消息驱动的微服务应用程序的框架。Spring Cloud Stream基于Spring Boot构建独立的生产级Spring应用程序,并使用Spring Integration为消息代理提供连接。...
2021-05-26 15:18:00
837
原创 electron+antd进行桌面开发并打包教程
electron+antd进行桌面开发教程1、初始化工程目录并安装electron,(如果安装巨慢可换成淘宝源cnpm)npx create-react-app electron-testcd electron-testnpm install electron electron-builder cross-env --save-dev2、在src目录下添加main.jsconst {...
2019-12-10 18:24:27
1205
原创 react+babel+webpack热编译+antd+router开发教程
react+babel+webpack热编译+antd+router开发教程1、初始化工程目录mkdir demo && cd demonpm init --yes2、安装依赖(此过程比较长,建议更换国内源)npm i -D webpack webpack-cli @babel/core babel-loader @babel/preset-env @babel/pre...
2019-09-25 13:17:44
513
原创 mysql行转列
在固定列的情况下,可以group by后把每个列要显示的数据通过if指定写到sql里:...SUM(IF(条件,输出的列,默认值)),SUM(IF(条件,输出的列,默认值))...group by xxx...在动态列的情况,可以使用预编译:1,先用group_concat将动态行转出一行赋值给变量2,然后用多个变量组装成最后要执行的sql,再执行SET @SQL...
2019-09-12 13:35:05
312
原创 java逆序单向链表实现
假设有一个单向链表,若要将其逆序ABCDNULL第一次循环ANULLBCD第二次循环ANULLBCD第三次循环ANULLBCD第四次循环ANULLBCDjava代码如下:public class ReverseChain { private static Node chain; static{ Node last=null; f...
2019-04-28 10:48:14
518
原创 Field xx in xxxx required a bean of type xxxx that could not be found解决方案
原因是因为两个不同class的bean 名字重复了,初始化报错解决方案,将其中一个bean指定下别名:
2019-04-26 13:35:44
7346
原创 mysql各种锁解释
mysql锁有行锁,表锁,间隙锁,乐观锁,下面我用实际操作来解释下这几种锁的区别首先建一个innodb的表,并初始化CREATE TABLE `user` ( `id` INT(11) NOT NULL AUTO_INCREMENT, `name` VARCHAR(50) NULL DEFAULT '0', `status` VARCHAR(50) NULL DEFAULT '0'...
2019-03-19 14:27:13
570
原创 mysql删除重复数据只保留一条
delete from test where id not IN(SELECT tmp.id FROM (SELECT id FROM testGROUP BY NAME) tmp)
2019-03-13 16:18:05
235
原创 记一次mysql间隙锁照成死锁
最近项目中发生死锁问题,发现是mysql为保证可重读而使用间隙锁导致的。场景是在在一个事务里面查询了多条记录(包括记录A),而mysql数据库的隔离机制是可重复读,为了保证在这个事务里这些数据不被其他连接修改。就会吧这些数据加上间隙锁(范围锁)。这时其他线程在另一个事务里查询了数据B,(相当于给数据B加间隙锁),然后想要修改数据A,照成两个事务互相等待对方释放锁,就照成了死锁。流程图如下:程...
2019-03-07 09:41:14
645
原创 tcpdump的使用说明
1,tcpdump未指定网卡时默认监听第一个网卡2,可以通过-i指定网卡,如:tcpdump -i eth0(如果不想限定网卡,可以使用tcpdump -i any)3, -w参数可以将网络信息写入文件,如:tcpdump -i eth0 -w net.txt4, host参数可以指定主机tcpdump -i eth0 host 127.0.0.1tcpdump -i ...
2019-03-06 11:09:56
343
原创 rock64搭建superset(适用于其他linux服务器)
1,确保有python3和pip2,安装依赖apt updateapt install -y build-essential libssl-dev libffi-dev libsasl2-dev libldap2-dev#这块会比较耗时pip install numpypip install sasl3,安装superset,执行完后就会默认8088端口启动# In...
2019-03-04 16:24:31
1376
1
原创 树莓派编译python3
1,安装python3.6 和pipsudo apt-get updatesudo apt-get install -y build-essential tk-dev libncurses5-dev libncursesw5-dev libreadline6-dev libdb5.3-dev libgdbm-dev libsqlite3-dev libssl-dev libbz2-dev ...
2019-02-27 11:42:12
756
2
原创 rock64安装docker
1,首先安装系统https://www.armbian.com/rock64/#kernels-archive我安装的是Armbian Stretch 2,登陆系统,root用户默认密码12343,执行一下命令,安装docker-cesudo apt-get install -y \ apt-transport-https \ ca-certifi...
2019-02-26 00:28:09
2036
原创 收集mysql慢查询日志进elk
1,首先mysql开启慢查询日志vim /etc/mysql/mysql.conf.d/mysqld.cnf#添加配置,这块目录可以自定义slow_query_log = ONslow_query_log_file = /var/lib/mysql/slow_query.loglong_query_time = 2#然后重启mysql服务service mysqld resta...
2019-02-25 13:59:37
859
原创 mysql 设置binlog的保存时间
测试环境磁盘老爆,发现是大量mysql-bin(binlog)文件照成的,有100多个G。修改配置改成只保留7天的binlog文件vim /etc/mysql/mysql.conf.d/mysql.cnf#添加配置 保留7天expire_logs_days=7 ...
2019-02-22 17:47:25
6087
原创 修改idea的窗口布局
idea默认的窗口模式是如下:可以通过File->Appearance->Window Options->勾选 Widescreen tool window layout->OK 变成如下界面:
2019-02-22 15:03:24
9312
8
原创 mysql随机取数据优化
mysql表中随机取三条数据。本来是打算用:select * from table order by rand() limit 3结果40W的表查询要2.6秒,速度贼慢。每条记录都调用了rand()行数来排序后来发现mysql官方手册也不推荐这种做法,找到下面这种方法:SELECT * FROM table AS t1 JOIN (SELECT ROUND(RAND() ...
2019-02-20 18:00:19
549
原创 jmeter录制脚本
1,添加一个线程组2,右击线程组,添加一个录制控制器3,右击测试计划,添加一个HTTP代理服务器4,将HTTP代理服务器配置里目标控制器选为刚才创建的录制控制器。5,点击启动,然后会弹出一个证书的提示,这个是录制HTTPS服务需要的,忽略它6, 以火狐为例,进入设置7,添加Jmeter代理 8,这时候可以在火狐浏览器上开始你要录制的操作,...
2019-02-20 10:51:52
214
原创 Jmeter执行java脚本
1,先添加一个线程组2,右击线程组,添加一个BeanShell 取样器3,点击BeanShell取样器,输入JAVA代码import java.time.LocalDate;String todayStr=LocalDate.now().toString();vars.put("today",todayStr);log.info("today is {}",t...
2019-02-19 17:59:54
2109
转载 SoapUI Pro破解方法
https://blog.youkuaiyun.com/weiqing723/article/details/78865734
2019-02-14 10:54:08
1631
原创 soapui使用教程2-属性与脚本
1,新建一个空项目2,新建一个Test Suite3,SoupUI支持自定义属性4,这里我建了一个filePath属性和一个动态属性randomNum,value里面写的表达式${=(int)(Math.random()*1000)}可以生成1000以内随机数5,接下来新建一个TestCase6,SoupUI支持groovy,写一个输出时间的脚本脚本...
2019-01-24 11:43:24
927
原创 hibernate flush问题
当在同一个事务使用sql(比如jdbctemplate或jpa的nativequery)时,需要把之前jpa或者em的操作flush出去,否则sql就会先执行,再执行hql。
2019-01-22 10:31:54
568
原创 soapui使用教程1-基本使用和录制
1,创建个rest项目,File->New Project:2,然后API Definition选择REST,点OK3.,资源根属性,选择如何处理资源绝路径,默认是绝对路径;还可以选择项目路径或工作区路径4, Project Password属性来加密项目内容,不过密码如果忘记将无法找回5,还可以通过内置浏览器生成testcase,File->New ...
2019-01-21 14:38:07
2007
原创 记一次大文件导入优化
最近线上文件导入极慢,每秒才导入两行。来个25W的文件就要导半天后来发现时间消耗在每条记录的校验sql上了。每条记录要发两条sql校验耗时400毫秒,25w条数据就要27小时!这种情况在测试环境没有发生过,测试环境查询sql只要8毫秒,估计生产数据库是远程的,网络传输有延时。考虑到文件日后还有增大的可能性。遂改成:1,将导入文件不发sql校验正确性,直接落库在一张临时表里2...
2019-01-09 15:33:07
556
原创 jpa+hibernate5中lazy无效的解决办法(JpaRepository的save方法源码解析)
今天发现fetch = FetchType.LAZY这个设置无效,在查询和新增都会查一遍。@ManyToOne(optional = false, fetch = FetchType.LAZY)@JoinColumn(name = "loan_req_no", referencedColumnName = "loanReqNo", insertable = false, updatab...
2019-01-03 15:18:51
2209
原创 优雅处理lambda内异常方法
jdk8函数式编程用的很爽但是遇到需要处理异常就很尴尬,需要这么写:List<Integer> integers = Arrays.asList(3, 9, 7, 0, 10, 20);integers.forEach(i -> { try { System.out.println(50 / i); } catch (Arithmeti...
2018-12-25 15:30:12
1029
1
原创 调用toString方法会StackOverflowError的原因和解决方案
今天遇到一个问题,调用一个实体类的toString方法直接就StackOverflowError(栈溢出)了。java.lang.StackOverflowError at sun.reflect.GeneratedMethodAccessor223.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.in...
2018-12-21 15:38:09
4225
原创 h2数据库被锁定解决方案
最近发生过H2数据库被锁定,项目启动不来的问题。排查后发现是H2数据库当被打开时,都会创建一个锁定文件,以指示数据库正在使用的其他进程。如果关闭数据库,或者打开数据库的进程终止,则会删除此锁定文件。而当java程序不是优雅关闭,直接kill掉java进程时,这个锁定文件没被删掉,下次启动项目就会报数据库被锁定。查官网也提供了解决方案,改成socket锁定,不维护锁文件:Strin...
2018-12-19 16:09:44
5843
原创 关于java的map顺序的问题
java里面HashMap类的在put的时候会先hash下key算出数组的下标,hash的源码如下:static final int hash(Object key) { int h; return (key == null) ? 0 : (h = key.hashCode()) ^ (h >>> 16); }可以看是根据key的...
2018-12-19 15:24:41
1456
原创 网站漏洞扫描工具 IBM Security AppScan Standard使用
软件可以去官网下载,有30天免费使用:https://www.ibm.com/us-en/marketplace/appscan-standard不过官网下载还要注册挺繁琐的,如果想省点事国内百度搜一下也有资源。按照好后打开软件:create new scan -> regular scan -> full scan configuration登录管理配置:...
2018-12-19 11:43:10
3859
原创 @PathVariable报错Could not find acceptable representation解决方案
今天用@PathVariable出现了下面问题:Could not find acceptable representation。原因是url参数里参数是文件名,带了.符号。如下图:@ApiOperation(value = "下载", nickname = "download") @RequestMapping(name = "下载", value = "download/...
2018-12-17 11:06:02
794
原创 lombok的@Builder导致初始化字段无效解决办法
当用@Builder注解时,类里面的初始化字段就无效,比如下面类中的totalAmt和lineNum字段就会置为null。@Builderpublic class FileExport { private String charset; private String[] fields; private String amtField; private Big...
2018-12-07 09:19:44
5532
原创 org.apache.commons.beanutils.ConversionException: No value specified for 'BigDecimal'解决方案
在调用org.apache.commons.beanutils.BeanUtils.populate出现org.apache.commons.beanutils.ConversionException: No value specified for 'BigDecimal'apache有提供BigDecimalConver转换类,出现这个问题一般是值为null的情况解决方案:...
2018-12-05 09:31:39
7184
2
原创 Cannot find current proxy: Set 'exposeProxy' property on Advised to 'true' to make it available.解决
用 AopContext.currentProxy()函数没配置会照成这个问题可以通过注解:@EnableAspectJAutoProxy(proxyTargetClass = true, exposeProxy = true)或配置:<aop:aspectj-autoproxy proxy-target-class="true"expose-proxy="true"/>...
2018-12-04 16:13:11
21613
5
原创 使用hibernate审计和jpa实现历史记录表
1.首先在需要记录历史的Entity上加@Audited 对不需要审计的字段可以加@NotAudited2.配置文件中加上自定义审计历史表后缀spring.jpa.properties.org.hibernate.envers.audit_table_suffix=_history然后Entity的任何改动都会在history表记录了...
2018-11-30 16:33:38
1921
原创 EncryptionOperationNotPossibleException解决方案
今天换电脑了,以前正常的功能报异常:org.jasypt.exceptions.EncryptionOperationNotPossibleException at org.jasypt.encryption.pbe.StandardPBEByteEncryptor.decrypt(StandardPBEByteEncryptor.java:1051) at org.jasyp...
2018-11-28 19:15:20
19475
2
原创 docker部署elk日志中间件+filebeat采集
1,首先确认机器上有4G可用内存#然后输入命令查看机器上面mmap的值:sysctl vm.max_map_count#如果值小于655360#执行命令:sysctl -w vm.max_map_count=655360#然后设置修改文件vim /etc/sysctl.conf#加入:vm.max_map_count=655360启动elk:sud...
2018-11-28 11:21:26
1189
1
原创 JpaTransactionManager的初始化和获取事务
初始化JpaTransactionManager时调用栈:org.springframework.orm.jpa.JpaTransactionManager.<init>(JpaTransactionManager.java:118)org.springframework.boot.autoconfigure.orm.jpa.JpaBaseConfiguration.trans...
2018-11-26 13:56:50
7591
原创 java foreach内部实现
今天突然想看看foreach内部实现是怎样的,比如如下代码:for (EmailClientEntity emailClient : emailClientDao.findAll()) {//TODO something...}通过javap看看字节码指令: public void initAllEmailSession(); Code: 0: aload...
2018-11-23 11:28:52
790
pinpoint-agent
2018-09-26
word,excel,ppt完美转换PDF(解决各种疑难文档)
2018-04-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人