40|RESTful Web Services(4):在当前架构愿景下,要如何分解任务?
徐昊
你好,我是徐昊。今天我们继续使用 TDD 的方式实现 RESTful Web Services。
目前的架构愿景如下:
将需求分解为任务列表
JAX-RS 的需求非常庞杂,根据前面我们介绍过的部分(参看第 36 讲),主要的功能有这样几个方面:
将请求派分给对应的资源(Resource),并根据返回的状态、超媒体类型、内容,响应 Http 请求。
在处理请求派分时,可以支持多级子资源(Sub-Resource)。
在处理请求派分时,可以根据客户端提供的超媒体类型,选择对应的资源方法(Resource Method)。
在处理请求派分时,可以根据客户端提供的 Http 方法,选择对应的资源方法。
资源方法可以返回 Java 对象,由 Runtime 自行推断正确的返回状态。
资源方法可以不明确指定返回的超媒体类型,由 Runtime 自行推断。比如资源方法标注了 Produces,那么就使用标注提供的超媒体类型等。
可通过扩展点 MessageBodyWriter 处理不同类型的返回内容。
当资源方法抛出异常时,根据异常影响 Http 请求。
可通过扩展点 ExceptionMapper 处理不同类型的异常。
资源方法可按照期望的类型,访问 Http 请求的内容。
可通过扩展点 MessageBodyReader 处理不同类型的请求内容。
资源对象和资源方法可接受环境组件的注入。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
本文介绍了在当前架构愿景下,如何分解任务来实现RESTful Web Services。作者提到了根据架构愿景将功能点关联到不同的功能上下文,并且详细列出了任务列表。文章还提到了采用伦敦学派时的实现顺序,并给出了具体的任务细化列表。接着,作者提到了进入TDD的红/绿循环,并给出了相应的build.grade.kts文件。最后,作者提出了两个思考题,鼓励读者在留言区分享自己的想法和项目代码链接。整体来说,本文通过具体的任务分解和实现流程,帮助读者了解了在当前架构愿景下,如何使用TDD的方式实现RESTful Web Services。
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《徐昊 · TDD 项目实战 70 讲》,新⼈⾸单¥98
《徐昊 · TDD 项目实战 70 讲》,新⼈⾸单¥98
立即购买
登录 后留言
全部留言(2)
- 最新
- 精选
- 枫中的刀剑缺少两个依赖 implementation("org.slf4j:slf4j-api:2.0.0-alpha7") implementation("org.slf4j:slf4j-simple:2.0.0-alpha7") 不然在视频最后那几个因缺少stub的报错无法出现。2022-06-183
- aoe你是怎么理解任务分解的? 将抽象的任务不断具体化,直到可以编码实现。 例如:用户登录是一个抽象的任务。 第一步可以分解为通过手机短信、微信、微博登录; 第二步再对上面步骤中的每个任务进行分解,例如:手机短信登陆需要获得手机号码、生成验证码、发送验证码 以此类推直到消除抽象,实现愿望 代码 https://github.com/wyyl1/geektime-tdd-framework/tree/42022-06-171
收起评论