public class Routes extends Object
Modifier and Type | Field and Description |
---|---|
static Map<Object,com.esotericsoftware.reflectasm.MethodAccess> |
BEAN_METHODACCESS_MAP
bean和MethodAccess映射
key: XxxController.class对应的实例对象 value: MethodAccess |
static Map<Class<?>,Object> |
CLASS_BEAN_MAP
class和对象映射
key: XxxController.class value: XxxController.class对应的实例对象 |
static Map<Class<?>,String> |
CLASS_PATH_MAP
路径和class映射
key: class value: /user |
static String |
META_PATH_KEY |
Map<Method,Object> |
METHOD_BEAN_MAP
方法和对象映射
key: method value: bean |
Map<Method,String[]> |
METHOD_PARAMNAME_MAP
方法参数名映射
key: method value: ["id", "name", "scanPackages"] |
Map<Method,Class<?>[]> |
METHOD_PARAMTYPE_MAP
方法和参数类型映射
key: method value: [String.class, int.class] |
Map<String,Object> |
PATH_BEAN_MAP
路径和对象映射
key: /user value: object |
Map<String,Class<?>> |
PATH_CLASS_MAP
路径和class映射
只是用来打印的 key: /user value: Class |
Map<String,String> |
PATH_FORWARD_MAP
path跟forward映射
key: 原访问路径 value: forward后的路径 譬如:原来的访问路径是/user/123,forward是/user/getById,这个相当于是一个rewrite的功能,对外路径要相对友好,对内路径一般用于业务更便捷地处理 |
Map<String,Method> |
PATH_METHOD_MAP
Method路径映射
key: /user/update,包含forward的路径 value: method |
Map<String,String> |
PATH_METHODSTR_MAP
Method路径映射
只是用于打印日志 key: /user/update value: method string |
Map<Integer,VariablePathVo[]> |
VARIABLE_PATH_MAP
含有路径变量的请求
key: 子路径的个数(pathUnitCount),譬如/user/{userid}就是2 value: VariablePathVo |
Map<String,String> |
VARIABLEPATH_METHODSTR_MAP
含有路径变量的请求
只是用于打印日志 key: 配置的路径/user/{userid} value: method string |
Constructor and Description |
---|
Routes(Class<?> scanRootClasse) |
Routes(Class<?>[] scanRootClasses) |
Routes(Class<?>[] scanRootClasses,
ControllerFactory controllerFactory) |
Routes(Class<?> scanRootClasse,
ControllerFactory controllerFactory) |
Routes(String scanPackage) |
Routes(String[] scanPackages) |
Routes(String[] scanPackages,
ControllerFactory controllerFactory) |
Routes(String scanPackage,
ControllerFactory controllerFactory) |
Modifier and Type | Method and Description |
---|---|
void |
addRoutes(String[] scanPackages)
添加路由
|
void |
addRoutes(String[] scanPackages,
ControllerFactory controllerFactory)
添加路由
|
static <T> T |
getController(Class<T> clazz)
根据class获取class对应的bean
|
Method |
getMethodByPath(String path,
HttpRequest request) |
static String |
getRequestPath(Class<?> clazz) |
static String[] |
toPackages(Class<?>[] scanRootClasses) |
public static final String META_PATH_KEY
public static final Map<Class<?>,Object> CLASS_BEAN_MAP
public static final Map<Object,com.esotericsoftware.reflectasm.MethodAccess> BEAN_METHODACCESS_MAP
public final Map<String,Class<?>> PATH_CLASS_MAP
public static final Map<Class<?>,String> CLASS_PATH_MAP
public final Map<String,Method> PATH_METHOD_MAP
public final Map<Method,String[]> METHOD_PARAMNAME_MAP
public final Map<String,String> PATH_FORWARD_MAP
public final Map<Method,Class<?>[]> METHOD_PARAMTYPE_MAP
public final Map<String,String> PATH_METHODSTR_MAP
public final Map<Integer,VariablePathVo[]> VARIABLE_PATH_MAP
public Routes(String[] scanPackages)
scanPackages
- public Routes(String scanPackage)
public Routes(String[] scanPackages, ControllerFactory controllerFactory)
public Routes(String scanPackage, ControllerFactory controllerFactory)
public Routes(Class<?>[] scanRootClasses)
public Routes(Class<?> scanRootClasse)
public Routes(Class<?>[] scanRootClasses, ControllerFactory controllerFactory)
public Routes(Class<?> scanRootClasse, ControllerFactory controllerFactory)
public void addRoutes(String[] scanPackages)
scanPackages
- public void addRoutes(String[] scanPackages, ControllerFactory controllerFactory)
scanPackages
- controllerFactory
- public static <T> T getController(Class<T> clazz)
T
- clazz
- public Method getMethodByPath(String path, HttpRequest request)
Copyright © 2021. All rights reserved.