PersistenceManagerFactory pmf = JDOHelper.getPersistenceManagerFactory("jdoconfig.xml"); PersistenceManager pm = pmf.getPersistenceManager(); Transaction tx = pm.currentTransaction(); try { tx.begin(); // ... tx.commit(); } catch (Exception e) { if (tx.isActive()) { tx.rollback(); } } finally { pm.close(); } MyEntity obj = pm.getObjectById(MyEntity.class, id); obj.setValue(newValue); tx.commit(); MyEntity obj = pm.getObjectById(MyEntity.class, id); pm.refresh(obj, LockModeType.PESSIMISTIC_WRITE); obj.setValue(newValue); tx.commit(); <?xml version="1.0"?> <jdoconfig xmlns="http://xmlns.jcp.org/xml/ns/jdo/jdoconfig" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/jdo/jdoconfig http://xmlns.jcp.org/xml/ns/jdo/jdoconfig_3_1.xsd"> <persistence-manager-factory name="myPMF" class="org.datanucleus.api.jdo.JDOPersistenceManagerFactory"> <property name="javax.jdo.PersistenceManagerFactoryClass" value="org.datanucleus.api.jdo.JDOPersistenceManagerFactory"/> <property name="javax.jdo.option.ConnectionURL" value="jdbc:mysql://localhost/mydb"/> <property name="javax.jdo.option.ConnectionDriverName" value="com.mysql.jdbc.Driver"/> <property name="javax.jdo.option.ConnectionUserName" value="username"/> <property name="javax.jdo.option.ConnectionPassword" value="password"/> <!-- ... --> </persistence-manager-factory> </jdoconfig>


上一篇:
下一篇:
切换中文