سؤال

أنا أستخدم JPA و Java المدمجة DB في طلبي. أحاول كتابة بعض البيانات إلى قاعدة البيانات وعندما أحاول قراءتها مرة أخرى ، أتمكن من القيام بذلك. لكن التطبيق مغلق وعندما أفتحه مرة أخرى لا توجد أي من البيانات.

ها هو ملف المثابرة. xml

    <?xml version="1.0" encoding="UTF-8"?>
<persistence version="1.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_1_0.xsd">
  <persistence-unit name="myMoneyPU" transaction-type="RESOURCE_LOCAL">
    <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
    <class>mymoney.Money</class>
    <properties>
      <property name="eclipselink.jdbc.password" value="adminadmin"/>
      <property name="eclipselink.jdbc.user" value="admin"/>
      <property name="eclipselink.jdbc.driver" value="org.apache.derby.jdbc.EmbeddedDriver"/>
      <property name="eclipselink.jdbc.url" value="jdbc:derby:pocketmoney;create=true"/>
      <property name="eclipselink.ddl-generation" value="create-tables"/>
    </properties>
  </persistence-unit>
</persistence>

هل هناك أي مشكلة في عنوان URL لقاعدة البيانات الخاصة بي.

JDBC: ديربي: PocketMoney

هل كانت مفيدة؟

المحلول

هل هناك أي مشكلة في عنوان URL لقاعدة البيانات الخاصة بي.

لا ، إنه صحيح ويجب إنشاء قاعدة بيانات في دليل العمل الحالي.

بعض الأفكار لتصحيح مشكلتك:

  • استخدم مسارًا مطلقًا للتحكم الكامل jdbc:derby:/path/to/pocketmoney;create=true.
  • تحقق من أن البيانات يتم كتابة (أي أن الملفات تتغير).
  • تنشيط تسجيل ecliselink لمعرفة ما يحدث بالضبط باستخدام الخصائص التالية:

    <properties>
      ...
      <property name="eclipselink.debug" value="ALL"/>          
      <property name="eclipselink.logging.level" value="FINEST" />
      <property name="eclipselink.logging.level.sql" value="FINEST" />
      <property name="eclipselink.logging.level.cache" value="FINEST" />
    </properties>
    
  • تحقق مزدوجًا من أنك تقوم بإلزام المعاملات بشكل مناسب (أنت تقول إن الكود الخاص بك يقوم بالأشياء ولكنك لا تظهر ذلك لذلك لا يزال هناك شك).

مراجع

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top