JRouter

一个围绕对象方法基于责任链(拦截器)模式设计的开源轻量级Java容器
专注于方法的映射、调用、拦截和结果处理,采用基于配置和注解的方式来抽取和收集程序中对象的方法(method)以用于路由映射, HTTP控制器,RPC,各种应用等。

特点


理念

计算机本质为 input -> output,程序的主要基本要素为 变量/方法。
简而言之,我们一直在重复做着 一件事:
var function(var) 亦或 Result Method(Parameters[])。
因而,方法(Method)是关注的核心;围绕 Method调用展开流程。

设计

针对方法,提供基于注解(@Annotation)的配置:

  • 命名空间(Namespace)
  • 行为(方法)定义(Action)
  • 拦截器(Interceptor)
  • 拦截栈(InterceptorStack)
  • 结果对象(Result)
  • 结果类型(ResultType)

方法调用流程

JRouter方法调用流程

简单易用

性能 / 安全

  • 快速地方法调用,方法缓存。
  • 默认提供基于javassist的字节码增强。
  • 类似大多数框架,容器初始化封装数据后趋于一个稳定状态,对外接口只提供不变数据,方法调用接口不影响内部数据,因而是线程安全的。
  • 努力完善的各种测试。

支持