1.POJO
Employee.java
package pojo; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.Table; @Entity @Table(name="T_EMPLOYEE") public class Employee { @Id private String id; private String name; private double salary; public String getId() { return id; } public void setId(String id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public double getSalary() { return salary; } public void setSalary(double salary) { this.salary = salary; } @Override public String toString() { return "Employee [id=" + id + ", name=" + name + ", salary=" + salary + "]"; } }
2.Dao
EmployeeDao.java
package dao; import javax.persistence.EntityManager; import pojo.Employee; public class EmployeeDao { private EntityManager em=null; public EmployeeDao(EntityManager em) { this.em = em; } public Employee createEmployee(String id,String name,double salary){ Employee emp = new Employee(); emp.setId(id); emp.setName(name); emp.setSalary(salary); em.persist(emp); return emp; } public void removeEmployee(String id){ Employee emp = findEmployee(id); if(emp==null){ throw new RuntimeException("The employee whose id is "+ id+" is not existed"); } em.remove(emp); } public Employee findEmployee(String id){ return em.find(Employee.class,id); } public Employee updateEmployee(String id,String name,double salary){ Employee emp=findEmployee(id); if(emp==null){ throw new RuntimeException("The employee whose id is "+ id+" is not existed"); } emp.setName(name); emp.setSalary(salary); return emp; } }
3.Configuration file
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="emp" transaction-type="RESOURCE_LOCAL"> <provider>org.hibernate.ejb.HibernatePersistence</provider> <properties> <property name="javax.persistence.jdbc.driver" value="com.mysql.jdbc.Driver" /> <property name="javax.persistence.jdbc.url" value="jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8" /> <property name="javax.persistence.jdbc.user" value="root" /> <property name="javax.persistence.jdbc.password" value="root" /> </properties> </persistence-unit> </persistence>
4. Test class
Main.java
package test; import javax.persistence.EntityManager; import javax.persistence.EntityManagerFactory; import javax.persistence.Persistence; import pojo.Employee; import dao.EmployeeDao; public class Main { public static void main(String[] args) { EntityManagerFactory emf=Persistence.createEntityManagerFactory("emp"); EntityManager em=emf.createEntityManager(); EmployeeDao employeeDao = new EmployeeDao(em); // create employee em.getTransaction().begin(); employeeDao.createEmployee("1", "xiao", 100); em.getTransaction().commit(); // update employee em.getTransaction().begin(); employeeDao.updateEmployee("1", "xiao", 1000); em.getTransaction().commit(); // select employee Employee e=employeeDao.findEmployee("1"); System.out.println(e); // remove employee em.getTransaction().begin(); employeeDao.removeEmployee("1"); em.getTransaction().commit(); } }
相关推荐
**JPA入门(一)** Java Persistence API(JPA)是Java平台上的一个标准,用于对象关系映射(ORM),它允许开发人员使用面向对象的编程模型来操作数据库。这篇入门教程将帮助初学者理解JPA的基本概念和用法。 **1....
jpa从入门到放弃,你值得拥有!!!!!
### JPA入门实战教程知识点详解 #### 一、JPA简介与重要性 - **JPA定义**: JPA(Java Persistence API)是一种为Java应用程序提供持久化能力的标准接口,允许开发者将Java对象映射到关系型数据库中的表,从而简化...
'SpringDataJPA从入门到精通'以SpringBoot为技术基础 从入门到精通 由浅入深地介绍SpringDataJPA的使用。有语法 有实践 有原理剖析。'SpringDataJPA从入门到精通'分为12章 内容包括整体认识JPA、JPA基础查询方法、...
【Spring Data JPA 入门实例】 Spring Data JPA 是 Spring 框架的一个模块,它简化了数据库访问层(DAO)的开发,通过提供自动化的 Repository 实现,使得开发者无需编写大量的 CRUD(创建、读取、更新、删除)代码...
Spring Framework对JPA的支持本身就很强大,我们不用理会EntityManager的创建,事务处理等等.Spring又进步了,只需要声明一下方法接口,Spring Data JPA可以帮你完成数据访问层的实现代码,开发者把更多的心思放在业务...
在"Spring Data JPA入门项目02"中,你将学习如何在实际项目中应用这些概念,创建一个用户管理应用,其中包括用户排序和分页功能。通过对`usermanage1_2`这个文件的学习,你可以了解到如何配置Spring Data JPA,创建...
JPA从入门到精通 推荐
Spring Data JPA是Spring框架的一个模块,用于简化Java Persistence API(JPA)的使用,它提供了数据访问的抽象层,让开发者能够以更简洁的方式与数据库进行交互。本入门例子将帮助你理解并掌握Spring Data JPA的...
在这个"Spring Data JPA入门项目01"中,我们将探讨如何利用Spring Data JPA来实现基本的CRUD(创建、读取、更新和删除)功能。 首先,我们需要在项目中引入Spring Data JPA的相关依赖。这通常在Maven或Gradle的配置...
**Spring Data JPA 入门详解** Spring Data JPA 是 Spring 框架的一个模块,它简化了数据库访问,提供了一种声明式的方式来处理数据访问层的 CRUD(创建、读取、更新、删除)操作。它与 Java Persistence API (JPA)...
本篇文章将深入探讨Hibernate JPA入门案例所需的依赖,以及如何配置MySQL驱动。 首先,我们需要理解Hibernate和JPA的关系。Hibernate是最初的ORM框架,提供了全面的功能来处理数据库交互。而JPA是Java EE的一部分,...
**事物(Transaction)JPA 入门** Java Persistence API(JPA)是Java平台上的一个标准,用于管理和持久化Java对象到关系数据库。它提供了一种面向对象的方式来处理数据库操作,使得开发人员可以避免直接编写SQL,...
在"JSF+JPA入门开发示例"中,你可能会学习到以下关键知识点: 1. **JSF生命周期**:JSF组件有六个主要阶段,包括恢复视图、应用请求值、处理验证、更新模型值、调用应用程序和渲染响应。理解每个阶段的功能对于调试...
在"JPA快速入门初步(myeclipse)"中,我们将学习如何在MyEclipse中设置JPA项目,理解基本的JPA概念,以及如何使用注解来定义实体和映射数据库表。 1. **JPA基础概念**: - **实体(Entity)**: 表示数据库中的表...