Hibernate EntityManager
Hibernate Gossip: Hibernate EntityManager
Hibernate Core, Annotations, EntityManager library
antlr.jar
asm-attrs.jar
asm.jar
cglib-2.1.3.jar
commons-collections-2.1.1.jar
commons-logging-1.0.4.jar
dom4j-1.6.1.jar
ejb3-persistence.jar
hibernate-annotations.jar
hibernate-commons-annotations.jar
hibernate-entitymanager.jar
hibernate3.jar
javassist.jar
jta.jar
...
Apache Derby JDBC driver
derby.jar
--Entity - Usr.java
@javax.persistence.Entity
public class Usr {
@javax.persistence.Id
private int id;
private String name;
public Usr() {}
public int getId() {return id;}
public void setId(int id) {this.id = id;}
public String getName() {return name;}
public void setName(String name) {this.name = name;}
}
--META-INF/persistence.xml
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="1.0" xmlns="http://java.sun.com/xml/ns/persistence">
<persistence-unit name="HibernateEntityManager" transaction-type="RESOURCE_LOCAL">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<class>Usr</class>
<properties>
<property name="hibernate.connection.driver_class" value="org.apache.derby.jdbc.EmbeddedDriver"/>
<property name="hibernate.connection.url" value="jdbc:derby:testdb;create=true"/>
<property name="hibernate.connection.username" value="user"/>
<property name="hibernate.connection.password" value="password"/>
<property name="hibernate.hbm2ddl.auto" value="create"/>
<property name="hibernate.show_sql" value="true"/>
<property name="hibernate.format_sql" value="true"/>
</properties>
</persistence-unit>
</persistence>
--Main class
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
public class Main {
private static Log log = LogFactory.getLog(Main.class);
public static void main(String[] args) {
EntityManagerFactory emf = Persistence
.createEntityManagerFactory("HibernateEntityManager");
try {
EntityManager em = emf.createEntityManager();
Usr user = new Usr();
user.setId(1);
user.setName("hello world");
em.getTransaction().begin();
try {
em.merge(user);
em.flush();
} finally {
em.getTransaction().commit();
}
log.info(em.find(Usr.class, 1).getName());
} finally {
emf.close();
}
}
}
/* Stdout
Hibernate:
select
usr0_.id as id0_0_,
usr0_.name as name0_0_
from
Usr usr0_
where
usr0_.id=?
Hibernate:
insert
into
Usr
(name, id)
values
(?, ?)
... Main main
... hello world
*/
沒有留言:
張貼留言