使用 properties.config 文件设置 persistence.xml 文件的值
Set value of persistence.xml file with properties.config file
我想用 properties.config.
中的值设置 persistence.xml 文件的值
有什么办法吗?像任何内置函数一样?
我想像
这样的函数
factory.setvaluesfrompersistence(config.getpropertie("name"));
我想这样做,因为我不想在 persistence.xml 中设置我的个人价值观,所以如果我部署这个版本,那里没有任何有用的数据。
我使用 EclipseLink 作为 JPA Propvider
我的properties.config:
db.url=
db.user=
db.psw=
和我的 persistens.xml:
<?xml version="1.0" encoding="UTF-8" ?>
<persistence
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd"
version="2.0" xmlns="http://java.sun.com/xml/ns/persistence">
<persistence-unit name="test"
transaction-type="RESOURCE_LOCAL">
<class>my.test.test</class>
<properties>
<property name="javax.persistence.jdbc.driver"
value="" />
<property name="javax.persistence.jdbc.url"
value="" />
<property name="javax.persistence.jdbc.user" value="" />
<property name="javax.persistence.jdbc.password" value="" />
</properties>
</persistence-unit>
</persistence>
我怎么称呼它:
factory = Persistence.createEntityManagerFactory(PERSISTENCE_UNIT_NAME);
final EntityManager em = factory.createEntityManager();
final Query q = em.createQuery("select b from Beruf b");
final List<Beruf> BerufeList = q.getResultList();
for (final Beruf beruf : BerufeList) {
System.out.println(beruf);
}
em.close();
解决方案
就是创建一个Map,在其中设置persistence.xml文件中的键并赋予它一个新值。
我想用 properties.config.
中的值设置 persistence.xml 文件的值有什么办法吗?像任何内置函数一样?
我想像
这样的函数factory.setvaluesfrompersistence(config.getpropertie("name"));
我想这样做,因为我不想在 persistence.xml 中设置我的个人价值观,所以如果我部署这个版本,那里没有任何有用的数据。
我使用 EclipseLink 作为 JPA Propvider
我的properties.config:
db.url=
db.user=
db.psw=
和我的 persistens.xml:
<?xml version="1.0" encoding="UTF-8" ?>
<persistence
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd"
version="2.0" xmlns="http://java.sun.com/xml/ns/persistence">
<persistence-unit name="test"
transaction-type="RESOURCE_LOCAL">
<class>my.test.test</class>
<properties>
<property name="javax.persistence.jdbc.driver"
value="" />
<property name="javax.persistence.jdbc.url"
value="" />
<property name="javax.persistence.jdbc.user" value="" />
<property name="javax.persistence.jdbc.password" value="" />
</properties>
</persistence-unit>
</persistence>
我怎么称呼它:
factory = Persistence.createEntityManagerFactory(PERSISTENCE_UNIT_NAME);
final EntityManager em = factory.createEntityManager();
final Query q = em.createQuery("select b from Beruf b");
final List<Beruf> BerufeList = q.getResultList();
for (final Beruf beruf : BerufeList) {
System.out.println(beruf);
}
em.close();
解决方案
就是创建一个Map,在其中设置persistence.xml文件中的键并赋予它一个新值。