mirror of https://gitee.com/y_project/RuoYi.git
修复类匿名注解访问失效问题
parent
6bc1a6aeb1
commit
4aac0058ea
|
@ -46,47 +46,65 @@ public class PermitAllUrlProperties implements InitializingBean, ApplicationCont
|
|||
{
|
||||
beanClass = bean.getClass();
|
||||
}
|
||||
RequestMapping base = beanClass.getAnnotation(RequestMapping.class);
|
||||
String[] baseUrl = {};
|
||||
if (Objects.nonNull(base))
|
||||
// 处理类级别的匿名访问注解
|
||||
if (beanClass.isAnnotationPresent(Anonymous.class))
|
||||
{
|
||||
baseUrl = base.value();
|
||||
}
|
||||
Method[] methods = beanClass.getDeclaredMethods();
|
||||
for (Method method : methods)
|
||||
{
|
||||
if (method.isAnnotationPresent(Anonymous.class) && method.isAnnotationPresent(RequestMapping.class))
|
||||
RequestMapping baseMapping = beanClass.getAnnotation(RequestMapping.class);
|
||||
if (Objects.nonNull(baseMapping))
|
||||
{
|
||||
RequestMapping requestMapping = method.getAnnotation(RequestMapping.class);
|
||||
String[] uri = requestMapping.value();
|
||||
urls.addAll(rebuildUrl(baseUrl, uri));
|
||||
}
|
||||
else if (method.isAnnotationPresent(Anonymous.class) && method.isAnnotationPresent(GetMapping.class))
|
||||
{
|
||||
GetMapping requestMapping = method.getAnnotation(GetMapping.class);
|
||||
String[] uri = requestMapping.value();
|
||||
urls.addAll(rebuildUrl(baseUrl, uri));
|
||||
}
|
||||
else if (method.isAnnotationPresent(Anonymous.class) && method.isAnnotationPresent(PostMapping.class))
|
||||
{
|
||||
PostMapping requestMapping = method.getAnnotation(PostMapping.class);
|
||||
String[] uri = requestMapping.value();
|
||||
urls.addAll(rebuildUrl(baseUrl, uri));
|
||||
}
|
||||
else if (method.isAnnotationPresent(Anonymous.class) && method.isAnnotationPresent(PutMapping.class))
|
||||
{
|
||||
PutMapping requestMapping = method.getAnnotation(PutMapping.class);
|
||||
String[] uri = requestMapping.value();
|
||||
urls.addAll(rebuildUrl(baseUrl, uri));
|
||||
}
|
||||
else if (method.isAnnotationPresent(Anonymous.class) && method.isAnnotationPresent(DeleteMapping.class))
|
||||
{
|
||||
DeleteMapping requestMapping = method.getAnnotation(DeleteMapping.class);
|
||||
String[] uri = requestMapping.value();
|
||||
urls.addAll(rebuildUrl(baseUrl, uri));
|
||||
String[] baseUrl = baseMapping.value();
|
||||
for (String url : baseUrl)
|
||||
{
|
||||
urls.add(prefix(url) + "/*");
|
||||
}
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
// 处理方法级别的匿名访问注解
|
||||
Method[] methods = beanClass.getDeclaredMethods();
|
||||
for (Method method : methods)
|
||||
{
|
||||
if (method.isAnnotationPresent(Anonymous.class))
|
||||
{
|
||||
RequestMapping baseMapping = beanClass.getAnnotation(RequestMapping.class);
|
||||
String[] baseUrl = {};
|
||||
if (Objects.nonNull(baseMapping))
|
||||
{
|
||||
baseUrl = baseMapping.value();
|
||||
}
|
||||
if (method.isAnnotationPresent(RequestMapping.class))
|
||||
{
|
||||
RequestMapping requestMapping = method.getAnnotation(RequestMapping.class);
|
||||
String[] uri = requestMapping.value();
|
||||
urls.addAll(rebuildUrl(baseUrl, uri));
|
||||
}
|
||||
else if (method.isAnnotationPresent(GetMapping.class))
|
||||
{
|
||||
GetMapping requestMapping = method.getAnnotation(GetMapping.class);
|
||||
String[] uri = requestMapping.value();
|
||||
urls.addAll(rebuildUrl(baseUrl, uri));
|
||||
}
|
||||
else if (method.isAnnotationPresent(PostMapping.class))
|
||||
{
|
||||
PostMapping requestMapping = method.getAnnotation(PostMapping.class);
|
||||
String[] uri = requestMapping.value();
|
||||
urls.addAll(rebuildUrl(baseUrl, uri));
|
||||
}
|
||||
else if (method.isAnnotationPresent(PutMapping.class))
|
||||
{
|
||||
PutMapping requestMapping = method.getAnnotation(PutMapping.class);
|
||||
String[] uri = requestMapping.value();
|
||||
urls.addAll(rebuildUrl(baseUrl, uri));
|
||||
}
|
||||
else if (method.isAnnotationPresent(DeleteMapping.class))
|
||||
{
|
||||
DeleteMapping requestMapping = method.getAnnotation(DeleteMapping.class);
|
||||
String[] uri = requestMapping.value();
|
||||
urls.addAll(rebuildUrl(baseUrl, uri));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue