IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Java知识库 -> 使用Spring@AliasFor注解自定义注解合并@Controller和@RequestMapping -> 正文阅读

[Java知识库]使用Spring@AliasFor注解自定义注解合并@Controller和@RequestMapping

使用Spring@AliasFor注解自定义注解合并@Controller和@RequestMapping

如果只需要代码可以直接根据目录进行获取

知识点

魔法本源先附上官方文档

然后开始扒,作为一代初级程序员恐怖如斯…码来

  • 自定义注解

    package com.ruoyi.common.annotation;
    
    import org.springframework.core.annotation.AliasFor;
    import org.springframework.stereotype.Controller;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RequestMethod;
    
    import java.lang.annotation.Documented;
    import java.lang.annotation.ElementType;
    import java.lang.annotation.Retention;
    import java.lang.annotation.RetentionPolicy;
    import java.lang.annotation.Target;
    
    /**
     * 合并@Controller和@RequestMapping
     *
     * @author 405
     */
    @Target({ElementType.TYPE, ElementType.METHOD})
    @Retention(RetentionPolicy.RUNTIME)
    @Controller
    @RequestMapping
    @Documented
    public @interface ControllerMapping {
    
        /**
         * Alias for {@link Controller#value}.
         */
        @AliasFor(annotation = Controller.class, value = "value")
        String controllerValue() default "";
    
        /**
         * Alias for {@link RequestMapping#name}.
         */
        @AliasFor(annotation = RequestMapping.class)
        String name() default "";
    
        /**
         * Alias for {@link RequestMapping#value}.
         */
        @AliasFor(annotation = RequestMapping.class, value = "value")
        String[] requestMappingValue() default {};
    
        /**
         * Alias for {@link RequestMapping#path}.
         */
        @AliasFor(annotation = RequestMapping.class)
        String[] path() default {};
    
        /**
         * Alias for {@link RequestMapping#method}.
         */
        @AliasFor(annotation = RequestMapping.class)
        RequestMethod[] method() default {};
    
        /**
         * Alias for {@link RequestMapping#params}.
         */
        @AliasFor(annotation = RequestMapping.class)
        String[] params() default {};
    
        /**
         * Alias for {@link RequestMapping#headers}.
         */
        @AliasFor(annotation = RequestMapping.class)
        String[] headers() default {};
    
        /**
         * Alias for {@link RequestMapping#consumes}.
         */
        @AliasFor(annotation = RequestMapping.class)
        String[] consumes() default {};
    
        /**
         * Alias for {@link RequestMapping#produces}.
         */
        @AliasFor(annotation = RequestMapping.class)
        String[] produces() default {};
    }
    
  • 测试代码

    @ControllerMapping(requestMappingValue = "/test")
    public class TestAnnotationController {
    
        @GetMapping
        @ResponseBody
        public String treeData() {
            return "Hello-World";
        }
    }
    
  • 结果

    C:\Users\Admin>curl -X GET 127.0.0.1/test
    Hello-World
    

同理可以合并@Autowired和@Qualifier

  Java知识库 最新文章
计算距离春节还有多长时间
系统开发系列 之WebService(spring框架+ma
springBoot+Cache(自定义有效时间配置)
SpringBoot整合mybatis实现增删改查、分页查
spring教程
SpringBoot+Vue实现美食交流网站的设计与实
虚拟机内存结构以及虚拟机中销毁和新建对象
SpringMVC---原理
小李同学: Java如何按多个字段分组
打印票据--java
上一篇文章      下一篇文章      查看所有文章
加:2022-05-08 07:54:27  更:2022-05-08 07:58:18 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 23:04:57-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码