目前很多时候需要绑定hosts,来进行相关的测试,hosts的路径一般是固定的,那么如何快速修改hosts呢?这里利用JavaFX做了一个hosts管理工具,目前可以实现IP高亮,IP自动检测,监听Ctrl+S进行保存。
下载体验:
技术栈
- JavaFX
- RichTextEditor
- Java 1.8+
支持
- 高亮显示IP、注释等内容
- 支持Ctrl+S进行保存
即将支持
- 多个hosts配置支持
- 远程hosts文件更新
- windows下exe文件安装
部分实现
IP注释高亮
这里利用正则去识别IP与注释,并且利用RichTextEditor来进行显示,JavaFX可以加载css文件
1 | 复制代码codeArea = new CodeArea(); |
利用正则去计算哪些应该高亮,使用哪个样式
1 | 复制代码private static final String KEYWORD_PATTERN = "([1-9]|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])(\\.(\\d|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])){3}\\b"; |
动态实时高亮显示
1 | 复制代码private Task<StyleSpans<Collection<String>>> computeHighlightingAsync() { |
加载css文件
1 | 复制代码Scene scene = new Scene(new StackPane(new VirtualizedScrollPane<>(codeArea)), 600, 400); |
增加快捷键监听
大家理解的快捷键,可以在这里使用方便大家进行快速的更改
1 | 复制代码codeArea.setOnKeyPressed(new EventHandler<KeyEvent>() |
根据不同的电脑增加图标
增加图标是JavaFX提供的功能,目前mac上面需要特殊处理一下,代码如下
1 | 复制代码if(SystemUtils.IS_OS_MAC){ |
结语
以上为JHosts Manager的实现,大家如果想运行可以在上面的代码仓库中下载,使用maven构建可以直接运行
相关文章
- 逆向分析某app并使用Java与PHP语言实现RC4加解密
- 解决Windows磁盘爆满却不知如何清理问题
- 利用ping、nslookup、route、traceroute、mtr等工具排查网络异常
- 针对包含签名加密随机生成特殊请求参数等情况使用JMeter进行压力测试
- CentOS_MINI配置方案3_更换更新源_安装常用软件_创建管理用户_服务启动配置
- CentOS_MINI配置方案2_配置网卡
- CentOS_MINI配置方案1_关闭SELinux
- PHP框架之Yaf框架入门
本文转载自: 掘金