自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Life.Trim

充实

  • 博客(53)
  • 收藏
  • 关注

原创 DataLink-可视化数据流程编排(一)

DataLink是一款基于Actor模型开发的数据流程编排工具,通过拖拽方式在画布中添加各类节点,创建数据处理规则。支持监听多种协议端口,订阅消息中间件,以及读写不同类型的数据库。并提供分发、过滤、打包、延迟、限流、脚本函数等数据处理功能。支持以插件的形式拓展自定义节点。支持最少两个节点的集群模式。

2023-09-23 10:50:01 246 1

原创 Spring boot开发微信小游戏后台-websocket服务

最近在做一个微信小游戏的后台,需要使用websocket与小游戏端建立连接,实时推送数据,小游戏后台是一个单体spring boot项目,管理玩家的一些基础信息和游戏配置信息,起初在这个单体项目中加入了websocket,可以做到统计实时在线数量,并由后端主动推送消息给小游戏端。后来发现当后台因为一些业务逻辑改动,需要重新发版时,会导致已有的websocket连接全部端口,所以决定将websocket服务独立出来,原本的业务服务与websocket服务通过http进行简单的交互。

2023-06-16 14:21:06 1523 1

原创 Springboot开发微信小游戏后台-玩家登录流程

最近使用Springboot开发了一个微信小游戏的后台服务,为小游戏提供接口,其中登录需要前后端与微信服务端配合。

2023-06-16 13:30:59 922

原创 Linux 测试TCP/UDP端口

linux中可以使用命令行工具nc,判断指定端口的TCP和UDP连接是否通畅 。

2022-09-27 09:51:19 8031 1

原创 CentOS设置静态IP

一、找到网卡名ip addr二、修改对应网卡的配置(最后是网卡名)vi /etc/sysconfig/network-scripts/ifcfg-ens33修改或添加以下内容ONBOOT=yes #设置网卡为开机启动BOOTPROTO=static # 设置为使用静态IP地址IPADDR=192.168.1.666 # 静态IP地址NETMASK=255.255.255.0 # 子网掩码 GATEWAY=192.168.1.1 # 网关地址 DNS.

2021-08-24 10:12:14 179

原创 Linux下安装Nginx

一、安装环境yum -y install gcc pcre-devel zlib-devel openssl openssl-devel二、上传nginx安装包并解压三、进入解压后的目录执行以下命令./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-stream --conf-path=/usr/local/nginx/conf/nginx..

2021-08-21 12:26:13 97

原创 CentOS7开启关闭防火墙

CentOS7自带了firewalld,可以使用以下命令操作防火墙1.状态systemctl status firewalld2.启动systemctl start firewalld 3.停止systemctl stop firewalld4.开启开机启动systemctl enable firewalld5.禁用开机启动sytemctl disable firewalld...

2021-08-21 11:43:16 131

原创 Linux安装JDK

一、上传jdk将jdk压缩包上传至Linux服务器并解压,解压命令:tar zxvf jdk-8u161-linux-x64.tar.gz二、 配置环境变量执行命令:vim /etc/profile.d/java.sh写入以下内容并保存:(第一行为第一步解压出的文件所在路径)JAVA_HOME=/xxxx/jdk1.8.0_161PATH=$JAVA_HOME/bin:$PATHexport JAVA_HOME PATH执行以下命令使环境变量生效:sourc

2021-08-21 11:30:15 76

原创 冒泡排序

public static void main(String[] args) { int[] arr1 = {1,5,4,7,2,6,3,8,9}; method1(arr1); int[] arr2 = {1,5,4,7,2,6,3,8,9}; method2(arr2); } //冒泡排序 public static void method1(int[] arr) { int temp; ..

2020-09-21 13:20:08 92

原创 Mac启动Springboot项目缓慢问题

第一步:打开/etc/hosts文件原内容:### Host Database## localhost is used to configure the loopback interface# when the system is booting. Do not change this entry.##127.0.0.1 localhost255.255.255.255 broadcasthost::1 localh

2020-09-19 15:08:22 217

转载 Java中的异常

