动态注册 spring 控制器的路由

问题:

如何在 spring 中动态注册控制器的路由,而不指定显式参数类型?

回答:

要动态注册控制器路由,可以使用 java 反射机制来获取方法的参数类型。下面是更新的代码:

package dry.example.service.impl;

import java.lang.reflect.method;

...

private class<?> getparametertype(object handler, string methodname) throws nosuchmethodexception {
    method method = handler.getclass().getmethod(methodname);
    return method.getparametertypes()[0];
}
登录后复制

通过反射动态获取参数类型后,可以在代码中动态注入。

RequestMappingInfo requestMappingInfo = RequestMappingInfo.paths("testing").methods(RequestMethod.GET).build();
Method method = handler.getClass().getMethod("h01", getParameterType(handler, "h01"));
requestMappingHandlerMapping.registerMapping(requestMappingInfo, handler, method);
登录后复制

以上就是Spring动态注册控制器路由:如何不指定参数类型实现路由注册?的详细内容,更多请关注慧达安全导航其它相关文章!

点赞(0)

评论列表 共有 0 条评论

暂无评论
立即
投稿
发表
评论
返回
顶部