【发布时间】:2019-04-12 19:29:29
【问题描述】:
我有一个@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 ?
感谢您的帮助
【问题讨论】:
-
我没有手头的例子,也没有时间搜索 SO 的副本,但是是的,你可以通过反射
-
感谢您的回答,我会搜索一些反射示例,如果我能解决它,请告诉您,(我是 cdi 的新手)
-
stackoverflow 中没有这个的重复项?
标签: java dependency-injection cdi inject weld