0

オブジェクトを永続化するエンティティマネージャーを作成しようとしています。これが私がそれをしている方法です:

 EntityManagerFactory emf = Persistence.createEntityManagerFactory("com.dv_model_jar_1.0-SNAPSHOTPU");
    EntityManager em = emf.createEntityManager();
    EntityTransaction tx = em.getTransaction();

    Users user = new Users();
    user.setPassword("test2");
    user.setUserName("test2");

    tx.begin();
    em.persist(user);
    tx.commit();

    em.close();
    emf.close();

このコードをNetbeansで実行しようとすると、最初の行を実行してファクトリを取得できますが、2番目の行を実行するとプログラムが停止します。出力はありません。なぜ何かアイデアはありますか?

これが私のpersistence.xmlファイルです:

<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.0" xmlns="http://java.sun.com/xml/ns/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">
  <persistence-unit name="com.dv_model_jar_1.0-SNAPSHOTPU" transaction-type="RESOURCE_LOCAL">
    <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
<class>com.dv.model.Users</class>
<properties>
  <property name="javax.persistence.jdbc.url" value="jdbc:mysql://localhost:8889/esa"/>
  <property name="javax.persistence.jdbc.password" value="root"/>
  <property name="javax.persistence.jdbc.driver" value="com.mysql.jdbc.Driver"/>
  <property name="javax.persistence.jdbc.user" value="root"/>
  <property name="eclipselink.ddl-generation" value="create-tables"/>
</properties>

4

2 に答える 2

0

私はそれを考え出した。クラスパスにjdbcがありませんでした。データベースが見つかりませんでした。

于 2012-05-02T15:30:38.840 に答える
0

ログインに失敗したなどのエラーが発生している可能性があります。try catchを追加して、例外を出力します。または、コードをデバッグします。

于 2012-05-02T13:23:34.207 に答える