自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 正常运行两年多的程序突然不可用,出现Mongodb数据库操作失败的日志

一、问题现象:运行多年的应用突然读取数据出错,重启失败,报错如下图:二、解决过程:1、更改超时时间测试无效;2、查看数据库主机防火墙策略也没发现问题;3、关注到报错日志中关于数据库的类型通过查找资料发现,现在这台server是一个SECONDARY,mongo驱动不能向SECONDARY节点写入数据,而我的接口里面有写入操作,基本确定mongo发生了primary和secondary切换。登录阿里云mongodb库,确实现在是secondary在运行!切回来就程序恢复正常

2021-12-20 15:59:49 762

原创 Mongodb中查询某个字段不存在或者为null

查询集合c中y的值为null或者不存在db.c.find({y: null})查询集合c中y的值为null,(仅返回y的值为null的数据,不会返回不存在的)db.c.find({“y”: {$type : 10}})$type为10表示Null或者db.c.find({“y”: {“$in”: [null], “$exists”: true}})查询集合c中y的值不存在(不会返回y的值为null的数据)db.c.find({“y”: {$exists: false}..

2021-04-21 14:26:09 6558

原创 Windows下监控服务,若服务停止则启动它的脚本

服务器上服务由于内存不足导致应用服务挂掉,用个脚本监控该服务,若服务停止则启动它,作为临时解决方案。@echo offrem 定义循环间隔时间和监测的服务:set secs=20set srvname="MySQL57"echo.echo ========================================echo == 查询计算机服务的状态, ==echo == 每间隔%secs%秒种进行一次查询, ==echo == 如

2020-12-15 17:16:21 698

原创 SpringBoot项目中的api工程打包时报repackage failed: Unable to find main class

问题场景:Springboot项目中,spring cloud集成dubbo,存在一个api的工程,api工程install到本地时提示repackage failed: Unable to find main class。解决原因:api工程作为子模块依赖了父工程,父工程中用了springboot的打包插件,所以就继承过来了。解决方法:子模块install时注释掉父工程的springbot打包插件...

2020-12-14 16:52:50 597

原创 Docker容器中部署springboot应用

一、mysql拉取mysql镜像参考博客:1、胖虎儿的docker系列2、docker入门(利用docker部署web应用)3、linux查看端口占用

2020-12-10 15:06:21 424

原创 Spring Cloud Alibaba nacos作为配置中心踩坑记录

一、初步使用1、pom文件引入alibaba-nacos-config <!--nacos-config--> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>

2020-11-20 16:49:56 6772 3

原创 Ubuntu下Docker的入门使用

一、使用国内 daocloud 一键安装命令:curl -sSL https://get.daocloud.io/docker | sh二、检验安装是否成功:docker --version三、换镜像源sudo vim /etc/docker/daemon.json添加{ "registry-mirrors":["http://hub.daocloud.io"]}四、重启docker:systemctl restart docker五、测试:d

2020-11-13 11:05:06 104

原创 Springboot集合RabbitMQ运行过程中报错:Channel shutdown: channel error; protocol method解决方法

产生问题背景:在消息的消费处理逻辑中有手动确认消息的操作:问题分析:1、默认情况下 spring-boot-data-amqp 是自动ACK机制,就意味着 MQ 会在消息发送完毕后,自动帮我们去ACK,然后删除消息的信息。2、消息确认的类型:...

2020-11-13 10:42:42 6551

原创 Jenkins的下载安装及入门使用

一、下载Jenkins在官网下载war包(可根据自己情况下载对应的版本)二、启动Jenkinsjava -jar jenkins.war --httpPort=8081三、解锁Jenkins在浏览器中输入localhost:8081后,出现以下界面找对对应的密码输入即可,点击“继续”后等待一会,就会出现插件安装提示这里出现网络连不上的问题,直接先点右上角先叉掉。...

2020-10-27 16:21:24 118

原创 VMware 16虚拟机安装Ubuntu 20系统以及查看ip的过程并通过XShell连接

一、下载VMWare 16和Ubuntu 20镜像1、VMWare通过官网下载https://download3.vmware.com/software/wkst/file/VMware-Workstation-Full-16.0.0-16894299.x86_64.bundle2、Ubuntu的ISO文件国内用户可以从网易镜像站点上下载http://mirrors.163.com/ubuntu-releases/20.04.1/ubuntu-20.04.1-desktop-amd64.

2020-10-23 10:31:36 631

原创 IntelliJ IDEA 调试 Java 8 Stream

IntelliJ IDEA 其实早已支持 Java 8Stream调试,之前用的不多。今天以 IntelliJ IDEA 来演示下如何调试 Java 8 中的Stream链式调用。上一段Stream代码: String[] words = new String[]{"Hello", "World"}; List<String> collect1 = Arrays.stream(words) .map(e -> ...

2020-10-16 10:36:58 300

原创 将博客搬至CSDN

将博客搬至CSDN

2020-10-15 17:27:41 42

原创 IDEA创建包含多个Module的Project

1、单击file》new》project,弹出下面对话框(不要选择Create from archetype复选框);2、点击Next,输入GroupId和ArtifactId,这里是创建父工程,名为demoparent;3、删除src目录;4、创建一个Module

2020-09-15 17:27:54 401

原创 IDEA2020 Plugins连不上解决办法

在安装lombok插件时,plugins的Marketplace连不上,解决办法如下:HTTP Proxy地址除了用http://127.0.0.1:1080,也可以配置https://plugins.jetbrains.com/

2020-06-29 17:21:29 3739

原创 IDEA切换到JDK11

一、下载JDK11二、Project Structure设置这里一定要记得点击APPLY,我开始没点,测试var时总是提示出错。三、Java Compiler版本更改

2020-06-17 16:21:57 5954

原创 redis常见数据结构及应用场景

一、下载windows版本:https://github.com/tporadowski/redis/releases二、redis常见数据类型1、Stringa、常见命令:设置键set key value [ex seconds] [px milliseconds] [nx|xx]ex seconds:为键设置秒级过期时间。 px milliseconds:为键设置毫秒级过期时间。 nx:键必须不存在,才可以设置成功,用于添加。 xx:与nx相反,键必须存在,才可以设置

2020-06-16 17:22:30 368

原创 Springboot整合Mybatis及注意事项

Mybatis文件的生成参考上篇mybatis-generator的介绍https://blog.csdn.net/d20062056/article/details/106750447一、引入依赖 <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter&

2020-06-14 22:02:14 240

原创 IDEA中用mybatis-generate生成Mybatis文件

1、pom文件中<build><plugins>中添加​ <plugin> <!--Mybatis-generator插件,用于自动生成Mapper和POJO--> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-m

2020-06-14 19:43:51 1448

原创 Springboot整合Servlet Filter和Interceptor

一、整合Filter1、写一个自己的Filter@Componentpublic class MyFilter implements Filter { @Override public void init(FilterConfig filterConfig) throws ServletException { System.out.println("initFilter"); } @Override public void doFilte

2020-06-14 16:21:15 148

原创 SpringBoot @Value获取application.properties中的配置无效的问题

无效的原因主要是要注意@Value使用的注意事项:1、不能作用于静态变量(static); 2、不能作用于常量(final); 3、不能在非注册的类中使用(需使用@Componet、@Configuration等); 4、使用有这个属性的类时,只能通过@Autowired的方式,用new的方式是不会自动注入这些配置的。这些注意事项也是由它的原理决定的:springboot启动过程中,有两个比较重要的过程,如下:1 、扫描,解析容器中的bean注册到beanFactory上去,就像是信息登

2020-06-14 13:56:04 1944 1

原创 Springboot开发相关基础

一、Restful接口风格简单的讲就是资源和行为分离,URL确定操作的资源,requestMethod确定对资源的行为。代码实现: @GetMapping("{id}") public User getById(@PathVariable("id") Long id) { System.out.println("id" + id); System.out.println("查询操作"); return new User(id

2020-06-14 12:20:00 112

原创 IDEA热部署配置三部曲

1、pom文件添加spring-boot-devtools <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <scope>runtime</scope>

2020-06-14 11:19:20 154

原创 IDEA使用Spring initializr 创建SpringBoot项目超时问题解决办法

问题:经常通过IDEA的spring initializr创建springboot项目会报超时解决方案:创建时用阿里的service url:https://start.aliyun.com

2020-06-14 10:46:53 3324 4

原创 IDEA新建项目Maven默认配置修改

1、File >> New Project Settings >> Preference for New Projects2、修改默认配置3、点击Apply

2020-06-14 10:34:21 716

原创 IDEA同一个应用启动多个实例的方法

在搭建spring cloud alibaba微服务环境时,为了验证负载均衡,需将应用启动多个实例。直接在Application上多次启动的话,会提示不能并行。正确姿势:1、Edit Configurations2、Copy Configuration3、修改 VM options 并保存(指定端口号) ...

2020-06-12 16:22:55 657

原创 Spring Cloud Alibaba Sentinel集成Feign

1、pom文件加依赖 <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId> </d...

2020-06-12 08:57:20 94

原创 创建一个Maven父工程,包含若干Spring Cloud的子项目

2020-06-11 14:36:34 187

原创 mongodb分组求某个字符串类型的数字字段最大值问题

一、问题:项目中有个代表个数的字段count,但是存的时候存的String类型。通过mongodb的group然后用$max做聚合,多次测试发现无效,原因就是count的类型导致的。二、解决方法:1、用mapReduce来做db.getCollection('***').mapReduce( function(){ emit({"sn":this.s...

2020-06-09 14:57:57 712

原创 mongodb中出现undefined字段怎么查询

2020-06-09 08:17:56 1076

原创 各种垃圾收集器的测试

JDK版本:1.8public class TestAllocation { private static final int _1MB = 1024 * 1024; public static void testAllocation() { byte[] a1, a2, a3, a4;// a1 = new byte[2 * _1MB];/...

2020-06-02 17:38:56 150

原创 查看当前使用的是哪种垃圾回收器

当我们有多个应用,应用自带JDK且版本不一样时,我们怎么查看当前JVM使用的是哪种垃圾回收器?一、命令如下:java -XX:+PrintCommandLineFlags 复制代码二、这是我配在环境变量下的jdk,版本是1.8从图中可以看出jdk8默认使用的是ParallelGC,也就是Parallel Scanvenge + Serial Old的组合。如图下周志明写的虚拟机书里面的截...

2020-06-01 21:04:11 3236

原创 实战OOM

1、编写一段测试代码:public class OOMTest { static class OOMObject { } public static void main(String[] args) { List<OOMObject> list = new ArrayList<>(); for (; ; ) {...

2020-05-29 15:27:57 70

原创 jvisualvm的visualgc插件安装及测试使用

java自带的jvisualvm工具中有一款visualgc插件可以很好的查看gc过程。其安装其实无需去单独下载,方法如下:1、如果jdk已经加在环境变量里面,直接cmd里面输入jvisualvm。2、进入 jvisualvm,点击 -》工具 -》插件 -》 可用插件,勾选visualgc,接受协议安装即可。3、重启 jvisualvm4、写一段代码测试下:public class ...

2020-05-29 09:18:52 488

原创 idea快捷键

Ctrl+F12 显示当前文件的结构Ctrl+Q 查看帮助文档Ctrl+Alt+V 自动创建变量也就是=号前的变量定义Ctrl+H 显示类结构图Ctrl+F7 可以查询当前元素在当前文件中的引用,然后按F3可以选择Ctrl+Alt+T 可以把代码包在一个块内,例如:try/catchAlt+Shift+C 最近的更改Alt+Shift+Up/Down 上/下移一行Ctrl+A...

2020-05-28 09:19:53 35

原创 两个线程,一个输出A~Z,一个输出1~26,但是是间隔输出,结果是A1B2C3...Z26

/** * 两个线程,一个输出A~Z,一个输出1~26,,但是是间隔输出,结果是A1B2C3...Z26 * */public class ThreadTest1 { public static void main(String[] args) { Object lock = new Object(); new Thread(() -> ...

2020-05-27 11:55:37 421

原创 jstack查看死锁情况

一、首先写一段死锁程序:public class DeadlockTest { public static String obj1 = "obj1"; public static String obj2 = "obj2"; public static void main(String[] args){ Thread a = new Thread(() -&...

2020-05-27 11:08:53 1068

原创 创建Thread的三种方式

一、三种方式:1、继承Thread类2、实现Runnable接口public class HowToCreateThread { static class Thread1 extends Thread { @Override public void run() { System.out.println("Hello Threa...

2020-05-25 15:21:15 1400

原创 Fork-Join分治编程

2020-05-24 17:43:42 57

原创 数据结构--栈

public class Stack<T> { private int top = -1; private int stackSize = 0; private T[] stack = null; Stack(int stackSize) { this.stackSize = stackSize; stack = (T...

2020-05-22 16:45:31 36

原创 IDEA安装Material Theme UI

由于公司内网原因,无法直接idea里面插件install,所以在官网先下载:plugins.jetbrains.com/plugin/8006…下载后解压到JetBrains\IntelliJ IDEA 2020.1.1\lib下然后在idea中再install下然后重启后在appearance中设置喜欢的风格,调整字体大小至适合自己的即可。最后效果: ...

2020-05-22 10:08:47 1329

空空如也

空空如也

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

TA关注的人

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