我正在使用Jodd Madvoc Web 框架并使用注释定义操作(类和方法)。一切正常,但现在我需要将这些动作定义放在一个外部文件中,因此 Madvoc 不需要扫描我的类路径以查找动作类(以及出于其他一些原因)。
我可能可以自己编写代码,因为 Madvoc 对扩展非常开放,但只是想知道是否已经有办法做到这一点?
谢谢!
您要的是所谓的路由文件。答案是:是的,Madvoc 从 v3.6 开始就支持路由文件(这是新功能之一,所以这可能是您不知道它的原因:)。无论如何,您所要做的就是拥有一个路由文件并使用不同的配置器:RouteMadvocConfigurator
而不是默认配置器。此配置器从类路径中读取路由文件并从中定义操作。您应该能够使用路由文件指定所有动作标志,包括async
标志、拦截器等。路由文件的好处是它的语法不是那么严格,所以你可以轻松地制作自己的格式。
下面是一个路由文件的例子:
`/hello.html` "jodd.madvoc.action.HelloAction#view"
GET /helloWorld.html jodd.madvoc.action.HelloAction#world
/zigzag/${id} jodd.madvoc.action.ArgsAction#zigzag /zigzag
如前所述,格式很松散,因此您可以在行中任意位置定义 http 方法名称等。
您可以在官方文档中查看更多详细信息。