如果您有权访问JAX-RS API和项目中的实现(很多这样做),则可以使用JAX-RS的UriBuilder通过使用可解析占位符的构建器模式方便地创建URI。

看下面的例子:

 String host = System.getProperty( "host" , "localhost" );  String port = System.getProperty( "port" , "8080" );  URI uri = UriBuilder.fromUri( " http:// {host}:{port}/examples" ) .path( "123" ) .queryParam( "sort" , "name" ) .build(host, port); 

根据是否存在系统属性,产生的uri将为http://localhost:8080/examples/123?sort=name或任何被覆盖的主机和端口。

这是一种为测试创建灵活的URI的便捷方法,在该测试中目标系统可能会针对不同的范围进行更改。 该API在支持JAX-RS的所有组件中都可用,例如Open Liberty,Quarkus或其他Jakarta或MicroProfile实现。

该帖子已从我的新闻通讯040中重新发布 。

翻译自: https://www.javacodegeeks.com/2020/04/quickly-creating-uris-with-uribuilder.html

使用UriBuilder快速创建URI相关推荐

  1. java 创建uri_使用UriBuilder快速创建URI

    java 创建uri 如果您有权访问JAX-RS API和项目中的实现(很多),则可以使用JAX-RS的UriBuilder通过使用可解析占位符的构建器模式方便地创建URI. 看下面的例子: Stri ...

  2. node aws 内存溢出_如何使用Node.js和AWS快速创建无服务器RESTful API

    node aws 内存溢出 by Mark Hopson 马克·霍普森(Mark Hopson) 如何使用Node.js和AWS快速创建无服务器RESTful API (How to quickly ...

  3. vscode 新建php模板,使用VSCode快速创建vue文件模版的方法介绍

    VSCode怎么自定义代码模版?下面本篇文章给大家介绍一下VSCode快速创建vue文件模版的方法.有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助. 修改位置 打开vscode首选项- ...

  4. webpack2--webpack 4.X 快速创建demo

    准备工作 1.新建文件夹:webpack-demo(下面我们简称该文件夹为根目录),在根目录下面建两个文件夹,分别为src和dist. 1).src文件夹:用来存放我们编写的javascript代码, ...

  5. linux命令dd创建虚拟硬盘,每日一题.PYTHON如何模拟LINUX的dd命令快速创建大文件?...

    原文数据: 无 具体要求: 1. 模拟Linux的dd命令快速创建大文件 代码实现: # -*- coding: utf-8 -*- """ # # Authors: l ...

  6. 微信公众号可快速创建“门店小程序” 不用开发

    "门店小程序"是啥?"门店小程序"是小程序的一项新能力.无需开发,商户就可在微信公众号后台快速创建"门店小程序".这个小程序类似一张&quo ...

  7. datatable如何生成级联数据_UE4 C++结合DataTable批量快速创建DataAsset

    剖析某些大型游戏的框架,可以发现广泛运用了DataTable与DataAsset来管理数据,DataTable的导入直接用Excel就能很轻易的完成,但是DataAsset却要一直手动去填,当Data ...

  8. python编程怎么建立工程_教你如何用Python脚本快速创建项目

    相信初学Cocos2D者对Python还很陌生,今天本篇教程教你如何用Python脚本快速创建项目. 在Cocos2d-x2.1.4以上的版本中,取消了使用vs模版创建项目的方法,开始使用python ...

  9. 快速创建 IEqualityComparerT 和 IComparerT 的实例

    几篇相关文章:<Linq的Distinct太不给力了>.<c# 扩展方法奇思妙用基础篇八:Distinct 扩展>.<何止 Linq 的 Distinct 不给力> ...

最新文章

  1. 彻底搞懂 Nginx 的五大应用场景
  2. 盘点一下数据库的误操作有哪些后悔药?
  3. STL(一)Containers
  4. 直播 | 同源共流:一个优化框架统一与解释图神经网络
  5. cmd文件 c语言的段,对于TMS320F2812的CMD文件的理解
  6. 【Python笔记】Python/C++解决约瑟夫环问题
  7. data后缀文件解码_对任何格式的文件实现加密与解密软件
  8. 软件项目开发成本经常用到的估算方法
  9. android多国语言包命名规则
  10. 36. 有效的数独(技巧)
  11. uniapp基础开发模板
  12. 不得不说的Telegram : 币圈与链圈的微信
  13. 【计算机毕业设计】269购物商城网站的设计与实现
  14. 易点易动助力企业固定资产信息化管理
  15. 基于Qt上USBCAN模块的二次开发
  16. Docker系列之MySQL安装教程
  17. java音频教程_Java如何使用IO流实现音频的剪切和拼接的示例代码
  18. 蓝桥杯单片机 赛后资料整理——NE555芯片模块与第十届省赛的总结
  19. 07- 小米导航案例
  20. 店盈通:拼多多运营必须要知道的订单修改规则

热门文章

  1. POJ2352-Stars【树状数组】
  2. ACL Beginner Contest 总结——F多项式待补
  3. 初一模拟赛(4.27)
  4. 10亿个数中找出最大的10000个数
  5. mybatis入门(四)之动态SQL
  6. MySQL cast()函数
  7. Jsoup代码解读之三-Document的输出
  8. Failed to load http://localhost:3000/products: The 'Access-Control-Allow-Origin' header has a value
  9. 你想象中的实习是什么样的?
  10. Hystrix---SpringCloud