Apache JPA持久通用实体

Apache JPA持久通用实体,apache,hibernate,jpa,apache-poi,persistent,Apache,Hibernate,Jpa,Apache Poi,Persistent,我需要一些JPA2.1(和ORM Hibernate)的帮助 我在数据库表中映射了一些实体(3-4),我可以将它们的行放入单独的primefaces数据表中。我还使用ApachePOI将这些数据导出到.xls文件中。 一切都很完美 现在,我需要导入并读取一个excel文件(我已经完成了),然后将新信息插入表中 我可以实现一个通用的JPA方法来插入(持久化)一系列数据吗 像这样的 EntityManager em = getEntityManager; em.getTransaction().be

我需要一些JPA2.1(和ORM Hibernate)的帮助

我在数据库表中映射了一些实体(3-4),我可以将它们的行放入单独的primefaces数据表中。我还使用ApachePOI将这些数据导出到.xls文件中。 一切都很完美

现在,我需要导入并读取一个excel文件(我已经完成了),然后将新信息插入表中

我可以实现一个通用的JPA方法来插入(持久化)一系列数据吗

像这样的

EntityManager em = getEntityManager;
em.getTransaction().begin();

Employee employee = new Employee();
employee.setFirstName("Bob");
....

em.persist(employee);
em.getTransaction().commit();
但是使用“泛型”而不是特定实体(在本例中是“雇员”),以便为所有实体创建唯一的持久方法,而不是为每个实体创建几个特定方法?(然而,它们也有不同的列名称)


谢谢大家!

您需要一种方法来确定以下内容:

  • excel行应隐含为什么实体类型
  • 各种excel列和实体属性之间的属性映射是什么
有了这些信息,您可以轻松地为每个实体类使用无参数构造函数来构造新实例,使用BeanUtils之类的库或等效库根据列到属性的映射设置属性值,然后将其持久化


从JPA持久性的角度来看,这里绝对没有什么会影响这一点。

您需要一种方法来确定以下内容:

  • excel行应隐含为什么实体类型
  • 各种excel列和实体属性之间的属性映射是什么
有了这些信息,您可以轻松地为每个实体类使用无参数构造函数来构造新实例,使用BeanUtils之类的库或等效库根据列到属性的映射设置属性值,然后将其持久化


从JPA持久性的角度来看,这里绝对没有什么会影响这一点。

谢谢您的回复。对于第一点,我有一种方法可以根据我导入excel的面板id来识别加载数据的实体。关于第二点,我必须多想想。。。我听说过那个图书馆,现在我要多看看。谢谢你的回复。对于第一点,我有一种方法可以根据我导入excel的面板id来识别加载数据的实体。关于第二点,我必须多想想。。。我听说过那个图书馆,现在我要多看看