Spring自定义标签

Posted xiatianyu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring自定义标签相关的知识,希望对你有一定的参考价值。

一、定义注解

1. 用@Interface定义一个注解,比如名字叫做:RpcService,里面的方法只写声明

说明:

在定义这个注解前面需要加上这些注解:

@Target({ElementType.TYPE})//注解用在的位置
@Retention(RetentionPolicy.RUNTIME)//注解的生命周期
@Component

整体代码如下:

技术分享图片
 1 import org.springframework.stereotype.Component;
 2 
 3 import java.lang.annotation.ElementType;
 4 import java.lang.annotation.Retention;
 5 import java.lang.annotation.RetentionPolicy;
 6 import java.lang.annotation.Target;
 7 
 8 @Target({ElementType.TYPE})//注解用在的位置
 9 @Retention(RetentionPolicy.RUNTIME)//注解的生命周期
10 @Component
11 public @interface RpcService {
12     String value();
13 }
View Code

 

二、使用注解

1. 使用注解的类必须实现这个接口ApplicationContextAware

2. 这个接口强制实现的方法是:setApplicationContext(ApplicationContext ctx)

3. 获取这个注解的所有类

Map<String,Object> serviceBeanMap = ctx.getBeansWithAnnotation(RpcService.class);

4. 拿到对象

serviceBeanMap.values()

5. 拿到注解上的参数

String value = serviceBean.getClass().getAnnotation(RpcService.class).value();

以上是关于Spring自定义标签的主要内容,如果未能解决你的问题,请参考以下文章

为片段制作自定义列表视图?

Spring自定义标签

Spring 自定义标签配置

Spring学习Spring自定义标签详细步骤

spring源码-自定义标签-4

dubbo源码—dubbo自定义spring xml标签