是否可以在启动时更改@requestmapping
值?
@Component
public class CustomRequestMappingHandlerMapping
extends RequestMappingHandlerMapping
{
@Override
protected RequestMappingInfo getMappingForMethod( Method method, Class<?> handlerType )
{
RequestMappingInfo info = super.getMappingForMethod( method, handlerType );
ApiVersion methodApiVersion = AnnotationUtils.findAnnotation( method, ApiVersion.class );
ApiVersion typeApiVersion = AnnotationUtils.findAnnotation( handlerType, ApiVersion.class );
if ( typeApiVersion == null )
{
return info;
}
Set<String> oldPatterns = info.getPatternsCondition().getPatterns();
Set<String> patterns = new HashSet<>();
for ( String p : oldPatterns )
{
for ( int v = 0; v < typeApiVersion.value().length; v++ )
{
ApiVersion.Version version = typeApiVersion.value()[v];
if ( !p.startsWith( version.getValue() ) )
{
if ( p.startsWith( "/" ) ) patterns.add( "/" + version.getValue() + p );
else patterns.add( "/" + version.getValue() + "/" + p );
}
else
{
patterns.add( p );
}
}
}
PatternsRequestCondition patternsRequestCondition = new PatternsRequestCondition(
patterns.toArray( new String[]{} ), null, null, true, true, null );
RequestMappingInfo mappingInfo = new RequestMappingInfo(
null, patternsRequestCondition, info.getMethodsCondition(), info.getParamsCondition(), info.getHeadersCondition(), info.getConsumesCondition(),
info.getProducesCondition(), info.getCustomCondition()
);
return mappingInfo;
}
}
您可以通过实现handlermapping
接口或扩展abstracturlhandlermapping
动态添加requestMappings。
其思想是创建您自己的自定义处理程序映射,而不是使用默认实现,如SimpleURLHandlerMapping、DefaultanNotationHandlerMapping
等
本文向大家介绍ubuntu中修改grub的启动时间生成,包括了ubuntu中修改grub的启动时间生成的使用技巧和注意事项,需要的朋友参考一下 网上查询修改grub的启动时间基本上是修改 /etc/default/grub 然后运行update-grub重新生成/boot/grub/grub.cfg.然而这并不管用,依旧要等待30秒 查看/boot/grub/grub.cfg 从上面的配置可以看到
打开conf/mvc/nutzbook-mvc-chain.js, 在ModuleProcessor后面加入一行 "org.nutz.integration.shiro.NutShiroProcessor", 最终效果 var chain={ "default" : { "ps" : [ "net.wendal.nu
我开发了一个@JMSListener,它可以从Java属性中获取目标,并且运行良好。 但现在我需要能够在运行时更改队列的“目的地”,而不必重置整个应用程序,即使在运行时修改属性,队列“目的地”也不会更改。 以下是我们如何实现@JMSListener: 如您所见,我第一次从一个值表达式中获得了目标,它运行良好,但我不知道如何访问JMSListener并更改其目标。 这能做到吗?有没有办法改变目的地?
本文向大家介绍ssh修改超时自动登出时间的方法,包括了ssh修改超时自动登出时间的方法的使用技巧和注意事项,需要的朋友参考一下 前言 众所周知,当我们通过ssh远程登录到另一台服务器之后,如果长时间不做操作,那么会被服务器自动登出,并且会告诉你timed out waiting for input: auto-logout。如果不通过tmux这些辅助工具来维持session的话,那么我们需要通过修
我最近读了一个关于JAVAFX的课程,我想制作一个应用程序来吸收我所学到的东西。我想做一个2D游戏,其中一个球是通过抛物线的方式动画。我对这两个对象使用和。我必须承认,我不知道到底是如何工作的,我的问题是我想让动画停止时,球到达窗口的底部。 我想用两种方法: null
本文向大家介绍Django在pycharm下修改默认启动端口的方法,包括了Django在pycharm下修改默认启动端口的方法的使用技巧和注意事项,需要的朋友参考一下 如题,度娘前几条答案说的都不清不楚,俺来补上: 点击下拉选项中的Edit Configuration进入如下界面: 如果左侧没有出现django server,说明您的项目是不django,或者说还没有创建出可运行的manage.p