如何获取@Qualifier成员值?

时间:2019-04-12 19:29:29

标签: java dependency-injection cdi inject weld

我有一个@InterceptorBinding,其成员值是这样的:

@Target({ElementType.METHOD, ElementType.TYPE})
@InterceptorBinding
@Retention(RetentionPolicy.RUNTIME)
public @interface Transactional {
    boolean value() default true;
}

和一个@Interceptor:

@Interceptor
@Transactional
public class TransactionInterceptor {

    @Inject
    private EntityManager em;

    @AroundInvoke
    public Object runInTransaction(InvocationContext invocationContext) throws Exception {

    // here i want get the @Transactional's member value

我正在这样使用它:

@Transactional(true)
    public String insertDatatypes(String s1) {

        //some logic
        ...

我的问题是:

是否可以在TransactionInterceptor类的@Transactional( true )中获得使用的值 true

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

我可以这样获得成员值

boolean trans = invocationContext.getMethod().getAnnotation(Transactional.class).value();