在EclipseLink中创建EMF非常简单:
String myPU = "mypu";
Persistence.createEntityManagerFactory(myPU);
但是,除了单独存储字符串之外,有没有办法在创建工厂后检索PU的名称?
答案 0 :(得分:0)
您可以在创建工厂时将persistenceUnitName存储在属性映射中:
String myPU = "mypu";
Map<String, Object> properties = new HashMap<String, Object>();
properties.put("custom-property.unit-name", myPU);
EntityManagerFactory emf = Persistence.createEntityManagerFactory(myPU, properties);
assertEquals(myPU, emf.getProperties().get("custom-property.unit-name"));
存储单位名称的属性名称并不特殊。工厂只存储您传递给它的任何属性。请确保它是唯一的,不会与其中一个EclipseLink属性发生冲突。