当前位置: 首页 > news >正文

做淘宝客网站 首选霍常亮wordpress定时器插件

做淘宝客网站 首选霍常亮,wordpress定时器插件,wordpress 视频文件夹,网站背景视频文章目录 前言引入包yaml原始内容操作目标具体代码执行查看结果总结: 前言 之前有个需求,动态修改ubuntu20的ip,看了下: 本质上是修改01-netcfg.yaml文件,然后执行netplan apply就可以了。 所以,需求就变成了 如何对ya…

文章目录

    • 前言
    • 引入包
    • yaml原始内容
    • 操作目标
    • 具体代码
    • 执行
    • 查看结果
    • 总结:

前言

之前有个需求,动态修改ubuntu20的ip,看了下: 本质上是修改01-netcfg.yaml文件,然后执行netplan apply就可以了。
所以,需求就变成了 如何对yaml文件的内容进行读取,修改,写入。

引入包

其实springboot提供了2个maven的包用于解析yaml(springboot的各种配置文件都是yaml),引入:

	<!-- Jackson (用于JSON处理) --><dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databind</artifactId></dependency><!-- SnakeYAML (用于YAML解析和生成) --><dependency><groupId>org.yaml</groupId><artifactId>snakeyaml</artifactId></dependency>

yaml原始内容

network:version: 2renderer: networkdethernets:eth0:dhcp4: falseaddresses:- 192.168.150.1/24optional: trueeth1:dhcp4: falseaddresses:- 192.168.150.1/24optional: trueenp3s0:dhcp4: trueaddresses: []dhcp-identifier: macoptional: trueenp4s0:dhcp4: trueaddresses: []dhcp-identifier: macoptional: trueenp6s0:dhcp4: trueaddresses: []dhcp-identifier: macoptional: trueenp7s0:dhcp4: trueaddresses: []dhcp-identifier: macoptional: trueenp8s0:dhcp4: falseaddresses:- 192.168.150.1/24dhcp-identifier: macoptional: true

操作目标

目前的配置文件etho网卡是动态的获取ip,现在把配置文件ech修改如下:
固定ip:dhcp4 --》 false
添加网卡: gateway4: 172.16.10.254
设置ip地址:
设置dns,不然不能上外网
在这里插入图片描述

具体代码

public static void main(String[] args) {try {// Step 1: 读取YAML文件并加载为Map, 输入YAML文件路径InputStream inputStream = new FileInputStream("01-netcfg.yaml");Yaml yaml = new Yaml();Map<String, Object> yamlMap = yaml.load(inputStream);// Step 2: 使用ObjectMapper将Map转换为JSON字符串ObjectMapper om = new ObjectMapper();String jsonStr = om.writeValueAsString(yamlMap);// Step 3: 将JSON字符串解析成JsonNode,便于修改JsonNode rootNode = om.readTree(jsonStr);// Step 4: 修改eth0节点JsonNode ethernetsNode = rootNode.path("network").path("ethernets");// 获取eth0节点并修改其值JsonNode eth0Node = ethernetsNode.path("eth0");// 创建新的eth0配置((ObjectNode) eth0Node).put("dhcp4", false);((ObjectNode) eth0Node).putArray("addresses").add("172.16.10.43/24");((ObjectNode) eth0Node).put("gateway4", "172.16.10.254");// 设置新的DNS地址作为数组JsonNode nameserversNode = eth0Node.path("nameservers");// 使用ArrayNode来生成数组格式ArrayNode arrayNode = om.createArrayNode();arrayNode.add("114.114.114.114");arrayNode.add("8.8.8.8");arrayNode.add("8.8.4.4");((ObjectNode) nameserversNode).set("addresses", arrayNode);// Step 5: 将修改后的JsonNode转换为Map,这里就是将JsonNode转换为MapMap<String, Object> modifiedMap = om.convertValue(rootNode, Map.class);// Step 6: 使用SnakeYAML将修改后的Map转换为YAML格式DumperOptions options = new DumperOptions();options.setDefaultFlowStyle(DumperOptions.FlowStyle.BLOCK);Yaml yamlWriter = new Yaml(options);StringWriter stringWriter = new StringWriter();yamlWriter.dump(modifiedMap, stringWriter);// Step 7: 将新的YAML写回文件try (BufferedWriter writer = new BufferedWriter(new FileWriter("01-netcfg.yaml"))) {writer.write(stringWriter.toString());}System.out.println("YAML updated successfully!");} catch (IOException e) {e.printStackTrace();}

执行

在这里插入图片描述

查看结果

在这里插入图片描述
显示已经修改!!

总结:

文章主要介绍了如何使用Java操作YAML文件,具体实现了读取、修改和写入YAML文件的过程。通过引入Jackson和SnakeYAML两个包,实现了将YAML文件内容转换为Map,然后再将Map修改后重新转换为YAML格式并写回文件。

在具体操作目标上,通过代码示例实现了将原始YAML文件中的某一节点进行修改,包括修改网络配置,设置固定IP地址、网关、DNS等。最后展示了执行结果,并验证配置已经修改成功。

通过本文的示例,读者可以了解如何在Java中操作YAML文件,实现对YAML配置文件的动态修改,为实际项目中类似需求提供了解决思路和代码实现。


本文完

http://www.yayakq.cn/news/9426/

相关文章:

  • 做qq图片的网站青岛福瀛建设集团网站
  • 网站链接跳转怎么做做羞羞网站
  • 建设促销网站前的市场分析HS酒店网站建设
  • 响应式网站和展示式区别贵州seo学校
  • 网站 内容 制作免费企业黄页
  • 选择网站做友情链接的标准一般是网站设计公司长沙公司
  • 泉州网站优化建设网站投标标书范本
  • 网站推广中应注意哪些事项天气邢台
  • 长沙微交易网站建设工商注册公司名称核准
  • 自己做网站可以吗微信公众号运营策划
  • wordpress的网站好用吗中山网站推广外包
  • 可以进网站的软件搜题公众号怎么制作
  • 温州市建设局网站wordpress 位置签到
  • 微商的自己做网站叫什么嘉兴网站排名优化报价
  • 专门做课件的网站百度域名
  • dedecms怎么部署网站2018企业网站优化应该怎么做
  • 新公司怎么做网站用html制作个人博客
  • 做网站和seo流程wordpress做视频
  • 物流网站建设模板下载项目管理软件培训
  • 多个页面网站的制作方法网站建设php的心得和体会
  • 天津网站优化公司价格电子商务平台有什么
  • 个人建设网站需要什么证件吗金蝶软件免费版下载
  • 摄图网的图片可以做网站吗seo优化范畴
  • 商洛建设网站企业整站优化
  • 网站换空间要重新备案吗网站建设费用 计入什么科目
  • 网站集约化建设情况如何学建设网站首页
  • 做娱乐网站彩票代理网站建设公司使用图片侵权使用者有无责任
  • 网站开发技术报告模板产品设计网址
  • 嘉兴做网站的wordpress响应商城
  • 网站后台口令湛江网警