编程开发 第2页

Mac巧用alias实现在终端动态切换Java版本

3

身为一个Java开发者,在公司生产环境中依然是java8,然而我自己偶尔写点小东西之类的还是更倾向于java11。于是很自然的装了两个jdk,java8与java11,但是问题也同样来了,假设现在要在命令行启动一个java8的jar包,但是默认的java命令是java11,这个时...

阅读(1315)评论(0)赞 (0)

javassist instrument()方法实战

3

由于最近在做的分布式爬虫中用到了 XXL-GLUE 来动态执行抓取脚本。由于抓取脚本较多,想着针对一些通用操作比如存库封装了父类CrawlerWorker,并且由 CrawlerWorker 实现了GlueHandler接口。 然后由KaguraScript extends Cr...

阅读(8164)评论(0)赞 (0)

Kotlin中更优雅的使用多线程

在上一篇:Kotlin 协程使用自定义线程池中我们简单的使用自定义线程池作为异步协程async的上下文并完成了主线程等待线程池执行完毕的小例子。 但是开发过程中难免会有很多需要这种多线程跑的情况,比如从库里批量更新一批数据,或者是给某接口推一批数据。这种时候显然需要多线程,每次都...

阅读(2165)评论(0)赞 (0)

Kotlin 协程使用自定义线程池

Kotlin中可以很方便的使用自定义线程池作为协程上下文,并且可以在不使用CountDownLatch跟Callable+Future的情况下更简单的实现主线程等待线程池中任务执行完毕的需求。 首先我们将协程的依赖加入pom.xml 然后新建Test.kt,内容如下: 以上代码中...

阅读(2243)评论(0)赞 (0)

使用Docker快速搭建Firefox Send

1

1:安装Docker 2:Docker启动Redis 3:Docker启动Firedox Send 4:配置Nginx反向代理 现在你已经可以访问http://127.0.0.1:1443 来使用Firedox Send了。接着将你的域名解析到你的服务器,再通过Nginx反向代理...

阅读(2022)评论(2)赞 (2)

解决LNMP安装后MySQL / MariaDB无法远程连接的问题

2

重点:简而言之就是LNMP为了安全默认是禁止远程连接的,所以需要手动在iptables 里删除DROP 3306端口的规则 1:赋予root远程登录权限 2:iptables 里删除DROP 3306端口的规则 查看已有的iptables规则,以序号显示:iptables -L ...

阅读(1407)评论(0)赞 (0)

Linux命令之巧用sed进行内容替换

大家都知道在Linux中提供了近乎无数的强大命令,当然对文件的编辑来说VI/VIM想必是大家耳熟能详的最常用的命令了,但是很多情况下我们用他们都只是为了替换一些简单的内容,比如去掉某行前面的#啦,或者把某参数从no改为yes之类的事情,然后还得ESC -> : -> ...

阅读(1498)评论(0)赞 (0)

SpringBoot中获取某个接口的所有实现类

1

如题,在开发过程中经常会有这个需求,例如全国各个城市的社保授权登录爬虫,每次加一个城市都手动去添加if判断也太LOW。那该如何实现呢? 首先我们需要定义一个接口GodFather,然后增加两个接口的实现类implA,implB,并且给实现类加上@Component注解。当然,如果...

阅读(2426)评论(0)赞 (0)