#1.configRoute的用法
public void configRoute(Routes me) { me.add("/hello", HelloController.class); //function1 me.add("/hello", HelloController.class,"");//function2 me.add("/",IndexController.class,"/views");//function3 }
注意: function1等价于function2,function3 中的最后一个参数,为空或者不写(指定为/webapp),当参数存在时:webapp/views. #2.路由分包 指的是,将路由按照一定的规则分离,譬如最简单的前后分离 ` public void configRoute(Routes me) {
me.setBaseViewPath("/views");
me.add(new FrontRoute());
me.add(new AdminRoute());
}
`
前端路由与后端路由 `public class FrontRoute extends Routes {
[@Override](https://my.oschina.net/u/1162528)
public void config() {
// TODO Auto-generated method stub
setBaseViewPath("views");
add("/front",IndexController.class);
}
' public class AdminRoute extends Routes {
[@Override](https://my.oschina.net/u/1162528)
public void config() {
// TODO Auto-generated method stub
setBaseViewPath("views");
add("/admin", AdminController.class);
}
}`
3 RouteInteceptor
添加拦截器在路由,作为controller的前置 `public class FrontRouteInterceptor implements Interceptor {
[@Override](https://my.oschina.net/u/1162528)
public void intercept(Invocation inv) {
// TODO Auto-generated method stub
System.out.println("我是拦截器,我被调用了");
inv.invoke();//调用
}
}
public void config() { // TODO Auto-generated method stub setBaseViewPath("views"); addInterceptor(new FrontRouteInterceptor());// add("/front",IndexController.class); }`
4路由规则
@ActionKey 打破controller规则
- -- ControllerKey/method/v0-v1
- -- ControllerKey/Method
- -- Controllerkey/v0-v1