54|RESTful Web Services(18):如何实现UriTemplate的主要功能?
徐昊
你好,我是徐昊。今天我们继续使用 TDD 的方式实现 RESTful Web Services。
回顾架构愿景与任务列表
目前我们已经实现了 ResourceRouter,整体的架构愿景如下:
目前 UriTemplate 的任务列表为
UriTemplate
匹配无参数的 Uri 模版
如果 Uri 可以与模版匹配,则返回匹配结果
如果 Uri 不能与模版匹配,则返回 Optional.empty
匹配带参数的 Uri 模版
如果 Uri 可以与模版匹配,按照指定参数从 Uri 中提取值
参数可以通过正则表达式指定格式
如果参数重复定义,则抛出异常
模版匹配的结果可以比较大小
如果匹配的非参字符多,则优先(长的优先)
如果匹配的非参数字符一样,匹配的分组多,则优先(参数优先)
如果匹配的分组一样多,指定格式参数匹配多的优先(指定格式参数优先)
代码为:
视频演示
进入今天的环节:
00:00 / 00:00
1.0x
- 2.0x
- 1.5x
- 1.25x
- 1.0x
- 0.75x
- 0.5x
思考题
匹配结果按匹配的字符常量数、匹配的变量数、匹配的自定义变量数排序,如何寻找匹配结果排序的测试案例?
欢迎把你的想法分享在留言区,也欢迎把你的项目代码分享出来。相信经过你的思考与实操,学习效果会更好!
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
本文介绍了如何使用TDD的方式实现RESTful Web Services中的UriTemplate功能。文章首先回顾了架构愿景与任务列表,然后详细列出了UriTemplate的任务列表,包括匹配无参数的Uri模版、匹配带参数的Uri模版等功能。接着给出了相关的代码实现,并提出了一个思考题,即如何寻找匹配结果排序的测试案例。整体来说,本文通过代码实现和思考题的方式,帮助读者了解了如何实现UriTemplate的主要功能,以及如何进行相关的测试案例。
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《徐昊 · TDD 项目实战 70 讲》,新⼈⾸单¥98
《徐昊 · TDD 项目实战 70 讲》,新⼈⾸单¥98
立即购买
登录 后留言
全部留言(1)
- 最新
- 精选
- aoegroup方法加了之后代码确实好理解多了2022-07-22
收起评论