当前位置:数据分析 > 使用JPA操作Oracle数据库简单容易(jpa操作oracle)

使用JPA操作Oracle数据库简单容易(jpa操作oracle)

  • 发布:2023-09-29 05:22

使用JPA操作Oracle数据库:简单容易

Java Persistence API (JPA) 提供了管理关系数据库(包括 Oracle 数据库)的标准方法。它允许开发人员使用对象来表示数据库中的数据,从而简化了使用数据库的过程并带来更好的可读性和可维护性。在这篇文章中,我们将介绍如何使用JPA来操作Oracle数据库,并展示使用JPA来操作Oracle数据库是多么简单、容易。

准备

在使用JPA操作Oracle数据库之前,我们需要确保以下几个方面:

1。已安装Java JDK并配置环境变量。

2。您已经安装了Oracle数据库并知道如何创建用户、表和数据。

3。您已经安装了用于开发 Java 应用程序的 Eclipse IDE。

第一步:创建Maven项目

我们需要在Eclipse IDE中创建一个Maven项目。在Eclipse中,打开“文件”菜单,选择“新建”->“项目”->“Maven项目”,然后选择“创建一个简单项目”,并在下一步中输入项目名称和其他详细信息。

第2步:添加JPA依赖

我们需要在Maven项目的pom.xml文件中添加JPA依赖。在pom.xml文件中添加以下代码:

org.hibernate

休眠实体管理器

5.4.22.决赛

com.oracle.database.jdbc

ojdbc8

19.3.0.0

这个 pom.xml 文件将下载所需的依赖文件并将它们添加到我们的 Maven 项目中。

第3步:配置JPA连接参数

我们需要在persistence.xml文件中配置JPA连接参数。在src/mn/resources目录下,创建一个名为persistence.xml的文件,并添加以下内容:

xmlns:xsi=”http://www.sychzs.cn/2001/XMLSchema-instance”

版本=”2.1″>

org.hibernate.jpa.HibernatePersistenceProvider

com.example.entity.Person

在此文件中,我们将持久化单元的名称指定为oraclePU。该属性将在下面的代码中使用。我们使用 Hibernate 作为 JPA 实现提供者和 Oracle JDBC 驱动程序来连接到 Oracle 数据库。

第四步:创建实体类

我们需要创建一个实体类(例如Person类)。该类将映射到数据库中的表。例如,下面是一个简单的 Person 实体类定义:

@实体

@Table(姓名=“人”)

公开课人{

@Id

@GenerateValue(策略 = GenerationType.IDENTITY)

@Column(名称=“ID”)

私人长ID;

@Column(name = “FIRST_NAME”)

私有字符串firstName;

@Column(name = “LAST_NAME”)

私有字符串姓氏;

// setter 和 getter 方法

}

在此示例中,我们使用 JPA 注释来定义实体类中与数据库表中的列关联的属性。 @Id注解将实体类中的属性标记为主键列; @GenerateValue 注释自动为此列设置唯一值; @Column注解定义了属性名和列名之间的对应关系。

第5步:创建DAO层

DAO(数据访问对象)层是数据管理的核心层。这是使用JPA操作Oracle数据库的关键。下面是一个简单的PersonDAO类的定义,用于进行Person实体类相关的数据操作:

公共类 PersonDAO {

私有静态EntityManagerFactory emf;

静态{

emf = Persistence.createEntityManagerFactory("oraclePU");

}

public static void addPerson(Person person) {

EntityManager em = emf.createEntityManager();

em.getTransaction().begin();

em.persist(人);

em.getTransaction().commit();

em.close();

}

public static void updatePerson(Person person) {

EntityManager em = emf.createEntityManager();

em.getTransaction().begin();

em.merge(人);

em.getTransaction().commit();

em.close();

}

公共静态无效deletePerson(长ID){

EntityManager em = emf.createEntityManager();

em.getTransaction().begin();

人 person = em.find(Person.class, id);

em.remove(人);

em.getTransaction().commit();

em.close();

}

公共静态Person getPersonById(长id){

EntityManager em = emf.createEntityManager();

人 person = em.find(Person.class, id);

em.close();

归人;

}

公共静态列表 getAllPersons() {

EntityManager em = emf.createEntityManager();

字符串jpql =“从人p中选择p”;

TypedQuery 查询 = em.createQuery(jpql, Person.class);

列出人员 = query.getResultList();

em.close();

回国者;

}

}

该DAO类包含添加、更新、删除、查询单个记录和查询所有记录的方法。每个方法都使用 EntityManager 对象。该类中的方法是使用JPA API标准实现的,也是JPA操作Oracle数据库的核心代码。

第6步:测试代码

下面是一个简单的测试代码,可以验证我们上面的JPA和DAO层代码是否正常工作:

公开课MnApp {

public static void mn(String[] args) {

人 person1 = new Person();

person1.setFirstName(“约翰”);

person1.setLastName(“Doe”);

PersonDAO.addPerson(person1);

人 person2 = PersonDAO.getPersonById(1);

person2.setFirstName(“Jane”);

PersonDAO.updatePerson(person2);

列出人员 = PersonDAO.getAllPersons();

people.forEach(person -> System.out.println(person.getFirstName() + ” ” + person.getLastName()));

PersonDAO.deletePerson(1);

}

}

该程序创建一个新的 Person 对象,将其保存到数据库中,并从数据库中获取该对象并更改名字。之后,我们循环遍历整个数据库表并打印每个人的名字。程序将删除 Person 对象。

总结

JPA操作Oracle数据库是一个简单易行的过程。我们只需要按照上面的步骤就可以在Java应用程序中使用JPA读写Oracle数据库了。当然,这里不涉及更高级的JPA操作,但相信读者在学习完这个例子之后,一定能够对JPA有更深入的了解和掌握JPA的基本用法。

相关文章