首页 > 解决方案 > 无法使用 JPA 找到数据在 MySQL 中的持久化位置

问题描述

  1. 我在 MySQL 中创建了一个名为 newlmstest 的数据库
  2. 使用 JFS 和 Primefaces 在 Netbeans 中创建 Java Web 应用程序
  3. 使用向导创建了 persistence.xml(使用表生成策略 - 创建)
  4. 单个实体已创建。
  5. 使用向导从实体类创建 JSF 页面

一切正常,数据持续存在。

但我找不到在“newlmstest”数据库中创建的表。

我的数据保存在哪里?

持久性.xml

<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.1" 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">
  <persistence-unit name="primefaces-jsf-pu" transaction-type="JTA">
    <exclude-unlisted-classes>false</exclude-unlisted-classes>
    <properties>
      <property name="javax.persistence.jdbc.url" value="jdbc:mysql://localhost:3306/newlmstest?zeroDateTimeBehavior=convertToNull"/>
      <property name="javax.persistence.jdbc.user" value="root"/>
      <property name="javax.persistence.jdbc.driver" value="com.mysql.jdbc.Driver"/>
      <property name="javax.persistence.jdbc.password" value="()"/>
      <property name="javax.persistence.schema-generation.database.action" value="create"/>
    </properties>
  </persistence-unit>
</persistence>

UnitFacade.java

@Stateless
public class UnitFacade extends AbstractFacade<Unit> {

    @PersistenceContext(unitName = "primefaces-jsf-pu")
    private EntityManager em;

    @Override
    protected EntityManager getEntityManager() {
        return em;
    }

    public UnitFacade() {
        super(Unit.class);
    }
    
}

标签: javamysqljpanetbeans

解决方案


推荐阅读