1.用NetBeans+Sun Java System Application Server所带的数据库,derby DB,写该项目
1).建立项目:新建项目->General->java Application
2).导入需要的jar包:JDK/lib下
appserv-rt.jar,javaee.jar
TopLinkEssentials:toplink-essentials.jar,toplink-essentials-agent.jar
Java DB Driver:derby.jar,derbyclient.jar,derbynet.jar
3).建立持久单元:新建文件->Persistence->Persistence Unit[选择数据源]
会生成META-INF/persistence.xml,内容如下
4).建立实体:新建文件->Persistence->Entity class
5.建立服务层:新建文件:->java classes->java class
6.)新建测试类进行测试:
1).建立项目:新建项目->General->java Application
2).导入需要的jar包:JDK/lib下
appserv-rt.jar,javaee.jar
TopLinkEssentials:toplink-essentials.jar,toplink-essentials-agent.jar
Java DB Driver:derby.jar,derbyclient.jar,derbynet.jar
3).建立持久单元:新建文件->Persistence->Persistence Unit[选择数据源]
会生成META-INF/persistence.xml,内容如下
<?
xml version="1.0" encoding="UTF-8"
?>
< persistence version ="1.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_1_0.xsd" >
< persistence-unit name ="JavaApplication3PU" transaction-type ="RESOURCE_LOCAL" >
< provider > oracle.toplink.essentials.ejb.cmp3.EntityManagerFactoryProvider </ provider >
< class > day6.entity.Account </ class >
< properties >
< property name ="toplink.jdbc.url" value ="jdbc:derby://localhost:1527/sample" />
< property name ="toplink.jdbc.user" value ="app" />
< property name ="toplink.jdbc.driver" value ="org.apache.derby.jdbc.ClientDriver" />
< property name ="toplink.jdbc.password" value ="app" />
< property name ="toplink.ddl-generation" value ="drop-and-create-tables" />
</ properties >
</ persistence-unit >
</ persistence >
< persistence version ="1.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_1_0.xsd" >
< persistence-unit name ="JavaApplication3PU" transaction-type ="RESOURCE_LOCAL" >
< provider > oracle.toplink.essentials.ejb.cmp3.EntityManagerFactoryProvider </ provider >
< class > day6.entity.Account </ class >
< properties >
< property name ="toplink.jdbc.url" value ="jdbc:derby://localhost:1527/sample" />
< property name ="toplink.jdbc.user" value ="app" />
< property name ="toplink.jdbc.driver" value ="org.apache.derby.jdbc.ClientDriver" />
< property name ="toplink.jdbc.password" value ="app" />
< property name ="toplink.ddl-generation" value ="drop-and-create-tables" />
</ properties >
</ persistence-unit >
</ persistence >
4).建立实体:新建文件->Persistence->Entity class
package
day6.entity;
import java.io.Serializable;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
@Entity
public class Account implements Serializable {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
private String name;
public Account() {
}
public String toString() {
return "day6.entity.Account[id=" + getId() + "]";
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
import java.io.Serializable;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
@Entity
public class Account implements Serializable {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
private String name;
public Account() {
}
public String toString() {
return "day6.entity.Account[id=" + getId() + "]";
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
package
day6.service;
import day6.entity.Account;
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;
public class Service {
private static EntityManagerFactory emf = Persistence.createEntityManagerFactory("JavaApplication3PU");
public Service() { }
public void persist(Account account) {
EntityManager em = emf.createEntityManager();
em.getTransaction().begin();
try {
em.persist(account);
em.getTransaction().commit();
} catch (Exception e) {
e.printStackTrace();
em.getTransaction().rollback();
} finally {
em.close();
}
}
}
import day6.entity.Account;
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;
public class Service {
private static EntityManagerFactory emf = Persistence.createEntityManagerFactory("JavaApplication3PU");
public Service() { }
public void persist(Account account) {
EntityManager em = emf.createEntityManager();
em.getTransaction().begin();
try {
em.persist(account);
em.getTransaction().commit();
} catch (Exception e) {
e.printStackTrace();
em.getTransaction().rollback();
} finally {
em.close();
}
}
}
package
day6.test;
import day6.entity.Account;
import day6.service.Service;
public class AccountTest {
public AccountTest() { }
public static void main(String[] args) {
Account account=new Account();
account.setId(1L);
account.setName("hoolie");
Service service=new Service();
service.persist(account);
}
}
import day6.entity.Account;
import day6.service.Service;
public class AccountTest {
public AccountTest() { }
public static void main(String[] args) {
Account account=new Account();
account.setId(1L);
account.setName("hoolie");
Service service=new Service();
service.persist(account);
}
}