自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(53)
  • 资源 (21)
  • 收藏
  • 关注

原创 Datax、Datax-web 安装部署

用户可通过页面选择数据源即可创建数据同步任务,支持RDBMS、Hive、HBase、ClickHouse、MongoDB等数据源,RDBMS数据源可批量创建数据同步任务,支持实时查看数据同步进度及日志并提供终止同步功能,集成并二次开发xxl-job可根据时间、自增主键增量同步数据。任务"执行器"支持集群部署,支持执行器多节点路由策略选择,支持超时控制、失败重试、失败告警、任务依赖,执行器CPU.内存.负载的监控等等。在D:\DataX\datax\job目录下,手动新建json脚本,json示例如下图。

2023-08-23 17:38:58 1250

转载 Datax是什么

9、split()方法通过adjustChannelNumber()方法调整channel个数,同时执行reader和writer最细粒度的切分,需要注意的是,writer的切分结果要参照reader的切分结果,达到切分后数目相等,才能满足1:1的通道模型。DataX作为一个服务于大数据的ETL工具,除了提供数据快照搬迁功能之外,还提供了丰富数据转换的功能,让数据在传输过程中可以轻松完成数据脱敏,补全,过滤等数据转换功能,另外还提供了自动groovy函数,让用户自定义转换函数。

2023-08-23 16:38:57 1120

原创 记一次Kafka重复消费解决过程

而且kafka消息拉取参数max-poll-records设置了500,意味着一次会批量拉取500条消息到本地处理,而max.poll.interval.ms参数默认是5分钟,当500条消息处理时长超过5分钟后,就会认为消费者死掉了,触发再均衡,导致同一个消息被重复消费。,一次拉取数据的最大数据量,默认为52428800B,也就是50M,但是如果设置的值过小,甚至小于每条消息的值,实际上也是能消费成功的。,若是不满足fetch.min.bytes时,等待消费端请求的最长等待时间,默认是500ms。

2023-08-11 18:01:09 1208

原创 Java 线程池配置及使用

当线程数小于corePoolSize最大线程数时,会创建一个新的线程并执行任务,执行完任务之后,不会立即销毁,阻塞在队列等待执行其他任务。当大于线程数时,不会在创建线程。当等待线程队列放不下的时候,会创建临时线程,并且会通过存活时长来销毁临时线程。

2023-05-16 17:28:32 253

原创 基于nginx-http-flv-module搭建RTMP服务步骤

rtmp直播服务器搭建,使用ffmpeg完成推流,使用flv完成拉流。

2022-06-06 17:51:09 1147 2

原创 SFTP文件上传工具类

<dependency> <groupId>com.jcraft</groupId> <artifactId>jsch</artifactId> <version>0.1.53</version> </dependency>package com.wit.tsp.member.util;import com.jc..

2022-04-20 18:51:16 568

原创 华为云对象存储OBS-通过临时URL访问OBS

官方API文档:​​​​​​​​​​​​​​通过临时URL访问OBS_对象存储服务 OBS_Java_临时授权访问_华为云开发过程中,您有任何问题可以在github上提交issue,或者在华为云对象存储服务论坛中发帖求助。接口参考文档详细介绍了每个接口的参数和使用方法。OBS客户端支持通过访问密钥、请求方法类型、请求参数等信息生成一个在Query参数中携带鉴权信息的URL,可将该URL提供给其他用户进行临时访问。在生成URL时,您需要指定URL的有效期来限制https://support.huaweiclo

2022-04-18 18:16:33 5018

原创 Excel导入数据空格通过trim()无法去除的解决办法

操作:将excel数据通过java导入到数据库问题:201809258FDDSS 在数据库中存入这样的字符串,使用SELECT * from abc where title="201809258FDDSS "怎么搜都搜不出来。最后没办法用SELECT * from abc where title like "201809258FDDSS%" 才把它搜出来。Mysql解决步骤:想法是不是excel有制表位,是不是\n或是\tSELECT * from abc where title="20

2021-12-29 17:35:46 2200

原创 Java获取两个日期之间所有间隔时间

