使用JPA持久化對象的步驟
此處有個小問題,在創(chuàng)建JPA工程的時候,提示下圖這樣一個問題,at least one user library must be selected,不解決則無法創(chuàng)建這個工程,網(wǎng)上搜索了下,參考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產(chǎn)品來做作為JPA的實現(xiàn) 1.實際上配置的是javax.persistence.spi.PersistencePRovider接口的實現(xiàn)類 2.若JPA項目中只有一個JPA實現(xiàn)產(chǎn)品,則也可以不配置該節(jié)點 --><provider>org.hibernate.ejb.HibernatePersistence</provider><class>com.abcd.helloworld.Customer</class><properties><!-- 鏈接數(shù)據(jù)庫的基本信息 --><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實現(xiàn)產(chǎn)品的基本屬性,配置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.創(chuàng)建EntityManagerFactoryString persistenceUnitName = "jpa-1";EntityManagerFactory factory = Persistence.createEntityManagerFactory(persistenceUnitName);//2.創(chuàng)建 EntityManageerEntityManager manager = factory.createEntityManager();//3.開啟事務(wù)EntityTransaction traction = manager.getTransaction();traction.begin();System.out.println(traction);//4.進(jìn)行持久化操作Customer customer = new Customer();customer.setAge(11);customer.setEmail("abc@abcd.com");customer.setLastName("tom");manager.persist(customer);//5.提交事務(wù)traction.commit();//6.關(guān)閉EntityManagermanager.close();//7.關(guān)閉EntityManagerFactoryfactory.close();
```
新聞熱點
疑難解答