public interface Router
public class DemoApp{
public static void main(String[] args){
Solon.start(DemoApp.class, args,app->{
//
//路由手写模式
//
app.router().get("/hello/*",c->coutput("heollo world;"));
});
}
}
//
//容器自动模式
//| 限定符和类型 | 方法和说明 |
|---|---|
default void |
add(BeanWrap bw)
添加控制器
|
default void |
add(java.lang.Class<?> clz)
添加控制器类
|
default void |
add(java.lang.String pathPrefix,
BeanWrap bw)
添加控制器
|
void |
add(java.lang.String pathPrefix,
BeanWrap bw,
boolean remoting)
添加路由关系 for Handler
|
default void |
add(java.lang.String pathPrefix,
java.lang.Class<?> clz)
添加控制器类
|
default void |
add(java.lang.String pathPrefix,
java.lang.Class<?> clz,
boolean remoting)
添加控制器类
|
default void |
add(java.lang.String path,
Handler handler)
添加路径处理
|
default void |
add(java.lang.String path,
MethodType method,
Handler handler)
添加路径处理
|
void |
add(java.lang.String path,
MethodType method,
int index,
Handler handler)
添加路由关系 for Handler
|
void |
addPathPrefix(java.lang.String pathPrefix,
java.util.function.Predicate<java.lang.Class<?>> tester)
添加路径前缀
|
default void |
all(java.lang.String path,
Handler handler)
添加所有方法处理
|
void |
caseSensitive(boolean caseSensitive)
区分大小写(默认区分)
|
void |
clear()
清空路由关系
|
default void |
delete(java.lang.String path,
Handler handler)
添加DELETE方法的处理(REST.delete 从服务端删除资源)
|
default void |
filter(Filter filter)
添加过滤器(按先进后出策略执行)
|
void |
filter(int index,
Filter filter)
添加过滤器(按先进后出策略执行)
|
void |
filterIfAbsent(int index,
Filter filter)
添加过滤器(按先进后出策略执行),如果有相同类的则不加
|
java.util.Collection<Routing<Handler>> |
findAll()
获取某个处理点的所有路由记录(管理用)
|
java.util.Collection<Routing<Handler>> |
findBy(java.lang.Class<?> controllerClz)
获取某个控制器的路由记录(管理用)
|
java.util.Collection<Routing<Handler>> |
findBy(java.lang.String pathPrefix)
获取某个路径的某个处理点的路由记录(管理用)
|
default void |
get(java.lang.String path,
Handler handler)
添加GET方法的处理(REST.select 从服务端获取一或多项资源)
|
default java.util.Collection<Routing<Handler>> |
getAll()
已过时。
3.7 避免与 get(path,hander) 疑似冲突
findAll() |
default java.util.Collection<Routing<Handler>> |
getBy(java.lang.Class<?> controllerClz)
已过时。
3.7 避免与 get(path,hander) 疑似冲突
findBy(Class) |
default java.util.Collection<Routing<Handler>> |
getBy(java.lang.String pathPrefix)
已过时。
3.7 避免与 get(path,hander) 疑似冲突
findBy(String) |
default void |
head(java.lang.String path,
Handler handler)
添加HEAD方法的处理
|
default void |
http(java.lang.String path,
Handler handler)
添加HTTP所有方法的处理(GET,POST,PUT,PATCH,DELETE,HEAD)
|
Handler |
matchMain(Context ctx)
区配一个主处理(根据上下文)
|
Result<Handler> |
matchMainAndStatus(Context ctx)
区配一个主处理,并获取状态(根据上下文)
|
default void |
patch(java.lang.String path,
Handler handler)
添加PATCH方法的处理(REST.update 客户端提供改变的属性)
|
default void |
post(java.lang.String path,
Handler handler)
添加POST方法的处理(REST.create 在服务端新建一项资源)
|
default void |
put(java.lang.String path,
Handler handler)
添加PUT方法的处理(REST.update 客户端提供改变后的完整资源)
|
void |
remove(java.lang.Class<?> controllerClz)
移除路由关系
|
void |
remove(java.lang.String pathPrefix)
移除路由关系
|
void |
routerInterceptor(int index,
RouterInterceptor interceptor)
添加路由拦截器(按先进后出策略执行)
|
default void |
routerInterceptor(RouterInterceptor interceptor)
添加路由拦截器(按先进后出策略执行)
|
void |
routerInterceptorIfAbsent(int index,
RouterInterceptor interceptor)
添加路由拦截器(按先进后出策略执行),如果有相同类的则不加
|
default void |
socketd(java.lang.String path,
Handler handler)
添加socket方法的监听
|
void caseSensitive(boolean caseSensitive)
caseSensitive - 区分大小写void addPathPrefix(java.lang.String pathPrefix,
java.util.function.Predicate<java.lang.Class<?>> tester)
void add(java.lang.String path,
MethodType method,
int index,
Handler handler)
path - 路径method - 方法index - 顺序位handler - 处理接口void add(java.lang.String pathPrefix,
BeanWrap bw,
boolean remoting)
pathPrefix - 路径前缀bw - Bean 包装remoting - 是否为远程处理Result<Handler> matchMainAndStatus(Context ctx)
ctx - 上下文java.util.Collection<Routing<Handler>> findBy(java.lang.String pathPrefix)
pathPrefix - 路径前缀java.util.Collection<Routing<Handler>> findBy(java.lang.Class<?> controllerClz)
controllerClz - 控制器类void remove(java.lang.String pathPrefix)
pathPrefix - 路径前缀void remove(java.lang.Class<?> controllerClz)
controllerClz - 控制器类void clear()
void filter(int index,
Filter filter)
index - 顺序位filter - 过滤器void filterIfAbsent(int index,
Filter filter)
index - 顺序位filter - 过滤器default void filter(Filter filter)
filter - 过滤器void routerInterceptor(int index,
RouterInterceptor interceptor)
index - 顺序位interceptor - 路由拦截器void routerInterceptorIfAbsent(int index,
RouterInterceptor interceptor)
index - 顺序位interceptor - 路由拦截器default void routerInterceptor(RouterInterceptor interceptor)
interceptor - 路由拦截器default void add(java.lang.String path,
Handler handler)
path - 路径handler - 处理接口default void add(java.lang.String path,
MethodType method,
Handler handler)
path - 路径method - 方法handler - 处理接口default void add(BeanWrap bw)
bw - Bean 包装default void add(java.lang.String pathPrefix,
BeanWrap bw)
pathPrefix - 路径前缀bw - Bean 包装default void add(java.lang.Class<?> clz)
default void add(java.lang.String pathPrefix,
java.lang.Class<?> clz)
default void add(java.lang.String pathPrefix,
java.lang.Class<?> clz,
boolean remoting)
default void all(java.lang.String path,
Handler handler)
default void http(java.lang.String path,
Handler handler)
default void head(java.lang.String path,
Handler handler)
default void get(java.lang.String path,
Handler handler)
default void post(java.lang.String path,
Handler handler)
default void put(java.lang.String path,
Handler handler)
default void patch(java.lang.String path,
Handler handler)
default void delete(java.lang.String path,
Handler handler)
default void socketd(java.lang.String path,
Handler handler)
@Deprecated default java.util.Collection<Routing<Handler>> getAll()
findAll()@Deprecated default java.util.Collection<Routing<Handler>> getBy(java.lang.String pathPrefix)
findBy(String)pathPrefix - 路径前缀@Deprecated default java.util.Collection<Routing<Handler>> getBy(java.lang.Class<?> controllerClz)
findBy(Class)controllerClz - 控制器类