讲解

REST 风格的 Web 服务入门指南和 (重要)REST关键原则

折月煮酒 提交于 2019-11-29 19:13:48
提醒:想掌握并理解REST风格的Web服务,必须要熟悉HTTP协议,不能光知道GET/POST两种方式.详细请看: http://my.oschina.net/zhaoqian/blog/90315 首先向看一下REST在JavaEE里的规范JAX-RS. JavaTM API for RESTful Web Services (JAX-RS) 1.1 标准 JAX-RS定义了部署Web服务的API,这些Web服务根据Representational State Transfer (REST)体系风格构建。 在整个Java EE产品中,要求所有Java EE Web容器支持使用JAX-RS技术的应用程序。 此规范描述了作为Servlet对服务进行部署。必须能够使用相应的部署模型来部署基于JAX-RS的应用程序,这种部署模型使用了web.xml描述符的servlet-class元素,它的名称是应用程序提供的JAX-RS ApplicationConfig抽象类的扩展类。 此规范定义了一套可选的容器管理的功能和资源,它们会在Java EE容器中使用,所有这样的特性和资源必须可用。 JAX-RS规范参见 http://jcp.org/en/jsr/detail?id=311 上述是JavaEE6规范里的一些说明,那就是说,JAX-RS是完全的REST风格

Netty5 Write和Flush事件处理过程_源码讲解

◇◆丶佛笑我妖孽 提交于 2019-11-29 15:29:43
欢迎大家关注我的微博 http://weibo.com/hotbain 会将发布的开源项目技术贴通过微博通知大家,希望大家能够互勉共进!谢谢!也很希望能够得到大家对我博文的反馈,写出更高质量的文章!! write处理流程 业务逻辑handler调用context的write方法,将欲发送的数据发送到带发送缓冲区中. 看看write流程的触发代码(就是在一个业务handler中调用一下write方法即可): public class DiscardServerHandler extends ChannelHandlerAdapter { @Override public void channelRead(final ChannelHandlerContext ctx,final Object msg) throws Exception { ByteBuf bufferBuf =(ByteBuf)msg; System.out.println(new String(bufferBuf.array())); ctx.channel().write(bufferBuf); } 追踪一下,ctx.channel().write(bufferBuf)的实现(假设out pipeline中没有其他的encode handler了,),我们会看到,最终会由AbstractUnsafe