使用JPA持久化對象的步驟
此處有個小問題,在創建JPA工程的時候,提示下圖這樣一個問題,at least one user library must be selected,不解決則無法創建這個工程,網上搜索了下,參考http://www.cnblogs.com/lj95801/p/5001882.html解決了此問題。
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="jpa-1"><!-- 配置使用什么ORM產品來做作為JPA的實現 1.實際上配置的是javax.persistence.spi.PersistencePRovider接口的實現類 2.若JPA項目中只有一個JPA實現產品,則也可以不配置該節點 --><provider>org.hibernate.ejb.HibernatePersistence</provider><class>com.abcd.helloworld.Customer</class><properties><!-- 鏈接數據庫的基本信息 --><property name="javax.persistence.jdbc.driver" value="com.MySQL.jdbc.Driver" /><property name="javax.persistence.jdbc.url" value="jdbc:mysql://localhost/jpa" /><property name="javax.persistence.jdbc.user" value="test" /><property name="javax.persistence.jdbc.passWord" value="1234" /><!-- 配置JPA實現產品的基本屬性,配置Hibernate的基本屬性 --><property name="hibernate.hbm2ddl.auto" value="update" /><property name="hibernate.show_sql" value="true" /><property name="hibernate.format_sql" value="true" /><property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5InnoDBDialect"/></properties></persistence-unit></persistence>
```
測試代碼
```
//1.創建EntityManagerFactoryString persistenceUnitName = "jpa-1";EntityManagerFactory factory = Persistence.createEntityManagerFactory(persistenceUnitName);//2.創建 EntityManageerEntityManager manager = factory.createEntityManager();//3.開啟事務EntityTransaction traction = manager.getTransaction();traction.begin();System.out.println(traction);//4.進行持久化操作Customer customer = new Customer();customer.setAge(11);customer.setEmail("[email protected]");customer.setLastName("tom");manager.persist(customer);//5.提交事務traction.commit();//6.關閉EntityManagermanager.close();//7.關閉EntityManagerFactoryfactory.close();
```
|
新聞熱點
疑難解答