第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

連接 PersistenceManagerFactory 和 Persistence.xml 時(shí)出錯(cuò)

連接 PersistenceManagerFactory 和 Persistence.xml 時(shí)出錯(cuò)

交互式愛情 2022-12-28 16:11:10
我的目標(biāo)是使用 datanucleus,java 中的 h2 數(shù)據(jù)庫進(jìn)行 CRUD 操作。但卡在連接 PersistenceManagerFactory 和 persistence.xml我嘗試過不同版本的 datanucleus-core、h2database、datanucleus-api-jdo。我目前參考的是官方文檔:http ://www.datanucleus.org/products/accessplatform/jdo/getting_started.html主代碼文件import javax.jdo.JDOHelper;import javax.jdo.PersistenceManager;import javax.jdo.PersistenceManagerFactory;public class Main {    public static void main(String[] args)    {        PersistenceManagerFactory pmf = JDOHelper.getPersistenceManagerFactory("Tutorial");        PersistenceManager pm = pmf.getPersistenceManager();        pm.currentTransaction().begin();        try {            Users user = new Users();            user.setId(1);            user.setUser("himmat");            user.setEmail("xyz@gmail.com");            user.setMobileNo("7896585687");            pm.currentTransaction().commit();        }finally {            if(pm.currentTransaction().isActive())            {                pm.currentTransaction().rollback();            }            pm.close();        }    }}持久性.xml<?xml version="1.0" encoding="UTF-8" ?><persistence xmlns="http://xmlns.jcp.org/xml/ns/persistence"             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"             xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence        http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd" version="2.1">    <!-- JDO tutorial "unit" -->    <persistence-unit name="Tutorial">        <class>Users</class>        <exclude-unlisted-classes/>        <properties>            <property name="javax.jdo.option.ConnectionURL" value="jdbc:h2:mem:nucleus1"/>            <property name="javax.jdo.option.ConnectionUserName" value="sa"/>            <property name="javax.jdo.option.ConnectionPassword" value=""/>            <property name="datanucleus.schema.autoCreateAll" value="true"/>        </properties>    </persistence-unit></persistence>
查看完整描述

1 回答

?
慕勒3428872

TA貢獻(xiàn)1848條經(jīng)驗(yàn) 獲得超6個(gè)贊

您可以使用屬性而不是 persistence.xml 實(shí)際上,我已經(jīng)使用屬性做了一個(gè)類似的例子。另一個(gè)問題是你可能缺少一些依賴項(xiàng),我正在共享 pom.xml。嘗試使用你可能會(huì)得到結(jié)果。如果您使用 Maven,這很容易做到。您還需要針對官方文檔中顯示的內(nèi)容進(jìn)行增強(qiáng)。


http://www.datanucleus.org/products/accessplatform/jdo/getting_started.html


為此,您需要遵循


http://www.datanucleus.org/products/accessplatform_3_2/jdo/enhancer.html


POM文件


<?xml version="1.0" encoding="UTF-8"?>

<project xmlns="http://maven.apache.org/POM/4.0.0"

         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

    <modelVersion>4.0.0</modelVersion>

    <groupId>com.automated</groupId>

    <artifactId>DemoJDO</artifactId>

    <version>1.0-SNAPSHOT</version>

    <dependencies>

        <dependency>

            <groupId>org.datanucleus</groupId>

            <artifactId>datanucleus-api-jdo</artifactId>

            <version>5.2.1</version>

        </dependency>

        <dependency>

            <groupId>com.h2database</groupId>

            <artifactId>h2</artifactId>

            <version>1.4.199</version>

        </dependency>

        <dependency>

            <groupId>org.datanucleus</groupId>

            <artifactId>datanucleus-rdbms</artifactId>

            <version>5.2.1</version>

        </dependency>

        <dependency>

            <groupId>javax.jdo</groupId>

            <artifactId>jdo-api</artifactId>

            <version>3.1</version>

        </dependency>

        <dependency>

                <groupId>org.datanucleus</groupId>

                <artifactId>datanucleus-core</artifactId>

                <version>5.2.1</version>

        </dependency>

        <dependency>

            <groupId>org.datanucleus</groupId>

            <artifactId>javax.jdo</artifactId>

            <version>3.2.0-m3</version>

        </dependency>


    </dependencies>


    <build>

        <plugins>

            <plugin>

                <groupId>org.datanucleus</groupId>

                <artifactId>datanucleus-maven-plugin</artifactId>

                <version>3.2.0-m3</version>

                <configuration>

                    <log4jConfiguration>${basedir}/log4j.properties</log4jConfiguration>

                    <verbose>true</verbose>

                </configuration>

                <executions>

                    <execution>

                        <phase>process-classes</phase>

                        <goals>

                            <goal>enhance</goal>

                        </goals>

                    </execution>

                </executions>

            </plugin>

        </plugins>

    </build>


</project>

主文件代碼


public static void main(String[] args)

    {

        Properties properties = new Properties();

        properties.setProperty("javax.jdo.PersistenceManagerFactoryClass",

                "org.datanucleus.api.jdo.JDOPersistenceManagerFactory");

        properties.setProperty("javax.jdo.option.ConnectionDriverName","org.h2.Driver");

        properties.setProperty("javax.jdo.option.ConnectionURL","jdbc:h2:~/test");

        properties.setProperty("javax.jdo.option.ConnectionUserName","sa");

        properties.setProperty("javax.jdo.option.ConnectionPassword","");

        properties.setProperty("datanucleus.schema.autoCreateAll","true");


        PersistenceManagerFactory pmf = JDOHelper.getPersistenceManagerFactory(properties);

        PersistenceManager pm = pmf.getPersistenceManager();


 pm.currentTransaction().begin();

try {

//...

//You can use your logic here

//...

            pm.currentTransaction().commit();

        }finally {

            if(pm.currentTransaction().isActive())

            {

                pm.currentTransaction().rollback();

            }

            pm.close();

        }


}


查看完整回答
反對 回復(fù) 2022-12-28
  • 1 回答
  • 0 關(guān)注
  • 133 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)