欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

java使用JPA删除记录,javajpa删除,package cn.o

来源: javaer 分享于  点击 29709 次 点评:68

java使用JPA删除记录,javajpa删除,package cn.o


package cn.outofmemory.snippets.enterprise;import java.util.Date;import javax.persistence.EntityManager;import javax.persistence.EntityManagerFactory;import javax.persistence.Persistence;import javax.persistence.Query;public class DeleteWithCondition {    public static void main(String[] args) {        EntityManagerFactory emf = Persistence.createEntityManagerFactory("MyPersistenceUnit");        EntityManager em = emf.createEntityManager();        // create entities        em.getTransaction().begin();        Employee employee = new Employee();        employee.setName("Jack");        employee.setSurname("Thomson");        employee.setTitle("QA Engineer");        employee.setCreated(new Date());        em.persist(employee);        employee = new Employee();        employee.setName("John");        employee.setSurname("Peterson");        employee.setTitle("Software Engineer");        employee.setCreated(new Date());        em.persist(employee);        employee = new Employee();        employee.setName("Mary");        employee.setSurname("Nicholson");        employee.setTitle("Project Manager");        employee.setCreated(new Date());        em.persist(employee);        em.getTransaction().commit();        // delete with condition        em.getTransaction().begin();        Query query = em.createQuery("DELETE FROM Employee e WHERE title like '%Engineer%'");        long rows = query.executeUpdate();        System.out.println("Rows deleted: " + rows);        em.getTransaction().commit();        em.close();        emf.close();    }}
package cn.outofmemory.snippets.enterprise;import java.util.Date;import javax.persistence.Entity;import javax.persistence.GeneratedValue;import javax.persistence.GenerationType;import javax.persistence.Id;@Entitypublic class Employee {    @Id    @GeneratedValue(strategy=GenerationType.AUTO)    private Long id;    private String name;    private String surname;    private String title;    private Date created;    public Long getId() {        return id;    }    public void setId(Long id) {        this.id = id;    }    public String getName() {        return name;    }    public void setName(String name) {        this.name = name;    }    public String getSurname() {        return surname;    }    public void setSurname(String surname) {        this.surname = surname;    }    public String getTitle() {        return title;    }    public void setTitle(String title) {        this.title = title;    }    public Date getCreated() {        return created;    }    public void setCreated(Date created) {        this.created = created;    }    @Override    public String toString() {        return "Employee [id=" + id + ", name=" + name + ", surname=" + surname                + ", title=" + title + "]";    }}

persistence.xml

<persistence 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"    version="2.0">    <persistence-unit name="MyPersistenceUnit" transaction-type="RESOURCE_LOCAL">        <provider>org.hibernate.ejb.HibernatePersistence</provider>        <properties>            <property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5InnoDBDialect" />            <property name="hibernate.hbm2ddl.auto" value="update" />            <property name="hibernate.connection.driver_class" value="com.mysql.jdbc.Driver" />            <property name="hibernate.connection.username" value="jcg" />            <property name="hibernate.connection.password" value="jcg" />            <property name="hibernate.connection.url" value="jdbc:mysql://localhost/companydb" />        </properties>    </persistence-unit></persistence>

输出:

Rows deleted: 2
相关栏目:

用户点评