##这是一个轻量级的基于Netty的Web框架。喜欢有兴趣的大佬可以一起来完善。
##目前该框架已经支持HTTP协议的处理和WEBSOCKET协议的处理
##HTTP部分目前只做了常用的GET/POST请求的支持,后续可扩展
##使用该框架可以轻松的开发web应用接口,提供了一些类似于Spring框架的注解,例如@Controller, @RequestMapping,@RequestBody,@Param,@RestController,@PathParam,@Autowired,@Service,@Component。
##框架使用教程
//普通http接口 @Controller public class TestController { @Autowired UserInfoMapper userInfoMapper; @Autowired LoginService loginService; @RequestMapping(url = "/xxx",method = RequestMapping.Method.POST) public Object test(FullHttpRequest fullHttpRequest, @Param("xxx")String a, @RequestBody Pojo pojo, @MapperParam TestMapper testMapper){ System.out.println(a); System.out.println(JSON.toJSONString(pojo)); Container container = HttpServerLauncher.getContainer(); container.getClass(""); Integer integer = userInfoMapper.select1(); System.out.println(integer); loginService.login(); return null; } } //rest http接口 @RestController public class TestRestController { @RestRequestMapping(url = "/{appId}/aaa",method = RestRequestMapping.Method.POST) public Object test(@PathParam("appId") String appId, @Param("bbb")String bbb, @RequestBody Pojo pojo, FullHttpRequest fullHttpRequest, FullHttpResponse fullHttpResponse){ System.out.println(appId); System.out.println(bbb); System.out.println(JSON.toJSONString(pojo)); JSONObject res=new JSONObject(); res.put("aaa","xxx"); return res; } @RestRequestMapping(url = "/{appId}/aaa1",method = RestRequestMapping.Method.POST) public Object test1(@PathParam("appId") String appId, @Param("bbb")String bbb, @RequestBody Pojo pojo, FullHttpRequest fullHttpRequest, FullHttpResponse fullHttpResponse){ System.out.println(appId); System.out.println(bbb); System.out.println(JSON.toJSONString(pojo)); fullHttpResponse.headers().add(HttpHeaderNames.CONTENT_TYPE, HttpHeaderValues.APPLICATION_JSON); fullHttpResponse.content().writeBytes("xxx".getBytes()); fullHttpResponse.content().writeBytes(Unpooled.wrappedBuffer("xxxxx".getBytes())); return fullHttpResponse; } } //拦截器 @Component public class WebFilter implements WebConfiguration { @Override public void addInterceptors(InterceptorRegistry registry) { registry.addInterceptor(new GlobalInterceptor()).addPathPatterns("/.*").order(0); } } public class GlobalInterceptor implements Interceptor { @Override public boolean postHandler(FullHttpRequest fullHttpRequest, FullHttpResponse fullHttpResponse, Method handlerMethod) { System.out.println("全局拦截器 posthandler"); return true; } @Override public void afterCompletion(FullHttpRequest request, FullHttpResponse response, Object handler, Exception ex) { System.out.println("全局拦截器aftercompletion"); } }