- 博客(173)
- 资源 (7)
- 收藏
- 关注
原创 Kafka Consumer auto.offset.reset 理解
kafka consumer 配置:auto.offset.reset
2022-12-26 17:07:02 2004 1
原创 Go gRPC 101
准备工作当搜索 Go gRPC 的时候肯定会搜到官网:https://grpc.io/docs/languages/go/quickstart/,内容如下:简单的一个 Go gRPC 的准备,耗死个人。第一步安装 Go 肯定大家都没问题。第二步安装 protoc,直接去这里https://github.com/protocolbuffers/protobuf/releases 下载吧,反正这个方法不用纠结啥。我下载的是 osx-aarch 版本:解压缩完之后呢,会发现有一个 bin 目
2022-05-27 10:02:44 283
原创 flatten-maven-plugin 的使用
引入 flatten-maven-pluginflatten-maven-plugin 插件的功能就不赘述了,网上也有很多文章描述这一块的内容。以一个 maven 多模块的项目为例,使用的时候直接在项目的父 pom 里加入如下的配置: <build> <plugins> <plugin> <groupId>org.codehaus.mojo</groupId>
2022-01-17 22:06:18 20458 4
原创 Docker 容器添加中文字体
系统里有一个需要在图片上画中文的功能,在测试环境是 ok 的,一到线上 Docker 容器环境中文就不显示了,查了一些资料说是缺少中文字体,那我们就来安装中文字体吧。1. 查看当前使用的系统语言:$ echo $LANGen_US.UTF-8en_US.UTF-8 是支持中文编码的,所以并不需要去安装中文编码的支持。2. 查看已经安装的中文字体$ fc-list :lang=zh 如果这一步提示命令不存在,说明没有安装字体软件,执行下面的命令进行安装: yum -y install fo
2020-10-01 00:07:41 16385 3
原创 Java 通过反射获取定义在方法参数上的注解
先来看一段 Spring MVC 经常用到的定义在方法参数上的注解:@RestController@RequestMapping("/param")public class ParamTestController { @PostMapping("/upload") public void upload(@RequestParam("userId") long userId, @RequestParam(value = "file", required = false) Multipar
2020-05-18 00:31:57 8230 5
原创 【二】实践中学习 awk
实践例子文件格式如下: o ne two threefourfivesixseveneightnine ten使用awk '{print "[",$0,"]"}' one.txt 查看,有的行还有空格:[ o ne ][ two ][ three ][ four ][ five ][ six ][ seven...
2020-04-06 10:13:36 429
转载 Spring学习 - 自动装配同一个接口的多个实现类
介绍在平时使用 Spring 的 DI 机制时,几乎都是在某个类中引用接口的单个实现。但是Spring 如何将多个实现类同时注入进List<Interface> 中呢。好吧,不说废话了,直接上代码吧。原来的引用方式public interface HelloService { void sayHello();}@Servicepublic class TestSe...
2020-04-05 23:04:11 2628
原创 Nginx 404 排查过程
某天突然访问自己的测试域名,然后 404 了,然后就像无头苍蝇一样,四处尝试,看 nginx 的配置,折腾一番,无果。最后在同事的帮助下,找到了一些端倪。虽然这几个步骤很简单,但却是整个解决问题的思路。1、看 nginx 请求的 access.log查看 nginx 配置的日志,确认请求已经到达了 nginx。nginx 日志配置指令:access_log /data/logs/nginx...
2020-03-13 19:48:51 16392 1
转载 Spring MVC 从拦截器或filter request中获取GET/POST请求的参数
可参考这篇文章获取 GET、POST Content-Type: application/json 中的 JSON 请求参数:spring boot拦截器中获取request post请求中的参数当 Content-Type 是 application/x-www-form-urlencoded,从 request.getParameter() 和 request.getInputs...
2020-03-04 23:34:13 8615 1
原创 SpringBoot 正则表达式排除包扫描
@ComponentScan(basePackages = {"com.jiaobuchong.order.service"}, excludeFilters = {@ComponentScan.Filter(type = FilterType.REGEX, pattern = "com.jiaobuchong.business\\..*"), ...
2020-03-02 10:24:43 3645 1
原创 gRPC 异常处理
最近第一次使用 gRPC 创建一个服务,在服务端我想将一个自定义异常直接抛出去,让客户端能看到。一开始,我这样尝试:// responseObserver.onError(new CustomException("custom exception")); throw new CustomException("one error occurs");可是得到了很尴尬...
2020-02-29 12:59:34 9081
转载 Java类型Type 之 ParameterizedType,GenericArrayType,TypeVariabl,WildcardType
Java类型中ParameterizedType,GenericArrayType,TypeVariabl,WildcardType详解和反射+泛型有关的接口类型java.lang.reflect.Type:java语言中所有类型的公共父接口java.lang.reflect.ParameterizedTypejava.lang.reflect.GenericArrayTypejava....
2020-02-22 13:52:08 1173 2
原创 Java如何获取泛型类型
Java 运行时如何获取泛型参数的类型从实现的接口获取泛型参数定义一个泛型父类:public interface SuperClass<P> { String process(P p);}实现类1:public class OneImpl implements SuperClass<House> { @Override public ...
2020-02-22 01:05:20 2748 2
原创 【六】Kafka集群搭建
创建 kafka 的数据目录:mkdir -p data/kafkascp -r data/ 192.168.56.102:`pwd`scp -r data/ 192.168.56.103:`pwd`
2020-02-19 09:12:43 275
原创 URI 源码分析
在进行 url 校验的时候,如下代码:import org.apache.commons.validator.routines.UrlValidator;import java.net.URI;import java.net.URISyntaxException;public class UrlUtils { public static void main(String[] ...
2019-10-26 15:48:42 557
原创 Java 正则前面的「(?i)」、「(?m)」 是什么?
Java Pattern 除了compile(), 还有一个重载方法:public static Pattern compile(String regex, int flags) flag 就是 Pattern 类中的常量:flag功能CASE_INSENSITIVE(?i)表示正则匹配的时候忽略大小写,US-ASCII 字符下进行。可以结合 UNICODE_CASE...
2019-08-24 11:49:43 4851
原创 Java正则表达式之分组和替换
正则表达式的分组不是很好懂,但却是很强大的文本处理工具。1 分组替换什么是分组,直接引用 Java Api 中 Pattern 中的描述: Capturing groups are numbered by counting their opening parentheses from left to right. In the expression ((A)(B(C))), f...
2019-08-24 08:36:17 34426 2
原创 【七】MySQL Master-Slaves 主从配置
1 准备参考前面的博文你应该安装好了 MySQL,并复制了一个新的虚拟机,主库地址: 192.168.56.101 主库地址: 192.168.56.1022 主库配置2.1 在 master 上创建同步账号grant replication slave on *.* to 'repl'@'192.168.56.101' identified by'your password';...
2019-08-17 11:42:02 405
原创 【三】Zookeep 学习 - CentOS 7 安装 Java 环境
去官网下载 Java 安装包:使用命令:scp jdk-8u211-linux-x64.tar.gz scp root@192.168.56.102:~/tar zxvf jdk-8u211-linux-x64.tar.gzmv jdk1.8.0_211/ /usr/local/cd /usr/local/jdk1.8.0_211/ 上传到虚拟机的 CentOS 里解压。...
2019-08-10 23:27:52 220
原创 【五】Zookeeper 学习 - Zookeeper 集群搭建
1. zoo.cfg 配置通过看前面的文章,相信大家已经搭建起来了三个虚拟机,在这三个虚拟机上,su zookeeper,切换到 zookeeper 账户,修改这三个虚拟机的 /usr/local/zookeeper-3.4.14/conf/zoo.cfg 文件,加入如下的配置:server.1=192.168.56.102:2888:3888server.2=192.168.56.10...
2019-07-07 13:53:40 194
原创 【四】Zookeeper 学习 -复制多个虚拟机
点击复制3. 4. 然后启动这个虚拟机cd /etc/sysconfig/network-scriptsvim ifcfg-enp0s8修改这个静态 IP:然后重启网络服务:service network restart然后就可以通过ssh root@192.168.56.104即可在宿主机器上登录。...
2019-07-07 13:17:59 192
原创 理解 GC 日志
设置 JVM 启动参数为:-Xms10m -Xmx10m -XX:+PrintGCDetails -Xloggc:/data/log/gc.log -XX:+PrintGCDateStamps -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/data/log执行代码片段:public class RuntimeConstantPoolOO...
2019-06-09 22:18:23 398
原创 IDEA 乱码文件解决
打开了一个别人的代码文件中文都是乱码的:我猜测这个代码应该是 gbk 编码的,通过在 IDEA 的:这里切换编码转换也无济于事。下面就是乱码解决的黑科技了,在 .idea 目录下有一个 encodings.xml 文件,将里面的 charset 改成 gbk 就好了。参考:两分钟解决IntelliJ IDEA中文乱码问题...
2019-05-12 11:40:31 1699 1
原创 OAuth 授权链接里的回调地址参数丢失
OAuth 的授权链接里有一个回调地址的参数:https://developers.e.qq.com/oauth/authorize?client_id=123456&redirect_uri=https://www.baidu.com?platform=jiaobuchong&name=jack&state=&scope=ADS_MANAGEMENT这个授权...
2019-04-16 23:07:48 4397
原创 Java 命令报错:找不到或无法加载主类
我使用的 Java 版本是:java version "1.8.0_191"代码目录结构:ClassPathDemo.java:package com.jiaobuchong;import java.util.HashSet;import java.util.Set;import org.apache.commons.lang3.StringUtils;public cla...
2019-04-06 10:22:50 6177
原创 【二】ZooKeeper 学习 - VirtualBox 配置虚拟网络
在 VirtualBox 安装完 CentOS 之后,还不能联网,1、在 VirtualBox 的 管理 | 主机网络管理器:点击应用。2、新建的操作系统配置3、启动虚拟操作系统,进入 CentOS 系统修改配置文件cd /etc/sysconfig/network-scriptsvi ifcfg-enp0s3将 ONBOOT 改成 yes。然后执行network se...
2019-04-05 10:06:15 387
原创 两个队列实现一个栈+两个栈实现一个队列(Java 实现)
两个队列实现一个栈现有两个队列 q1 和 q2,入栈则将元素加到 q1出栈的时候先判读 q1 是否为空,除了队列的最后一个元素,将其它元素添加到 q2,q1 的最后一个元素出队出栈的时候如果在 2 中判断 q1 为空,除了 q2 的最后一个元素,将 q2 中其它元素添加到 q1,然后 q2 中的最后一个元素出队完整 Java 代码:public class MyStack { ...
2019-03-17 20:29:25 1928
原创 轻松搞定螺旋矩阵面试题
1、leetCode 59Given a positive integer n, generate a square matrix filled with elements from 1 to n2 in spiral order.Example:Input: 3Output:[ [ 1, 2, 3 ], [ 8, 9, 4 ], [ 7, 6, 5 ]]参考:面试题-...
2019-03-09 22:25:43 346
原创 面试题:在整型数组中找出这样的数,它大于等于左侧的数、小于等于右侧的数
比如:{3, 1, 2, 4, 7, 10, 9, 8} 这样的数是 4,7;{1, 6, 9, 2, 1, 5, 15, 20}满足条件的数是 1,15,20。看代码吧:public class FindingValue { public static void main(String[] args) { /** * 思路:1. 这样的数只要小于或...
2019-01-24 23:21:13 925
原创 面试题:多线程按顺序输出
最近遇到一个题目:编写一个程序,开启 3 个线程,这三个线程的 ID 分别为 A、B、C,每个线程将自己的 ID 在屏幕上打印 10 遍,要求输出的结果必须按顺序显示。如:ABCABCABC……当时很懵逼,不知道咋解,看来还是对线程和锁的理解还不是很深刻。...
2019-01-19 18:13:49 5871 14
原创 轻松理解全排列算法的递归解法
笔试面试算法经典–全排列算法-递归&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;字典序实现(Java)全排列算法的全面解析
2018-12-30 09:38:26 11902 8
原创 插入排序
插入法排序(Insertion Sort)的基本思想:每次将一个待排序的记录,按其关键字大小插入到前面已经排好序的子数组中的适当位置,直到全部记录插入完成为止。跟打牌一样,手中的牌都是排好序的,抓了一张牌之后插入到手中排好序的区间里。如:8 2 4 9 3 6 这样一个待排序的序列经过插入法排序的处理后:第一轮排序后:2 8 4 9 3 6第二轮...
2018-12-10 22:33:35 192
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人