2011-04-08 150 views
2

我想这个问题很简单。我不知道该怎么做,我唯一能猜到的是这个:有没有办法让@PersistenceContext更灵活?

@PersistenceContext("Bibliothouris" + RunParallelized.thread) 
protected EntityManager entityManager; 

线程是RunParallelized类中的静态变量。但注释不能是可变的。它会解决我所有的问题。

我在我的persistence.xml声明如下:

<persistence-unit name="Bibliothouris1" transaction-type="RESOURCE_LOCAL" /> 
<persistence-unit name="Bibliothouris2" transaction-type="RESOURCE_LOCAL" /> 
<persistence-unit name="Bibliothouris3" transaction-type="RESOURCE_LOCAL" /> 
<persistence-unit name="Bibliothouris4" transaction-type="RESOURCE_LOCAL" /> 

有什么建议?

+0

你究竟想达到什么目的? – axtavt 2011-04-08 09:06:25

回答

2

这可不行,很遗憾。只有编译时常量才被允许作为注解的参数。原因是在编译类之前,annotation processing可以在单独的循环中运行。所以基于注解的解决方案恐怕不适合你。