Netty 实战:如何编写一个麻小俱全的 Web 框架
副问题[/!--empirenews.page--]
进修 Netty 也有一段时刻了,为了更好的把握 Netty,我手动造了个轮子,一个基于 Netty 的 web 框架:redant,中文叫红火蚁。建设这个项目标目标首要是进修行使 Netty,俗话说不要等闲的造轮子,可是通过造轮子我们可以学到许多优越开源框架的计划思绪,编写美妙的代码,更好的晋升本身。 PS:项目地点:https://github.com/all4you/redant 快速启动Redant 是一个基于 Netty 的 Web 容器,相同 Tomcat 和 WebLogic 等容器 只必要启动一个 Server,默认的实现类是 NettyHttpServer 就能快速启动一个 web 容器了,如下所示:
我们可以直接启动 redant-example 模块中的 ServerBootstrap 类,由于 redant-example 中有许多示例的 Controller,我们直接运行 example 中的 ServerBootstrap,启动后你会看到如下的日记信息: 在 redant-example 模块中,内置了以下几个默认的路由: 启动乐成后,,可以会见 http://127.0.0.1:8888/ 查察结果,如下图所示: 假如你可以看到 "Welcome to redant!" 这样的动静,那就声名你启动乐成了。 自界说路由框架实现了自界说路由,通过 @Controller @Mapping 注解就可以独一确定一个自界说路由。如下列的 UserController 所示: 和 Spring 的行使方法一样,会见 /user/list 来看下结果,如下图所示: 功效渲染今朝支持 json、html、xml、text 等范例的功效渲染,用户只必要在 要领的 @Mapping 注解上通过 renderType 来指定详细的渲染范例即可,假如不指定的话,默认以 json 范例范畴。 如下图所示,首页就是通过指定 renderType 为 html 来返回一个 html 页面的: IOC容器从 UserController 的代码中,我们看到 userServerce 工具是通过 @Autowired 注解自动注入的,这个成果是任何一个 IOC 容器根基的手段,下面我们来看看怎样实现一个简朴的 IOC 容器。 起首界说一个 BeanContext 接口,如下所示:
(编辑:河北网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |