- 博客(148)
- 资源 (2)
- 收藏
- 关注

原创 npm打包异常
“E:\Program Files\JetBrains\WebStorm 2018.1.4\bin\runnerw.exe” G:\node\nodejs\node.exe G:\node\nodejs\node_modules\npm\bin\npm-cli.js run dev –scripts-prepend-node-path=auto hrvue@1.0.0 dev G:\fro...
2018-06-14 16:06:40
62053
22
原创 kafka SASL认证失败原因(failed authentication due to: Authentication failed: Invalid username or password)
最近在Linux系统搭建kafka的过程中,为了安全性,使用了SASL的认证模式,遇到如下报错? ERROR [KafkaServer id=0] Connection to node 0 (hh.com/ip:9092) failed authentication due to: Authentication failed: Invalid username or password (org.apache.kafka.clients.NetworkClient)[2021-7-14 16:52:]
2021-08-14 17:45:15
26791
2
原创 靶场DVWA安装
安装完成wamp后,可以下载DVWA: 链接:https://pan.baidu.com/s/1_jnad_AS6VTBRbhcrcpP7Q提取码:r8bo 安装dvwa:解压后放在apache的www目录下: 创建数据库DVWA,在phpadmin里: 修改配置文件链接数据库的密码: 如果不是默认端口号:即3306 那么要修改如下链接数据库的代码,加上端口号: 端口号如果变了:如下配置文件的默认端口号也要修改。 然后访问:http://localhost/DVWA/s..
2021-02-14 14:33:48
528
1
原创 wamp 安装 windows10
下载 wamp, 地址 : 链接:https://pan.baidu.com/s/1tn3NkpnX1hUdKigkTDfHNg 提取码:y18i win10 需要安装: Microsoft visual c++ 2012 去Windows官网下载即可。 安装wamp: 安装成功后,可以起到所有服务: win10系统安装wampserver提示丢失MSVCR100.dll如何解决? 安装 Microsoft visual c++ 2012 ,重新安装即可。 修改数据库密码: 在...
2021-02-14 14:15:47
501
原创 linux 一台主机搭建elasticsearch集群及kibana
环境:linux7 elasticsearch7.10.1 kibana 7.10.1 下载elk: https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.10.1-linux-x86_64.tar.gz https://artifacts.elastic.co/downloads/kibana/kibana-7.10.1-linux-x86_64.tar.gz https://artifacts.elastic.c.
2020-12-19 15:42:20
407
1
原创 初识flink之自定义source
由于想要获取kafka 的key,进行处理,故不能使用FlinkKafkaConsumer 来进行获取kafka数据进行消费。 自定义source采用RichSourceFunction模式,代码如下: package xxx;import org.apache.flink.configuration.Configuration;import org.apache.flink.streaming.api.datastream.DataStreamSource;import org.apac
2020-10-21 16:08:08
483
原创 Caused by: java.io.NotSerializableException: org.apache.kafka.common.metrics.MetricConfig
flink 自定义数据源的开发过程中遇到这样一个错误。 错误原因:在于KafkaConsumer的初始化放在了定义处。 解决: 应该放在open方法内初始化。 DataStreamSource<String> dataStreamSource = env.addSource(new KafkaSourceFunction()); //获取数据 kafka消费数据获取 DataStreamSource<String> data = env.
2020-10-21 15:50:32
1556
1
原创 kafka系列之kafka linux 下的安装部署测试
安装准备工作:kafka需要jdk 和zookeeper。 下载安装jdk1.8 这个参考如下博文: https://blog.youkuaiyun.com/m0_37948170/article/details/108123864 下载安装zookeeper和kafka: 可以参考:https://www.w3cschool.cn/apache_kafka/apache_kafka_installation_steps.html: 本次安装为zookeeper 3.6.1 :https://archive.
2020-09-29 10:27:28
215
原创 初识Flink之Windows下Flink流处理(Streaming)案例开发
本次示例在Windows系统下,使用idea2019.3进行开发,jdk版本1.8,flink版本1.6.1.新建一个maven项目,没有flink-quickstart-java模板,可以选择添加:Add Archetype 填写如下内容: 填写项目对应的信息。 创建StreamingJob内容如下: public static void main(String[] args) throws Exception { //获取需要的端口号分析:...
2020-09-27 14:48:57
669
原创 allowMultiQueries 设置为true不生效问题
因为之前项目在啊做分页查询时用到allowMultiQueries,在一个select标签下一次执行两次查询,一次查数据,一次查总数,避免了多次查询操作 这次在设置了allowMultiQueries=true 的情况下,始终得不到两个查询的结果,每次只有一个查询的结果。 研究了很久,最后发现是因为版本问题。而且测试方法不正确。 使用mysql版本5.7,mysql-connector-java版本原来是5.1.6 后来改为5.1.45才可以。<dependency> <g
2020-09-08 16:47:01
10003
原创 maven找不到本地仓库jar包
今天在开发过程中遇到一个问题,本地安装的jar包,始终无法引用成功。 安装本地jar包:由于kafka不支持jdk1.5版本,个人在原有jar包的基础上做了裁剪改变,故打成jar包提供使用。 mvn install:install-file -DgroupId=com.kafka.cient -DartifactId=kafkaClienJdk15 -Dversion=1.0.0 -Dpackaging=jar -Dfile=KafkaClitJdk15.jar 由于项目使用maven开.
2020-08-31 20:09:46
1794
原创 jdk安装在Linux下
@[TOC] jdk 安装Linuxjdk在Linux的安装1.官网下载对应的版本:https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html2、上传到服务器 比如上传到目录 /usr/local/java解压 在java目录下: tar -zxvf jdk-8u181-linux-x64.tar.gz -C /usr/local/java设置环境变量: vim /etc/profileexpor
2020-08-20 14:58:57
161
原创 WEB CTF入门题解析
WEB CTF入门学习入门题1 view_sourceX老师让小宁同学查看一个网页的源代码,但小宁同学发现鼠标右键好像不管用了。 答案:cyberpeace{ffbb0c3dcdb78ed0674f699dc967ce67} 解析:打开网址http://220.249.52.133:31520/,F12调试模式,查看源码,即可发现flag: cyberpeace{ffbb0c3dcdb78ed0674f699dc967ce67} 入门题2 get_post 题目描述:X老师告诉小宁同学HTTP
2020-07-30 19:56:13
8126
1
原创 CTF MISC 杂项入门题解析
CTF入门学习入门题1:Most flags are in the form flag{xxx}, for example:flag{th1s_!s_a_d4m0_4la9} 答案:flag{th1s_!s_a_d4m0_4la9} 解析: 考验对flag的认知,flag夺旗。这题说明之后的答题格式都是flag{} 入门题2:菜狗截获了一份报文如下: c8e9aca0c6f2e5f3e8c4efe7a1a0d4e8e5a0e6ece1e7a0e9f3baa0e8eafae3f9e4eafa...
2020-07-20 09:50:38
11879
1
原创 彻底搞懂base64加解密原理和隐写技术
base64编码和解码是一个常用的方式,可以避免明文传输或者存储,也可以结合加解密技术进行使用。base64 编码的定义:base64编码表 package test;import sun.misc.BASE64Decoder;import sun.misc.BASE64Encoder;import java.io.*;import java.util.Base64;import java.util.Base64.Decoder;import java.util.HashM..
2020-07-17 15:54:23
2048
原创 一文彻底搞懂分布式事务
在分布式系统中,由于业务的划分导致了原本单机系统本地完成的事务被分割在了不同的微服务中,这也带来了分布式情况下事务如何解决?如何保证不同微服务之间的事务保持原子性?一致性?隔离性?持久性 分布式事务场景介绍? 下订单,订单支付完成后 增加用户积分?下单扣除用户账户上的预充值金额? 2pc: 这是一个简单的两阶段提交协议的分布式事务,通过一个事务协调器,在prepare 阶段询问所有参与者是否...
2020-03-27 16:09:56
231
原创 EXPLAIN 你不知道的那些事
EXPLAIN 用来查看sql的执行计划,其中每个字段的具体含义什么?有哪些值?可以如何帮助我们进行sql优化呢? 先来看一个示例:name 上建立了索引。 EXPLAIN select name from t_user A where name='rr'; 先来看下官方的文档解释:5地址https://dev.mysql.com/doc/refman/5.7/en/e...
2020-03-26 18:07:50
363
原创 如何高效去除数组里重复数字,看完你就明白了
题目描述: 给定一个整形数组,例如:21,23,25,15,15,23,98,5,21 去除重复项之后保留的数组为25,98,5. java语言解法: public class ArrayViewUtils { /** * @desc 删除数组里重复的数字,只保留不重复的数字。 * 时间复杂度分析为O(n) * @param arr 数组 ...
2020-03-25 17:28:12
3266
1
原创 mybatis 源码分析之执行sql
mabatis 如何解析mapper.xml文件里的if等标签,生成执行语句?设置参数? 下面通过跟踪源码我们来查看下具体是如何执行。 这里我们可以看到我们的mapper接口是通过MapperProxy 生成的代理对象进行调用的。即诸如的是一个动态代理对象。 public class MapperProxy<T> implements InvocationHandle...
2020-03-20 16:49:51
207
原创 jdk1.8源码分析之ConcurrentHashMap分析
ConcurrentHashMap 是java提供的一个线程安全的键值对集合,其采用分段锁的模式提高了其并发度。public class ConcurrentHashMap<K,V> extends AbstractMap<K,V> implements ConcurrentMap<K,V>, Serializable { p...
2020-03-18 18:45:25
163
原创 jdk1.8源码分析之HashMap
HashMap 键值对集合是我们在程序开发中经常使用到的一种集合,在各种框架中间件中更是使用广泛。 首先HashMap 实现了Map接口,是一个非线程安全的键值对集合。由于其高效的存取速度而使用广泛。如果没有Hash冲突那么其存取时间复杂度为O(1),在jdk1.8 中Hash冲突的解决方案是链表法,如果链表长度大于8且集合长度超过64 则采用红黑树存储。 那么我们就从源代码来看一看是如何实现...
2020-03-18 10:47:55
120
原创 mybatis 源码分析之 解析mapper.xml文件
mybatis 是如何解析我们定义的mapper.xml文件?解析后如何存储?存在哪里? 想要解析必然先找到mapper.xml文件,mapperLocations 就是通过读取我们的配置获取到的xml Resource数组。 private Resource[] mapperLocations;mybatis.mapper-locations=classpath:/mapper/*...
2020-03-17 18:25:37
1541
2
原创 MyBatisSystemException: nested exception is org.apache.ibatis.binding.BindingException
mybatis批量插入异常:org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.binding.BindingException: Parameter 'list2' not found. Available parameters are [collection, list] 异常的原...
2020-03-16 18:29:40
869
原创 mysql 5.7 密码过期修改
通过命令行修改密码:mysqladmin -uadmin -p password 通过sql语句修改: update mysql.user set authentication_string=password('123qwe') where user='root' and Host = 'localhost'; 创建用户,授予权限: createuse...
2020-03-05 15:31:28
336
原创 java 错题集之java基础测试
以下错题来源于阿里云java基础测试。单选 3.下面哪个不是Java内建的Annotation?A. @OverrideB. @DeprecatedC. @SuppressWarningD. @FunctionalInterface// 该题地方答案是C,正确的忽略警告的注解是@SuppressWarnings// 考察基础:对于java常见的基本注解的认识。// A ...
2020-03-03 15:25:38
727
原创 常用的网络协议简介
DNS: 域名解析协议,负责域名到IP地址的转换,由于IP地址记忆起来比较容易混,所以通常我们都是用域名直接访问,比如www.baidu.com.这就是域名,这样记起来就很简单。 DHCP(Dynamic Host Configuration Protocol)动态主机配置协议,此协议主要负责在主机接入网络时配置主机上网的ip地址,DNS服务器,网关地址等。 ARP(Address Resol...
2020-02-29 16:22:18
183
原创 jdk1.8源码分析之AbstractQueuedLongSynchronizer
AbstractQueuedLongSynchronizer 即AQS。 通过一个FIFO的双向队列实现的一个同步器。通过源码了解AQS提供的方法,可以进一步加深对锁实现的理解。AQS是可重入锁,可重入读写锁的一个基础支撑,提供了一系列的方法。 //* <pre>* +------+ prev +-----+ +-----+* head | ...
2019-12-31 11:04:09
561
原创 jdk 锁 简介
java中有哪些锁? 乐观锁/悲观锁。 乐观锁:在java并发包下atomic 下的实现类都是基于cas的乐观锁。CAS: 比较并交换,比较当前值和最新的值是否相等,相等则赋值。比如AtomicInteger: 在进行加1操作时,先比较当前对象上value的最新值和与原来的值是否相等,相当说明在取value值和要给value赋值过程没有变化,是一个原子操作。有变化则一直循环等待。value是使...
2019-12-27 10:18:15
377
原创 JDK 源码分析之ReentrantLock
ReentrantLock 可重入锁,实现Lock 接口。使用同步器实现加锁解锁,锁等待。加锁过程如下: 代码解析:public class ReentrantLock implements Lock, java.io.Serializable { private static final long serialVersionUID = 7373984872572414699L;...
2019-12-26 11:13:42
112
原创 高性能mysql读书笔记之ACID之我见
说道数据库acid必然是常见的问题,A原子性,C 一致性 I 隔离性 D 永久性。 A 原子性: 原子物理上解释就是不可分割的,当然严格上原子是可分割的因为还有原子核,电子,质子。当然用在数据库事务上这里指的就是事务的不可分割性。一个事务里无论做了多少事情,这些事情中不会出现有的成功有的失败。这就是说要不全部成功,要不全部失败。就像是一根绳上的蚂蚱,要死都死,要活都活。 C:一致性。一致...
2019-11-21 21:50:36
131
原创 idea 调试测试服务器上的应用
在idea 里添加配置:host 填写你的远程主机Ip,端口号为远程监听端口号,不要和远程主机的已使用端口重复。 然后打开远程主机,在其tomcat 的catalina.sh 里添加 CATALINA_OPTS=" -Xdebug -Xrunjdwp:transport=dt_socket,address=5005,suspend=n,serve...
2019-08-17 16:31:07
182
原创 vue 里的属性动态绑定
需求描述:根据后台返回数据动态构建table,每个table都是单选,互不干扰。 实现方式概述:为每个单选框属性根据数组动态绑定属性。<div v-for="(item,i) in sheet"> <div style="margin-top: 20px;margin-left: 10px;background: #6f7180" > <h5>结果{{i...
2019-06-23 11:24:26
5952
原创 使用mapstruct 进行不同类的实体转换
在pom文件添加 <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <org.mapstruct.version>1.3.0.Final</org.mapstruct.version&...
2019-06-21 15:47:41
1481
原创 mysql 里的datetime 和timestamp
mysql 版本5.7.10希望时间精确保存到毫秒级? 改动方案:长度改为3,这里的长度代表精确到毫秒的位数。 设定默认值:CURRENT_TIMESTAMP(3) 位数与设置长度一致。 更改后效果: 两者都可以存储到毫秒级别,timestamp 存储的是UTC 时间,查询时根据当前系统时区自动转化。datetime 则是输入的时间不变化...
2019-06-13 17:21:21
615
原创 记一次索引过长的问题
问题描述:使用esjob 的数据库自动记录job运行情况,表和记录都有esJob 自动创建和插入数据。在测试和本地环境均没有问题:生产爆出如下异常:com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Specified key was too long; max key length is 767 bytes解决: 异常信息...
2019-06-06 11:48:20
1030
原创 线程的安全级别
java 线程的定义:操作系统上拥有自己工作内存,共享同一个进程资源的CPU执行的基本单位。一个线程拥有自己的内存,执行一系列的指令去完成相应的操作,一个进程拥有多个线程。 线程的出现最大程度上利用cpu的计算能力,使得进程的资源分配和调度相互分开,避免了Io等待等耗时操作时,CPU依然可以继续执行其他的操作。 不可变:一个变量或对象时不可变的,那么变量或对象就是线程安全的。不可变意味着多线...
2019-05-19 16:53:18
590
原创 DateTimeFormatter 与SimpleDateFormat 的区别
SimpleDateFormat 是线程不安全的类,一般不要定义为static变量,如果定义为static,必须加锁,或者使用DateUtils工具类。这是阿里java开发规范提到 的强制要求。为何如此呢? SimpleDateFormat 是非线程安全类,在使用过程中可能会造成安全问题。多线程调用parse方法剖出的异常: DateTimeFormatter 显示说...
2019-05-19 16:06:55
5530
原创 tomcat 一闪而过调试
启动一闪而过,导致看不到具体错误。 在startup.bat 最后添加PAUSE。如果没有作用就去查看log 日志,这时一般会有日志输出。
2019-04-20 17:45:47
131
原创 tomcat指定启动时的jdk版本
windows1、本文环境是Tomcat8.5,jdk1.82、找到bin下的setclasspath.bat文件;添加如下代码set "JAVA_HOME=D:\Java\jdk1.8.0_92"set "JRE_HOME=D:\Java\jdk1.8.0_92\jre\"上面的意思是设定JAVA_HOME和JRE_HOME的路径;linux在bin下找到catal...
2019-04-20 17:23:46
4037
原创 tomcat 是如何处理一个请求的呢
一、Tomcat的整体架构 一个Tomcat只有一个server,server服务器有多个service。 service 由多个connector 和一个container 组成。 connector 是请求接收器,负责接收请求和把socket转化为request及response转化。二、connector是如何处理请求的? 不同协议的请求有不同的ProtocolHand...
2019-04-20 17:12:34
519
setup_CN_2052_10.8.0.6834_Professional_KVP_PDF_tp.exe
2020-07-17
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人