53|RESTful Web Services(17):如何进行Spike的架构愿景细化?
徐昊
你好,我是徐昊。今天我们继续使用 TDD 的方式实现 RESTful Web Services。
回顾架构愿景与任务列表
目前我们已经实现了 ResourceRouter,整体的架构愿景如下:
细化任务列表
沿着调用栈的顺序,就要进入 RootResource/Resource/ResourceMethod 的开发中。未经细化的任务列表如下:
Resource/RootResource/ResourceMethod
在处理请求派分时,可以支持多级子资源(Sub-Resource)
在处理请求派分时,可以根据客户端提供的超媒体类型,选择对应的资源方法(Resource Method)
在处理请求派分时,可以根据客户端提供的 Http 方法,选择对应的资源方法
资源方法可以返回 Java 对象,由 Runtime 自行推断正确的返回状态
资源方法可以不明确指定返回的超媒体类型,由 Runtime 自行推断,比如,资源方法标注了 Produces 标注,那么就使用标注提供的超媒体类型等
资源方法可按找期望的类型,访问 Http 请求的内容
资源对象和资源方法可接受环境组件的注入
而在当前架构愿景下,RootResource/Resource/ResourceMethod 都需要使用 UriTemplate、UriInfoBuilder 作为支撑。其中,UriInfoBuilder 还没有具体的接口设计,那么我们可以先实现 UriTemplate。视频演示如下:
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
本文介绍了如何进行Spike的架构愿景细化,作者通过使用TDD的方式实现RESTful Web Services。文章首先回顾了架构愿景与任务列表,然后细化了任务列表,包括处理请求派分、支持多级子资源、根据客户端提供的超媒体类型选择资源方法等。在当前架构愿景下,RootResource/Resource/ResourceMethod需要使用UriTemplate、UriInfoBuilder作为支撑。作者提出了细化UriTemplate的任务,包括匹配无参数的Uri模版、匹配带参数的Uri模版等。最后,作者提出了一个思考题,即如何根据variable获取值。整体而言,本文通过具体的任务列表和思考题,帮助读者了解了如何进行Spike的架构愿景细化,对于正在进行类似开发的技术人员具有一定的参考意义。
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《徐昊 · TDD 项目实战 70 讲》,新⼈⾸单¥98
《徐昊 · TDD 项目实战 70 讲》,新⼈⾸单¥98
立即购买
登录 后留言
全部留言(1)
- 最新
- 精选
- Jason正则表达式真是神奇😅2022-08-11归属地:上海
收起评论