neutrino-proxy
发表于|更新于
|浏览量:
千万别先给人一番赞美,再立刻给他一顿批评——马克·吐温
分享一个内网穿透项目neutrino-proxy
中微子代理(neutrino-proxy)是一个基于netty的、开源的java内网穿透项目。遵循MIT许可,因此您可以对它进行复制、修改、传播并用于任何个人或商业行为。

演示:

相关推荐
2023-06-16
pac4j
对付邪恶的特效药,就是跟邪恶战斗。——泰戈尔 分享一个java安全框架 https://www.pac4j.org/
2022-02-17
启动时获取端口号
人类文化的悲哀,是流俗的易传、高雅的失传。——木心 我们可以如下写法在boot项目启动时获取端口号 12345678910111213141516171819202122232425package com.ruben.simplescaffold;import lombok.extern.slf4j.Slf4j;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.context.ConfigurableApplicationContext;import org.springframework.core.env.Environment;/** * 主启动类 * * @author <achao1441470436@gmail.com> * @since 2021/5/18 0018 14:52 */@Slf4j@SpringBoot...
2021-08-09
mvc配置fastjson序列化枚举
怯懦囚禁人的灵魂,希望可以令你感受到自由,强者自救,圣者渡人。——《肖申克的救赎》 我们可以使用SerializerFeature.WriteEnumUsingToString去完成枚举的序列化操作: 例如我这里某对象属性为枚举类型 我们当使用该POJO接收参数时,我们如果手动转换的话比较麻烦 我们配置如下的后就可以直接传入枚举常量的名字进行映射 例如我此处 最后传入type=INDEX_SHUFFLE,成功完成映射 完整代码 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475package com.ruben.zsxh.config;import com.alibaba.fastjson.serializer.SerializeConfig;import com.alibaba.fastjson.serializer.Serializer...
2023-12-09
spring-state-machine的action踩坑
善则称人,过则称己,则民不争。——佚名 今天在状态机的action里进行事件触发,发现并没有触发 这是因为在action触发后,state才会进行更改,而不是在state触发后。。。 例如此处我们在action的execute打断点: 可以看到还没有更改状态 如果需要在state触发以后紧接着触发event,则可以放到拦截器里spring-state-machine拦截器处理
2022-01-22
Collectors.toMap的对null友好实现
令她反感的,远不是世界的丑陋,而是这个世界所戴的漂亮面具。——《不能承受的生命之轻》 我们在使用toMap时如果遇到null元素,经常会导致我们发生npe 很不方便 于是我给hutool提交了一个PR 完美解决了这个问题 使用方式: 升级到hutool-5.7.20 然后使用CollectorUtil 12Map<String, Integer> collect = Arrays.asList("ruben", "a chao", "vampire", "RUBEN", "VAMPIRE", null).stream().collect(CollectorUtil.toMap(Function.identity(), String::length, (l, r) -> l));System.out.println(collect); 即可
2021-02-28
quartz指定时间点触发
国家用人,当以德为本,才艺为末。——康熙 之前写过一篇Quartz的博客 今天做一点补充 如果我们需要指定时间点触发任务,则可以使用 123// 指定时间点触发Date executeDate = new Date(System.currentTimeMillis() + 5000);TriggerBuilder.newTrigger().startAt(executeDate).withIdentity("achao", "ruben").build(); 这样去构建 这样,我们的任务就会在指定的时间点触发

阿超
我的名字叫阿超 年龄25岁 家在北京市 职业是软件开发 每天最晚也会在八点前回家 不抽烟 酒浅尝辄止 晚上十二点上床 保证睡足八个小时 睡前写一篇博客 再做二十分钟俯卧撑暖身 然后再睡觉 基本能熟睡到天亮 像婴儿一样不留下任何疲劳和压力 就这样迎来第二天的早晨 健康检查结果也显示我很正常 我想说明我是一个不论何时都追求内心平稳的人 不拘泥于胜负 不纠结于烦恼 不树立使我夜不能寐的敌人 这就是我在这社会的生活态度
Follow Me公告
This is my Blog