/** * 获取两个日期之间的所有日期集合 * * @param minDate * @param maxDate * @return * @throws Exception */ public static List<String> getDaysBetween(Long minDate, Long maxDate) throws Exception { ArrayList<String&g..

2021-11-25 14:40:23 874

原创 Excel模板下载及数据导入

<dependency> <groupId>cn.afterturn</groupId> <artifactId>easypoi-spring-boot-starter</artifactId> <version>4.2.0</version> </dependency>模板下载: @Ap...

2021-11-13 10:32:05 758

原创 RSA加密、解密

安卓底层加密方式与Java底层方式不一致,所以使用 Cipher cipher = Cipher.getInstance("RSA/ECB/OAEPWithSHA-256AndMGF1Padding", BouncyCastleProvider.PROVIDER_NAME);/** * RSA公钥加密 * * @param str 加密字符串 * @param publicKey 公钥 * @return 密文 * @throws Exception 加密过程中的异常信息 .

2021-10-23 09:38:47 456

原创 【MySQL】数据库事务本质刨析2-MVCC

一、MVCC - 多版本并发控制MySQL中的隔离级别不单单是通过加锁实现的,实际上读已提交和可重复读两种隔离级别,在实现上还需要一个辅助,这个辅助就是MVCC(多版本并发控制)。最早的数据库系统,只有读读之间可以并发,读写,写读,写写都要阻塞,引入多版本之后,只有写写之间相互阻塞,其他三种操作都可以并行,这样大幅度提高了InnoDB的并发度。InnoDB是在undolog中实现的,通过undolog可以找回数据的历史版本。找回的数据历史版本可以提供给用户读(按照隔离级别的定义,有些读请求只能看到比

2021-09-07 14:14:12 134

原创 【MySQL】数据库事务本质刨析1-隔离级别

一、什么是事务传统理解mysql中的一次操作过程(sql 执行)是一次事务; 那么多个线程,同时操作mysql中的数据(同一条数据,一个范围内的数据)就叫做并发事务; 数据库层面使用不同的事务隔离级别来进行并发事务的控制,不同的隔离级别是因为数据库中内部锁机制的使用方式不同,例如有的是在select 完成之后立马释放锁,有的是在整个事务commit之后释放锁。二、关于ACID原子性:事务可以简单理解为一次数据库操作,也是执行sql的过程,要么完整执行,要么干脆不执行,整个执行结果要么全部成功,

2021-09-07 10:42:10 172

转载 【MySQL】回表查询、索引覆盖

本文实验基于MqlSQL5.6-InnoDB.一、什么是回表查询首先从InnoDB的索引实现说起,InnoDB又两大类索引:聚集索引 普通索引InnoDB聚集索引的叶子节点存储行记录,因此,InnoDB必须要有,且只有一个聚集索引:如果表定义了PK, 则PK就是聚集索引; 如果表没有定义PK, 则第一个NOT NULL unique列是聚集索引; 否找,InnoDB会创建一个隐藏的row-id作为聚集索引;所以,PK查询非常快,直接定位行记录。InnoDB普通索...

2021-09-06 14:25:22 118

原创 rabbitmq消费速度跟不上生产速度

“这会导致消息队列溢出吗?”是 . 随着队列长度的增加,RabbitMQ将进入“流控制”状态,以防止过多的内存消耗 . 它还将开始将消息持久化到磁盘,而不是将它们保存在内存中 .那么我怎样才能加快消费者的吞吐量,以便消费者能够赶上 生产环境 者并避免队列中的消息溢出有2个选择: 添加更多消费者 . 请记住,如果选择此选项,您的数据库现在将被多个并发进程操纵 . 确保DB能承受额外的压力 . 增加消费渠道的QOS值 . 这将从队列中提取更多消息并在消费者上缓...

2021-04-16 09:31:46 2724

原创 Mysql 常用sql

-- 修改表字符集alter table t_follow_upinfo convert to charset utf8mb4;-- 修改字段类型ALTER TABLE table modify column number int;-- 修改字段注释ALTER TABLE table MODIFY COLUMN number int NOT NULL COMMENT '小老师次数';-- 新增字段alter table tstudent_attendclas...

2021-04-13 14:51:28 109

原创 Feign 自定义 ErrorDecoder (捕获 Feign 服务端异常)

问题描述:Feign 客户端捕获不到服务端抛出的异常解决:微服务之间接口互相调用,Feign客户端需要捕获服务的抛出的异常,并且返回统一错误格式。@Configurationpublic class FeignErrorDecoder implements ErrorDecoder { @Override public Exception decode(String methodKey, Response response) { String ms.

2021-04-10 14:00:46 5540 2

原创 Java Json序列化全局配置

1、解决 Java对象字段类型为long时,序列化成json传递到前端会出现丢失经度的问题。2、解决 json反序列化为Java对象时,如果多了其他属性,会抛出异常的问题。3、解决 日期格式默认转毫秒的问题。@EnableWebMvc@Configurationpublic class WebConfig extends WebMvcConfigurerAdapter { @Override public void configureMessageConverters(

2021-04-09 11:39:39 1019

原创 springBoot集成极光 app消息推送

极光推送一直以来提供了“广播”、“标签(tag)”、“别名(alias)”和“registration_id”等多种推送方式,这几种推送方式正确使用场景如下:如果您希望一条推送能发给您 App 下的全量用户,建议您使用“广播”;参考:怎么样广播推送? 如果您希望一条推送能批量推送给具有相同属性的一群用户,建议您使用“标签(tag)”推送;参考:怎么样向指定的一群用户推送消息? 如果您希望一条推送只针对指定的某一个用户推送,则您可以选择“别名(alias)”或者“registration_id”推送.

2021-04-07 17:31:09 1720

原创 Java 校验日期交叉

/** * 这里共有2个时间段(b1-----e1)【b2-----e2】,4个时间点; * 相当于两条线段(b代表起点,e代表端点,b<=e),4个端点。 * <p> * 可分3种情况: * 1.包含(两条) * (b1---【b2-----e2】--e1) if(b1<=b2 && e1>=e2) * 【b2---(b1-----e1)--e2】 if(b1>=b2&&e1<=e2) * <p&gt.

2021-04-06 15:28:30 574

原创 使用lambda时的警告解决

reports lambdas which can be replaced with method references报告可以用方法引用替换的lambda1、获取对象的属性值警告截图:解决截图:把lambda表达式x->x.getFplrId()改成相应的“实体类::获取实体类的属性”,如Cfptz::getFplrId2、使用自定义的函数警告截图:解决截图:3、使用集合的函数警告截图解决截图:4、Integer类型判空..

2020-12-15 10:48:06 1427

原创 RabbitMQ遇到的坑

1、mq的消息体积最好控制在4MB以下,因为rabbitmq服务端的最大帧是128k,虽然消息大小支持mb,是因为底层做了拆包组包的操作,而频繁的拆包,组包导致mq出现性能异常,消费者的tcp连接出现断开的现象。2、消费者处理消息时异常,如果没有捕获异常,且mq设置了自动确认消息时,会因为消费者没有正常发送ack反馈,导致消费进入死循环,最终内存泄漏。...

2020-09-26 17:24:36 811

原创 将list集合按指定长度进行切分

将list集合按指定长度进行切分。导包:<dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>21.0</version> </dependency>List<Integer> numList = Lists.newArrayList(1, 2, 3, 4, 5.

2020-08-18 14:02:03 1682 1

原创 Java 远程执行shell脚本

package com.dyjw.information.schoolgateway.common;import ch.ethz.ssh2.ChannelCondition;import ch.ethz.ssh2.Connection;import ch.ethz.ssh2.Session;import java.io.IOException;import java.nio.charset.Charset;/** * ClassName: SSHClient * Function: .

2020-07-27 13:10:02 322

原创 java通过url获得json数据并解析

public static void main(String[] args) { try { long s = System.currentTimeMillis(); String url = "https://cmsresources.oss-cn-chengdu.aliyuncs.com/ff4bac131b1d47e69a4b40914c07b4c3.json"; String jsonText = readAll(url); JSONObject jsonO.

2020-07-23 14:23:47 1076 4

原创 阿里云OSS同区域不同bucket文件复制

// Endpoint以北京为例,其它Region请按实际情况填写。public final static String ENDPOINT = "oss-cn-beijing.aliyuncs.com";//accessKeypublic final static String ACCESS_KEY_ID = "xxxxxxxx";//accessKey secretpublic final static String ACCESS_KEY_SECRET = "xxxx";//源bucket.

2020-07-09 13:50:47 2674

原创 RabbitMQ消费端异常进入死循环-处理

RabbitMQ实现消费端异常处理前言思考:因为在开发项目时,RabbitMQ的消费端出现了异常(工具类操作文件时,未找到文件路径)。由于在此之前并未对该异常进行预判,导致异常出现后,消费端仍然对MQ的消息进行消费,但是出现异常后无法对MQ进行回复,所以造成后果消费端一直消费该条信息,进入死循环!从而引发了自己的思考:1. 开发时难免会出现异常,这种异常如果事先未预判,那么在程序运行中,消费端该怎么避免以上出现的死循环;2. 如果事先预判到异常,对其进行了抛出或捕获,消费端又该如何表现?异常

2020-07-04 14:11:51 8586 1

原创 java 平分比例,且和为1

3个人平分,每人0.333333..., 现需要平分后的结果是0.33,0.33,0.34BigDecimal sum = BigDecimal.ZERO;BigDecimal avg = BigDecimal.ONE.divide(BigDecimal.valueOf(3), 2, RoundingMode.FLOOR);for (int index = 0; index < 3; index++) { if (index == 3 - 1) { System..

2020-06-19 14:57:07 767

原创 MySql不走索引的问题

关联字段字符集不一样会导致表关联时做隐式转换,无法用到关联字段上的索引。-- 修改表字符集alter table t_follow_upinfo convert to charset utf8mb4;

2020-04-20 11:44:57 397

原创 Caused by: java.io.IOException: 你的主机中的软件中止了一个已建立的连接。

记一次使用微服务,大数据量导出Excel经过网关时的坑,导出时间在6分钟左右。正常直接访问服务,不经过网关导出是没有问题的(只是等待时间比较久),一旦经过网关就会报错:org.apache.catalina.connector.ClientAbortException: java.io.IOException: 你的主机中的软件中止了一个已建立的连接。 at org.apache...

2020-01-13 17:27:42 5641

原创 【mysql】 数据库字符集和排序规则修改

--- 修改数据库字符集和排序规则 alter database xc character set utf8 collate utf8_general_ci;--- 查看数据库的字符集 select * from information_schema.schemata where schema_name = 'db_name';--- 修改表默认的字符集alter table ...

2019-10-15 14:27:04 3290 1

原创 java8 Stream 常用操作

1、多个属性判断,获取两个List对象的交集List<RetentionReport> collect = AMonthList.stream() .filter(item -> BMonthList.stream() .map(e -> e.getStudentId() + e.getCampusId() + e.ge...

2019-09-30 15:13:26 242

原创 docker 常用操作命令

启动/停止/重启 docker sudo systemctl start dockersudo systemctl stop dockersudo systemctl restart dockerdocker 开机自启动systemctl enable docker查看docker镜像docker images删除docker中的容器docker rm 容器id删除...

2019-08-16 15:13:52 110

原创 Centos7 安装Docker

Docker官方建议将Docker运行在Linux系统上,当然也可以在其他平台运行,本片博客只介绍在linux系统上的安装方法。Docker运行在CentOS7.X 版本以上,本文使用 CentOS 7.5 版本。Docker需要安装在64位平台。Docker 要求 CentOS 系统的内核版本高于 3.10 ,查看本页面的前提条件来验证你的CentOS ...

2019-08-16 15:08:05 133

原创 IDEA 环境配置

IDEA 风格设置:IDEA maven配置IDEA svn配置

2019-08-09 08:45:25 410

原创 Order By高级使用

1、Order By 时通过case when 进行判断后排序需求:当F_EnvirState=0时排第二;F_EnvirState=1时排第一。SELECT F_ENVIRGRANTDATE F_ENVIRSTATE FROM T_Envir_EnvironmentalLogo ORDER BY ...

2019-08-01 11:33:22 369

原创 JQuery 在数组首位追加元素

var array = new Array();array.unshift()

2019-07-30 19:35:54 5344

原创 面试题总结

1、JVM类加载机制jvm类加载机制分为5个部分:加载、验证、准备、解析、初始化。加载:这个阶段会生成代表这个类的java.lang.Class对象,用于方法区这个类的各种数据的入口。验证:确保当前Class文件的字节流包含信息是否符合虚拟机的规则,且不会危害到虚拟机本身。准备:在方法区中为该类的变量分配所使用的内存空间。解析:虚拟机将常量中的符号引用替换为直接应用的过程。...

2019-07-05 13:35:17 116

原创 SQL性能优化

一、SQL语句中IN包含的值不应过多MySql对于IN做了相应的优化,即将IN中的常量全部存储在一个数组中,而且这个数组是排好序的。但是如果数值过多,产生的消耗也是比较大的。再例如:select id from t where num in(1,2,3)对于连续的数值,能用between就不用in;再或者使用连接来替换。二、select语句务必指明字段名称select * 增加很多...

2019-07-03 13:35:37 237

原创 什么是守护线程

当JVM中不存在任何一个正在运行的非守护线程时,则JVM进程即会退出。守护线程拥有自动结束自己生命周期的特性,而非守护线程不具备这个特点。JVM中的垃圾回收线程就是典型的守护线程。通常来说,守护线程经常被用来执行一些后台任务,但是,你又希望在程序退出时,或JVM退出时,线程能够自动,此时,就可以选择守护线程。...

2019-07-02 15:23:58 110

flv直播拉流,实时视频播放demo

flv直播拉流,实时视频播放demo

2022-06-06

搭建rtmp服务nginx配置

搭建rtmp服务nginx配置

2022-06-06

nginx-http-flv-module搭建rtmp服务

基于nginx-http-flv-module搭建rtmp服务,nginx-http-flv-module 1.2.6安装包

2022-06-06

数据库结构和数据对比工具.zip

支持的数据库:MS SQL Server、 PosgresSql、MySQL 数据库数据对比工具:可以针对两个数据进行表结构和数据的对比。1、结构对比:如开发库和正式库之间的结构和数据同步,此工具可以告诉您哪个表结构有字段的增加减少,或者字段类型的改变,并生成sql进行结构的同步。2、数据对比:如对比两个数据库中的某个表的数据差异,有差异的行会用颜色进行标记,可生成sql脚本进行两个库的同步。

2020-06-01

TranslationPlugin-2.6.2.zip

Translation插件——翻译插件,可以翻译词汇、语句,十分方便。离线插件进行安装。选中单词,右键单击,选择Translate,然后进行翻译。 也可以使用快捷键:Ctrl+Shift+Y

2019-12-16

jenkins安装包.zip

jenkins的war包,解压后可直接使用。

2019-10-26

easyuiPoi导出Excel工具类封装(支持合并单元格)

easyuiPoi 通过模板导出Excel、支持纵向合并单元格(合并重复内容)。压缩包包含公共工具类、示例模板、调用截图。

2019-09-20

数据库函数、存储过程破解工具.zip

笔者找到的功能最强大、操作最简单、使用最可靠的数据库解密工具,用于解密的SQL Server2000、2005等版本的存储过程、函数、触发器和视图。 执行连接到数据库后,左边直接列出数据库清单以及每个数据库内的存储过程、函数等清单,对于加密的存储过程、函数等直接通过右键菜单“Decrypt in-place"

2019-09-11

maven私服tar包(nexus_linux).zip

linux搭建maven私服所需tar包, nexus-3.15.2-01-unix.tar.gz。

2019-08-29

lombok-plugin-0.25-2019.1.1

Idea下载插件卡顿,可在此下载该lombok插件,下载后直接导入即可。仅IDEA 2019版使用

2019-08-29

locale.hpi

jenkins汉化插件,通过【管理jenkins】--【插件管理】--【高级】 导入该包。进入系统管理,设置 Default Language 为: zh_CN。重启jenkins(http://localhost:8991/jenkins/restart)

2019-08-16

jdk_win32_1.7.zip

jdk windows32位 1.7版本,非绿色版,解压后安装、配置环境变量

2019-07-02

mybatis-generator自动生成代码.zip

mybatis-generator-core自动生成代码,无需集成到项目中,直接利用控制台命令生成,生成前需在generator.xml进行数据库连接等配置。

2019-07-02

springboot整合redis

SpringBoot整合Redis,包括整合单机版Redis、redis-cluster集群、redis哨兵模式

2019-03-06

jquery图片裁剪插件

文件裁剪插件;拖动文件插件;规定文件大小;裁剪成功后可生成base64格式。

2018-10-31

ajax文件上传插件,支持拖拽

ajax文件上传,支持拖拽上传。修改了补丁,支持后台上传成功的回调。 演示页面在dist文件夹下 index.html

2018-10-31

git管理工具 gitblit 1.8.0

Gitblit 是一个纯 Java 库用来管理、查看和处理 Git 资料库.相当于 Git 的 Java 管理工具.git的管家

2018-07-27

java生成二维码

java生成二维码工具类。内含生成代码。可将生成的二维码下载至本地,也可直接在页面显示二维码

2018-02-28

从富文本(HTML字符串)中获取图片

从富文本(HTML字符串)中获取图片

2017-08-07

jquery.pageination 手动输入要跳转的页数

jquery.pageination 增加跳到输入框

2017-06-12

struts 2.3.32

对struts2.5.10.1漏洞的升级版本struts 2.3.32

2017-03-13

空空如也

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

TA关注的人

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