91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

SpringBoot入門十八,自定義注解的簡單實現

發布時間:2020-07-23 22:28:11 來源:網絡 閱讀:988 作者:pannijingling 欄目:編程語言

項目基本配置參考文章SpringBoot入門一,使用myEclipse新建一個SpringBoot項目,使用myEclipse新建一個SpringBoot項目即可,此示例springboot升級為2.2.1版本。

 

1. pom.xml添加aop支持

<!-- 引入aop切面支持 -->
<dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-aop</artifactId>
</dependency>

2. 創建自定義注解

package com.qfx.common.annotation;

import static java.lang.annotation.ElementType.METHOD;
import static java.lang.annotation.RetentionPolicy.RUNTIME;
import java.lang.annotation.Documented;
import java.lang.annotation.Retention;
import java.lang.annotation.Target;

@Documented
@Retention(RUNTIME)
@Target(METHOD)
public @interface LoginAnno {

}

元注解釋義:
java.lang.annotation提供了四種元注解,專門注解其他的注解(在自定義注解的時候,需要使用到元注解):
@Documented –注解是否將包含在JavaDoc中
@Retention –什么時候使用該注解
@Target –注解用于什么地方
@Inherited – 是否允許子類繼承該注解

 

3. 創建自定義注解解析

package com.qfx.common.annotation;

import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Before;
import org.aspectj.lang.annotation.Pointcut;
import org.springframework.stereotype.Component;

/**
 * <h6>描述:通過@Aspect注解使該類成為切面類</h6>
 */
@Aspect
@Component
public class LoginAnnoImpl {

    @Pointcut("@annotation(com.qfx.common.annotation.LoginAnno)")
    private void cut() {
    }

    /**
     * <h6>功能:前置通知</h6>
     */
    @Before("cut()")
    public void before() {
        System.out.println("自定義注解生效了");
    }
}
至此自定義注解就編寫完畢了,下面來看看調用

4. 使用自定義注解

package com.qfx.common.controller;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import com.qfx.common.annotation.LoginAnno;

@RestController
@RequestMapping("login")
public class LoginController {

    @RequestMapping("reg")
    public String reg(String userName) {
        return "用戶[" + userName +"]注冊成功~!";
    }

    @RequestMapping("login")
    @LoginAnno
    public String login(String userName) {
        return "歡迎您:" + userName;
    }
}

SpringBoot入門十八,自定義注解的簡單實現

4. 完整項目結構

SpringBoot入門十八,自定義注解的簡單實現

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

永胜县| 林周县| 辽中县| 金坛市| 柳林县| 台北市| 浏阳市| 连江县| 武山县| 景泰县| 越西县| 南乐县| 六枝特区| 鹰潭市| 布尔津县| 宜丰县| 昌宁县| 河津市| 林州市| 那曲县| 大理市| 右玉县| 法库县| 永济市| 西盟| 墨江| 蒙自县| 林甸县| 务川| 长岭县| 新沂市| 阜平县| 丰原市| 若尔盖县| 剑阁县| 乐陵市| 策勒县| 西林县| 穆棱市| 宜宾市| 会昌县|