Throwable是所有Java程序中错误处理的父类,有两种资类:Error和Exception。Error:表示由JVM所侦测到的无法预期的错误,由于这是属于JVM层次的严重错误,导致JVM无法继续执行,因此,这是不可捕捉到的,无法采取任何恢复的操作,顶多只能显示错误信息。Exception:表示可恢复的例外,这是可捕捉到的。Java提供了两类主要的异常:runtime exception和checked exception。checked...

2020-08-21 22:29:22 118

原创 java接口返回pdf时修改文件名称问题

最近遇到一个问题,java接口返回一个pdf文件,浏览器直接预览,但是预览时显示的文件名称不是在响应头中设置的filename值。一、问题未改动代码 测试Controller: @RequestMapping("preview") public void preview(HttpServletResponse response) { try { byte[] pdfByte = getTestFile(); //从本地读取一个pdf文件做测试

2020-05-12 10:25:41 6578 7

原创 Mysql使用索引为什么会变快?

MySQL 使用的是 Btree 索引,那它是怎么加速检索的呢?检索中主要耗时在于内存与磁盘的IO耗时,所以加速的关键在于减少IO的次数。图中是一颗 b 树,每个磁盘块包含几个数据项和指针,如磁盘块 1 包含数据项 17 和 35,包含指针 P1、P2、P3,P1 表示小于 17 的磁盘块,P2 表示在 17 和 35 之间的磁盘块,P3 表示大于 35 的磁盘块。真实...

2020-04-01 16:59:44 2141

原创 Mysql索引

什么是Explain?

2020-04-01 16:51:53 132

原创 函数式接口和Lambda表达式

面向对象的思想: 做一件事情,找一个能解决这个事情的对象,调用对象的方法,完成事情.函数式编程思想: 只要能获取到结果,谁去做的,怎么做的都不重要,重视的是结果,不重视过程 比如我们去某地,只需要注意的目的地,不用管使用了什么交通工具。一、函数式接口函数式接口在Java中是指:有且仅有一个抽象方法的接口。 可以有其他非抽象方法 Lambda有延迟执行的效果...

2020-03-25 16:13:25 500

原创 Java使用 OkHttpClient 模拟表单提交请求

使用OkHttpClient 模拟表单提交请求,普通字段加文件上传一、maven依赖 <dependency> <groupId>com.squareup.okhttp3</groupId> <artifactId>okhttp</artifactId> ...

2020-03-13 20:55:08 5247

原创 Tomcat不支持中文路径的问题

问题原因:  Tomcat内置的对于get协议中的URL编码是ISO-8859-1,这个字符集不能直接支持中文等双字节的信息,而中文文件的下载链接恰恰是通过get协议进行的。解决办法:  解决问题的核心在于修改Tomcat的配置,在Server.xml文件中添加一个名为URIEncoding的属性,它用于对HTTP请求中的get方法传过来的URL进行编码,修改它,即可让Tomca...

2020-03-12 18:20:25 527 2

原创 三种mysql数据库引擎

一、MyISAM存储引擎MyISAM存储引擎的表在数据库中,每一个表都被存放为三个以表名命名的物理文件。首先肯定会有任何存储引擎都不可缺少的存放表结构定义信息的.frm文件,另外还有.MYD和.MYI文件,分别存放了表的数据(.MYD)和索引数据(.MYI)。每个表都有且仅有这样三个文件做为MyISAM存储类型的表的存储,也就是说不管这个表有多少个索引,都是存放在同一个.MYI文件中。...

2020-01-31 13:20:08 127

原创 数据库约束

概念: 对表中的数据进行限定,保证数据的正确性、有效性和完整性。常见约束: 1. 主键约束:primary key2. 非空约束:not null3. 唯一约束:unique4. 外键约束:foreign key一、非空约束非空约束:not null,某一列的值不能为null 1. 创建表时添加约束 CREATE TABLE stu( id INT, ...

2020-01-31 12:59:05 123 1

原创 什么是yml文件

YML文件格式是YAML (YAML Aint Markup Language)编写的文件格式,YAML是一种直观的能够被电脑识别的的数据数据序列化格式,并且容易被人类阅读, 容易和脚本语言交互的,可以被支持YAML库的不同的编程语言程序导入,比如: C/C++, Ruby, Python, Java, Perl, C#, PHP等。YML文件是以数据为核心的,比传统的xml方式更加简洁。 YML...

2020-01-31 12:54:38 16652

原创 Java判断一个URL是否404

private static boolean exist(String url) { try { URL u = new URL(url); HttpURLConnection huc = (HttpURLConnection) u.openConnection(); huc.setRequestMethod...

2020-01-09 11:44:34 1974 1

转载 Mysql 解决大文件导入之 source 命令使用

先将sql文件,上传到你的 /home 用户主目录下,然后执行mysql命令,连接数据库。mysql -u root -ppassword:接下来,选择要导入的库,事先你要把这个库建好,比如说叫 newdb, 设置下数据库编码格式防止乱码,最后用source 选中要导入的sql文件,按回车就可以了。mysql>use newdb;mysql>set names ut...

2019-11-06 16:23:25 203

原创 Java环形单链表解决约瑟夫问题

节点:public class LinkNode { public int id; public LinkNode next; public LinkNode(int id) { this.id = id; } @Override public String toString() { return "Lin...

2019-10-28 16:38:02 137

原创 使用Java写一个简单的双向链表

链表节点:public class LinkNode { public int id; public String name; public LinkNode next; public LinkNode prev; public LinkNode(int id, String name) { this.id = id; ...

2019-10-28 13:48:19 305

原创 Java对与单链表的几个操作

代码中用到的单链表及节点类来自:https://blog.csdn.net/u011727603/article/details/1026848231、统计有效节点个数 不包含头节点 public static int count(SingleLinkNodeList linkNodeList) { LinkNode header = linkNodeList....

2019-10-28 12:37:42 108

原创 用Java写一个单链表

链表节点:public class LinkNode { public int id; public String name; public LinkNode next; public LinkNode(int id, String name) { this.id = id; this.name = name; }...

2019-10-22 16:12:43 195 1

原创 使用Java数组模拟循环队列

/** * 数组模拟循环队列 * * 将数组循环使用 入队数据时 rear后移 后移至数组最后一个索引时 跳至第一个索引 front同样 * @author liyang */public class CircleQueue { /** * 队列最大容量 */ private int maxSize; /** * 头指针 ...

2019-10-21 16:14:23 140

原创 二维数组与稀疏数组的转换

稀疏数组:固定三列 行任意其中第一行固定依次写原二维数组的 行数 列数 数据数量其余行依次记录每个数据的 行索引 列索引 值数组转稀疏数组: /** * 数组转稀疏数组 * * @param array 数组 * @return 稀疏数组 */ private static int[][] arrayToSpar...

2019-10-21 13:20:25 121

原创 Java包装类

装箱与拆箱 基本类型与对应的包装类对象之间,来回转换的过程称为装箱与拆箱 装箱:从基本类型转换为对应的包装类对象。 拆箱:从包装类对象转换为对应的基本类手动装箱: Integer i = new Integer(4);//使用构造函数函数 Integer i = Integer.valueOf(4);//使用包装类中的valueOf方法...

2019-10-16 09:33:54 78

原创 Spring boot 集成 Kafka 简单快速使用

最近工作用到了kafka,之前只接触过ActiveMQ,简单记录一下入门用法。只是最简单的结合springboot使用,中间件还要慢慢深入学习。首先是版本问题,困了我好久,下面是我测试了能用的版本:Spring boot 版本1.5.8.RELEASEspring-kafka 版本 1.2.1.RELEASE1.引入依赖<dependency> ...

2019-09-30 14:57:04 213

原创 用一个小案例理解什么是接口

我们以实际生活中的USB接口,类比代码中的接口,帮助理解什么是接口。首先定义一个USB接口public interface USB { //USB接口 public abstract void open(); //抽象成员方法 凡是这个接口的实现类都要覆盖重写这两个方法 也就是有USB接口的USB设备都要会干这两件事 public abstract void ...

2019-09-26 15:44:00 225

原创 final关键字及权限修饰符

final关键字不可改变。可以用于修饰类、方法和变量。类: 被修饰的类,不能被继承。方法:被修饰的方法,不能被重写。变量:被修饰的变量,不能被重新赋值。1.修饰类 不能被继承 格式:final class 类名 { } 2.修饰方法 不能被重写 格式:修饰符 final 返回值类型 方法名(参数列表){ //方...

2019-09-26 15:14:44 79

转载 消灭 Java 代码的“坏味道”

导读明代王阳明先生在《传习录》谈为学之道时说:私欲日生,如地上尘,一日不扫,便又有一层。着实用功,便见道无终穷,愈探愈深,必使精白无一毫不彻方可。代码中的"坏味道",如"私欲"如"灰尘",每天都在增加,一日不去清除,便会越累越多。如果用功去清除这些"坏味道",不仅能提高自己的编码水平,也能使代码变得"精白无一毫不彻"。这里,整理了日常工作中的一些"坏味道",及清理方法,供大家参考。...

2019-09-20 12:56:41 96

原创 在Spring boot中使用WebSocket时无法自动注入问题

最近看了一下WebSocket,写了一个简单的聊天demo。使用中发现一个问题,在WebSocket的onMessage中,我想调用dao层将消息存入数据库,一开始使用spring自动注入。 @Autowired private MsgDao msgDao;发现这样是空指针,注入失败的。查了相关的文档之后解决了,需要三步。1.在需要注入的类中添加//添加一个appli...

2019-09-09 10:30:09 619 1

原创 static关键字

static关键字,它可以用来修饰的成员变量和成员方法,被修饰的成员属于类,而不是单单是属于某个对象。1.修饰成员变量当static修饰成员变量时,该变量称为[类变量]。该类的每个对象都共享同一个类变量的值。 任何对象都可以更改该类变量的值,但也可以在不创建该类的对象的情况下对类变量进行操作。定义格式: static 数据类型 变量名;调用格式: 类名.类变量...

2019-09-05 13:56:41 189

原创 String字符串

String类java.lang.String类代表字符串。 API当中说:Java 程序中的所有字符串字面值(如 "abc")都作为此类的实例实现。 其实就是说:程序当中所有的双引号字符串,都是String类的对象。(就算没有new,也照样是。)字符串的特点: 1. 字符串的内容永不可变。【重点】 2. 正是因为字符串不可改变,所以字符串是可以共享使用的...

2019-09-05 13:45:22 197

原创 Random类、Scanner类、ArrayList类

Random 随机数 Random r = new Random(); int num1 = r.nextInt(); //int范围内的随机数 正负都可能 int num2 = r.nextInt(5); //左闭右开 代表[0,5) 返回0~4之间的随机数 int num3 = r.nextInt(5) + 1;...

2019-09-05 13:29:28 89

原创 Java中Elasticsearch的基本使用

最近工作中用到了es,看了些文档教程,简单总结一些。总体上Java连接Elasticsearch有两种方法: 1:RestClient,基于http协议,9200端口 2:TransportClient,基于Tcp协议,9300端口 目前Elasticsearch最新版本为7.3.1版本,第二种连接方法TransportClient已经被弃用,在7以后的版本都不在支...

2019-09-05 11:19:04 827

原创 Mysql修改密码

方法1:使用mysqladmin命令mysqladmin -u用户名 -p旧密码 password 新密码方法2: 用set password命令登录MySQL后。mysql> set password for 用户名@localhost = password('新密码');方法3:编辑user表登录MySQL后,切换到名为mysql的库,编辑user表,删...

2019-08-28 11:20:59 131

原创 Mysql如何创建用户

自己部署的小项目服务器上,一直都是使用了root用户和默认密码,懒得改,昨天突然发现所有库被删了,然后多了这么一个库。然后表里有这么一段话跑去翻译一看。。把我库删了然后勒索我。。所幸没啥重要东西,是时候管理一下了。装好mysql后,默认是一个root用户,可以查看自带的mysql库中的user表。或者直接使用 select user();命令查看现有的用户Host字段是能访...

2019-08-28 11:11:32 139

空空如也

空空如也

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

TA关注的人

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