日期:2014-05-19 浏览次数:20764 次
package lee;
import java.util.List;
import javax.persistence.*;
import org.crazyit.model.*;
public class JpaQs
{
//一个持久单元对应一个EntityManagerFactory
private static final EntityManagerFactory emf =
Persistence.createEntityManagerFactory("qs");
public static void main(String[] args)
{
final EntityManager em = emf.createEntityManager();
News news = new News();
news.setTitle("asd");
news.setContent("zxc");
try
{
//开启事务
em.getTransaction().begin();
//保存实体
em.persist(news);
//提交事务
em.getTransaction().commit();
}
finally
{
em.close();
}
}
}
package org.crazyit.model;
import javax.persistence.*;
@Entity
@Table(name="hello")
public class News
{
//消息类的标识属性
@Id /* 用于修饰标识属性 */
/* 指定该主键列的主键生成策略 */
@GeneratedValue(strategy=GenerationType.IDENTITY)
private int id;
//消息标题
/* @Column指定该Field映射的列信息,此处指定了列名、长度 */
@Column(name="name" , length=50)
private String title;
//消息内容
/* @Column指定该Field映射的列信息,此处指定允许为null */
@Column(nullable=true)
private String content;
//构造器
public News()
{
}
//标识属性的setter和getter方法
public void setId(int id)
{
this.id = id;
}
public int getId()
{
return (this.id);
}
//消息标题的setter方法和getter方法
public void setTitle(String title)
{
this.title = title;
}
public String getTitle()
{
return (this.title);
}
//消息内容的setter方法和getter方法
public void setContent(String content)
{
this.content = content;
}
public String getContent()
{
return (this.content);
}
}
<?xml version="1.0" encoding="GBK"?>
<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">
<!-- 为持久化单元指定名称,并通过transaction-type指定事务类型
transaction-type属性合法的属性值有JTA、RESOURCE_LOCAL两个-->
<persistence-unit name="qs" transaction-type="RESOURCE_LOCAL">
<!-- 指定javax.persistence.spi.PersistenceProvider实现类 -->
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<!-- 列出该应用需要访问的所有的Entity类,
也可以用 <mapping-file> 或<jar-file>元素来定义 -->
<class>org.crazyit.model.News</class>
<!-- properties元素用于为特定JPA实现包配置属性 -->
<!-- 下面列举的是Hibernate JPA实现中可以配置的部分属性 -->
<properties>
<!-- 指定连接数据库的驱动名 -->
<property name="hibernate.connection.driver_class"
value="com.mysql.jdbc.Driver"/>
<!-- 指定连接数据库的URL -->
<property name="hibernate.connection.url"
value="jdbc:mysql://localhost:3306/test"/>
<!-- 指定连接数据库的用户名 --&