- 博客(102)
- 资源 (7)
- 收藏
- 关注

原创 java多线程创建方式以及线程安全
什么是线程线程被称为轻量级进程,是程序执行的最小单位,它是指在程序执行过程中,能够执行代码的一个执行单位。每个程序程序都至少有一个线程,也即是程序本身。线程的状态新建(New):创建后尚未启动的线程处于这种状态运行(Runable):Runable包括了操作系统线程状态的Running和Ready,也就是处于此状态的线程有可能正在执行,也有可能正在等待着CPU为它分配执行时间。等待(Wating):处于这种状态的线程不会被分配CPU执行时间。等待状态又分为无限期等待和有限期等待,处于无限期等
2021-05-11 15:38:50
2335
37
原创 Disconnected from the target VM, address: ‘127.0.0.1:53037‘, transport: ‘socket‘
莫名其妙启动失败
2025-03-13 10:26:20
862
原创 解析视频分辨率和时长
具体安装步骤可以参考:https://cloud.tencent.com/developer/article/1711770。使用的工具是:FFmpeg 分为win 和 linux。将下载的进行解压,配置系统环境变量。需要提前安装 FFmpeg。配置结束后,可以使用。
2022-11-25 12:11:03
702
原创 IDEA:Cherry-pick的简单使用以及代码回滚
首先创建两个分支:master和demo分支demo分支中有两次提交记录,两次记录对应两个功能模块。解释:可以选择某一个分支中的一个或几个commit(s)来进行操作问题:现在只需要demo分支的第一次提交的代码合并到master上。操作路程如下:先切换到master分支上,选择demo分支第一次提交,右键选择Cherry-Pick。然后push即可。选择你要回滚的提交记录,右键选择Revert Commit,然后再push即可...
2022-06-09 18:32:23
5428
原创 http接口加密工具
实现逻辑使用了@ControllerAdvice对请求数据进行预处理随机生产16为字符串,使用RSA加密生成key再对数据进行AES加密,使用步骤2key进行加密使用方法依赖<repositories> <repository> <id>jitpack.io</id> ...
2022-03-04 11:24:00
69
原创 钉钉群聊天机器人
钉钉群机器人项目封装了钉钉群机器人的发送方法,只需要输入ACCESS_TOKEN和SECRET,选择合适的发送类型,就可以一键发送。食用添加pom依赖 <repositories> <repository> <id>jitpack.io</id> <url>https://www.jitpack.io</url> </repository
2022-02-11 11:19:31
1718
原创 字符流和字节流的区别
字节流字节流是指传输过程中,传输数据的最基本单位是字节的流,一个不包含边界数据的连续流;字节流是由字节组成的,主要用在处理二进制数据。OutputStream字节输出流常用方法这个抽象类是所有表示字节输出流的类的超类。具体方法如下:write(int b)将指定的字节写入此输出流write(byte b[])将指定字节数组中的b.length个字节写入此输出流write(byte b[], int off, int len)将指定字节数组中的len个字节从偏移量off开始写入此输出流
2022-01-05 16:10:44
874
原创 Spring Bean的后置处理
初始化Bean的后置处理BeanPostProcessorBeanPostProcessor定义了两种bean的处理方法postProcessBeforeInitialization:初始化前回调 /** * bean加载之前处理 * * @param bean * @param beanName * @return * @throws BeansException */ @Override public
2022-01-05 11:24:15
462
原创 CuratorFramework实现zk同步本地配置
SpringBoot连接Zk连接配置pom文件导入<!-- zk客户端--> <dependency> <groupId>org.apache.curator</groupId> <artifactId>curator-recipes</artifactId> <version>4.3.0</ver
2021-10-25 17:56:20
537
原创 RabbitMq延迟消费(TTL实现)
延时消费RabbitMQ本身并不提供延迟队列的功能,但是我们仍然可以使用RabbitMQ的 TTL(Time-To-Live) 和 DLX(Dead Letter Exchanges) 这两个扩展特性来实现延迟队列,实现消息的延迟消费和延迟重试的功能。实现结果固定时间延迟消费指定时间消费具体实现连接配置package com.itdfq.delay.config;import org.springframework.amqp.core.Message;import org
2021-10-21 19:08:06
1111
原创 Mybatis-
Example example = new Example(); Example.Criteria criteria = example.createCriteria(); criteria.andIdEqualTo(123); example.createCriteria().andAddTimeEqualTo(new Date()); /** * criteria:第二次查询,条件无效,获取旧条件 ..
2021-09-29 18:44:42
120
1
原创 java注解快速入门
注解相关信息@Documented – 存在于JavaDoc@Retention – 注解使用场景@Target – 目标地址@Inherited – 是否允许子类继承该注解Retention定义注解指示带注释类型的注释将保留多长时间。 如果注释类型声明中不存在 Retention 注释,则保留策略默认为RetentionPolicy.CLASS 。package java.lang.annotation;/** * Annotation retention policy. Th
2021-09-16 10:16:21
142
1
原创 C++test软件
阿里网盘分享需要的自取奥我用阿里云盘分享了「C++Test」,你可以不限速下载????复制这段内容打开「阿里云盘」App 即可获取提取码: 54qe链接:https://www.aliyundrive.com/s/7ye1jxiZ7Bu
2021-09-04 09:40:49
561
4
原创 List.RemoveAll()移除相同的元素
import java.util.ArrayList;import java.util.Iterator;import java.util.List;/** * @Author: Duan * @Date: 2021/8/31 18:04 * @Description: removeAll :移除相同元素 */public class ListTest { public static void main(String[] args){ List<String
2021-08-31 18:07:03
701
原创 MongoDB查找附近的人
方式一db.getCollection("places").find()//创建集合 db.createCollection("places")//#插入数据db.places.insert({ name: "Central Park", location: { type: "Point", coordinates: [ -73.97, 40.77 ] }, category: "Parks"} );db.places.insert({ name: "Sara
2021-08-24 13:30:33
698
原创 Optional.ofNullable(参数1).orElse(参数2)
Optional.ofNullable(参数1).orElse(参数2)判断参数1 是否为空,不为空,则赋值,为空则赋值参数2,避免了空指针异常 public static void main(String[] args) { List<String> lists = null; List<String> list = new ArrayList<String>(); list.add("你好"); .
2021-08-13 17:26:52
6492
原创 解决SpringBoot定时任务并发执行线程单例问题
测试代码package com.itdfq.springbootscheduled;import org.springframework.scheduling.annotation.Scheduled;import org.springframework.stereotype.Component;import java.time.LocalDateTime;import java.util.concurrent.TimeUnit;/** * @Author: GodChin * @D
2021-08-13 10:21:49
763
原创 简单实用SpringApplicationListener
编写测试事件package com.itdfq.springlistener.event;import org.springframework.context.ApplicationEvent;/** * @Author: GodChin * @Date: 2021/8/12 9:55 * @Blog: http://itdfq.com * @QQ: 909256107 * @Description: */public class TestEvent extends Applicat
2021-08-12 10:08:35
412
原创 Shell控制流程
if elseif [ $(ps -ef | grep -c "ssh") -gt 1 ]; then echo "true";else echo "false";fiif else-if elsea=1b=2if [ $a == $b ]then echo "a 等于 b"elif [ $a -gt $b ]then echo "a 大于 b"elif [ $a -lt $b ]then echo "a 小于 b"else echo "没有符合的条件"
2021-08-11 16:12:25
101
原创 Shell逻辑运算和关系运算
练习代码#!/bin/bashvar=`expr 2 + 2`echo "两个数的和是:$var"a=10b=20##注意:#乘号(*)前边必须加反斜杠(\)才能实现乘法运算;#if条件需要使用[]var1=`expr $a + $b`echo "a + b = "$var1val=`expr $a - $b`echo "a - b : $val"val=`expr $a \* $b`echo "a * b : $val"val=`expr $b / $a`echo "
2021-08-11 15:25:42
192
原创 Shell数组以脚本传递参数
代码#!/bin/bash#bash支持一维数组(不支持多维数组),并且没有限定数组的大小。#数组元素用"空格"符号分割开array1=(a1 a2 a3 a4 a5 a6)# @可以获取数组所有值echo ${array1[@]}#数组长度length=${#array1[@]}#或者length=${#array_name[*]}echo "数组长度" :$length## Shell传递参数#执行脚本的时候直接在脚本后面添加参数#脚本内获取参数 $n 获取参数 n代表是第
2021-08-11 14:44:15
783
原创 Shell字符串以及赋值学习
学习笔记#!/bin/bashecho "Hello World !"echo "==============================="cur_dateTime="`date +%Y-%m-%d,%H:%M:%S`"echo "获取当前时间":$cur_dateTime#赋值两边不能有空格name="小王"echo "姓名":$nameecho "for循环 注意:加花括号是为了帮助解释器识别变量的边界"for skill in Ada Coffe Action Java;
2021-08-11 14:16:59
2404
原创 java可变参数实例
package com.test;/** * @Author Qianmo * @Date 2021/8/11 9:21 * @Description: 可变长度参数 */public class Test1 { public static void main(String[] args) { Integer max = max(1, 2, 3, 4, 5, 6, 7); System.out.println(max); System.
2021-08-11 09:29:06
101
原创 SpringBoot自带优雅关闭
官方介绍Spring Boot 2.3.0 available nowGraceful shutdownGraceful shutdown is supported with all four embedded web servers (Jetty, Reactor Netty, Tomcat, and Undertow) and with both reactive and Servlet-based web applications. When a grace period is configur
2021-08-04 11:01:48
256
原创 Validation failed for argument [0]
出现原因:@RequestBody @Validated 同时使用,如果实体类参数为null 就会抛出异常解决办法:BindingResult result 进行接收,对错误进行处理例如: (@RequestBody @Validated Student student,BindingResult result) log.info("接受的参数为: 【{}】", JSON.toJSONString(student)); if (result.hasErrors()) { .
2021-08-03 10:10:27
1592
1
原创 SpringCloud之Hystrix容错处理
Hystrix介绍在分布式环境中,许多服务依赖项中的一些必然会失败。Hystrix是一个库,通过添加延迟容忍和容错逻辑,帮助你控制这些分布式服务之间的交互。Hystrix通过隔离服务之间的访问点、停止级联失败和提供回退选项来实现这一点,所有这些都可以提高系统的整体弹性。使用坐标 <!-- https://mvnrepository.com/artifact/org.springframework.cloud/spring-cloud-starter-netflix-hystrix --&g
2021-07-21 11:28:46
221
原创 SpringCloud之Eureka集群搭建
前言Eureka集群搭建比较简单,每一台 Eureka 只需要在配置中指定另外多个 Eureka 的地址就可以实现一个集群的搭建了。采用之前的入门案例进行搭建,SpringCloud之Eureka入门案例详细步骤添加配置文件spring: application: # 服务注册列表中的应用名称,会在Eureka中显示(注意中间不要以下划线连接,否则会注册错误。) name: eureka-server-cluster #添加security密码 secur
2021-07-20 15:08:09
180
原创 RestTemplate使用
什么是RestTemplate ?RestTemplate是Spring用于同步client端的核心类,简化了与http服务的通信,并满足RestFul原则,程序代码可以给它提供URL,并提取结果。默认情况下,RestTemplate默认依赖jdk的HTTP连接工具。如何使用编写配置类,注入到Spring容器```package com.itdfq.resttemplate.config;import org.springframework.context.annotation.Bean;i
2021-07-20 14:53:12
709
原创 SpringCloud之Eureka入门案例(附源码地址)
创建服务提供者添加pom文件<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.o
2021-07-19 17:29:29
213
1
原创 Stream流的小技巧
计算总金额LongSummaryStatistics sum = orderList1.stream().mapToLong(s -> s.getAmount()).summaryStatistics();用于Long类型Long sum1 =sum.getSum()过滤List.stream().filter(s -> s.getType().equals(abc.getType())).collect(Collectors.toList());分页orderL..
2021-07-12 18:21:23
71
原创 实体类参数检验
实体类参数校验@Validated 添加到参数前面 @Validated Student studentStudent 实体类字段上面添加注解进行校验常用注解如下:@AssertFalse 校验false@AssertTrue 校验true@DecimalMax(value=,inclusive=) 小于等于value,inclusive=true,是小于等于@DecimalMin(value=,inclusive=) 与上类似@Max(value=) 小于等于value@Mi
2021-07-01 18:19:34
927
原创 SpringBoot+Dubbo+Zookeeper入门案例
项目功能生产者提供服务(售卖票)消费者消费服务(买票)项目搭建创建两个模块,分别代表生产者和消费者生产者pom文件 <!-- Dubbo Spring Boot Starter --> <dependency> <groupId>org.apache.dubbo</groupId> <artifactId>dubbo-spring-boot-starter&l
2021-06-19 17:38:17
146
原创 Dubbo官方的监控后台管理
项目介绍项目采用的是maven项目管理工具用户名密码默认 root root绑定的Zookeeper默认是 :dubbo.registry.address=zookeeper://127.0.0.1:2181项目默认启动端口是:7001后台系统样式服务系统源代码项目源代码项目地址打包好的默认jar包打包好的jar包Zookeeper源代码Zookeeper源代码Zookeeper的基本使用参考一下文章文章地址...
2021-06-19 15:16:18
217
原创 Zookeeper基本使用
目录bin:放置运行脚本和工具脚本,如果是 Linux 环境还会有有 zookeeper 的运 行日志 zookeeper.outconf:zookeeper 默认读取配置的目录,里面会有默认的配置文件contrib:zookeeper 的拓展功能dist-maven:zookeeper的 maven 打包目录docs:zookeeper 相关的文档lib:zookeeper 核心的 jarrecipes:zookeeper 分布式相关的 jar 包src:z
2021-06-19 14:30:17
132
原创 SpringBoot异步任务和定时任务
异步任务在启动类中开启异步任务功能@EnableAsync@SpringBootApplicationpublic class SpringbootTestApplication { public static void main(String[] args) { SpringApplication.run(SpringbootTestApplication.class, args); }}在需要异步的方法上添加@Async注解 @Async p
2021-06-09 13:53:03
128
原创 SpringBoot原生发送邮件
引入依赖<!-- mail--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> </dependency>配置信息spring: mail: u
2021-06-09 13:32:29
87
SpringBoot项目----签到管理系统(附有sql语句)
2021-06-09
C#课程设计,简单实现了登录注册,增删改查
2020-12-17
virtio-win-1.1.16.vfd
2019-12-16
virtio-win-0.1-81.iso
2019-12-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人