所需要的最小的jar
包(
注意:jar
包所在路径不能含有空格或中文
)
hibernate3.jar
hibernate
-
cglib
-
repack
-
2
.1_3.jar
slf4j
-
api
-
1.5
.
2
.jar
javassist
-
3.4
.GA.jar
jta
-
1.1
.jar
antlr
-
2.7
.
6
.jar
commons
-
collections
-
3.1
.jar
dom4j
-
1.6
.
1
.jar
ejb3
-
persistence.jar
hibernate
-
annotations.jar
hibernate
-
commons
-
annotations.jar
hibernate
-
entitymanager.jar
log4j.jar
slf4j
-
log4j12.jar
创建实例类
package
com.hujuan.bean;
import
javax.persistence.Entity;
import
javax.persistence.GeneratedValue;
import
javax.persistence.Id;
@Entity
//
默认情况下表名称是根据实体类名称创建的,name可以修改表名称
@Table(name
=
"
person_table
"
)
public
class
Person {
private
Integer id;
private
String userName;
public
Person(){
}
public
Person(String userName) {
this
.userName
=
userName;
}
//
主键生成策略@GeneratedValue(strategy=GenerationType.AUTO),
//
值为AUTO表示根据数据库由Hibernate自动选择生成策略,也可以省略写@GeneratedValue
//
值为IDENTITY表示主键自增长
//
值为SEQUENCE表示主键采用序列的方式
//
值为TABLE各个数据库都通用,但效率较低
@Id @GeneratedValue
public
Integer getId() {
return
id;
}
public
void
setId(Integer id) {
this
.id
=
id;
}
public
String getUserName() {
return
userName;
}
public
void
setUserName(String userName) {
this
.userName
=
userName;
}
}
注意:因为采用的是Hibernate
所以必须有一个空的构造函数
JPA
的配置文件
JPA
规范要求配置文件在类路径的META-INF
目录下放置名称为固定的的,即persistence.xml
<
persistence
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"
version
="1.0"
>
<!--
持久化单元,transaction-type事务类型包括全局事务类型JTA和本地事务类型 RESOURCE_LOCAL
-->
<
persistence-unit
name
="jpa"
transaction-type
="RESOURCE_LOCAL"
>
<
properties
>
<!--
数据库方言
-->
<
property
name
="hibernate.dialect"
value
="org.hibernate.dialect.MySQL5Dialect"
/>
<!--
建表方式,value值为creat-drop时表示创建应用的时候建表,结束应用的时候表自动删除;
值为update表示如果映射元数据不存在则建立表,如果映射元数据存在并新增加了字段则会添加到数据库表中
-->
<
property
name
="hibernate.hbm2ddl.auto"
value
="update"
/>
<
property
name
="hibernate.connection.driver_class"
value
="org.gjt.mm.mysql.Driver"
/>
<
property
name
="hibernate.connection.username"
value
="root"
/>
<
property
name
="hibernate.connection.password"
value
="root"
/>
<
property
name
="hibernate.connection.url"
value
="jdbc:mysql://localhost:3306/jpadb"
/>
</
properties
>
</
persistence-unit
>
</
persistence
>
测试类
package
com.hujuan.test;
import
javax.persistence.EntityManager;
import
javax.persistence.EntityManagerFactory;
import
javax.persistence.Persistence;
import
org.junit.BeforeClass;
import
org.junit.Test;
import
com.hujuan.bean.Person;
public
class
PersonTest {
@BeforeClass
public
static
void
setUpBeforeClass()
throws
Exception {
}
@Test
public
void
save(){
//
EntityManagerFactory相当于Hibernate中的sessionFactory
//
Persistence.createEntityManagerFactory("jpa")与配置文件中的持久化单元名称必须相同
EntityManagerFactory factory
=
Persistence.createEntityManagerFactory(
"
jpa
"
);
//
EntityManager相当于Hibernate中session
EntityManager em
=
factory.createEntityManager();
em.getTransaction().begin();
//
保存(持久化)方法
em.persist(
new
Person(
"
Tom
"
));
em.getTransaction().commit();
em.close();
factory.close();
}
}
分享到:
相关推荐
在Java Web开发领域,Spring、Struts、Hibernate和JPA是四大核心框架,它们各自承担着不同的职责,共同构建了一个强大的企业级应用体系。本实战教程将深入探讨这些技术的集成与应用,旨在帮助开发者掌握如何高效地...
- Hibernate3.3还支持Entity Manager,它是JPA(Java Persistence API)的一部分,提供了对持久化层的抽象,使得应用程序可以与任何兼容的JPA提供者交互。 4. **数据库配置**: - 项目使用MySQL作为数据库,首先...
在IT行业中,SSH(Spring、Struts2和Hibernate)是一个非常经典的Java企业级应用开发框架组合,被广泛用于构建高效、可维护性高的Web应用程序。这个"spring3.0+hibernate3.3+struts2整合jar包"正是为了帮助开发者...
标题 "jersey+spring2.5+hibernate3.3+jpa" 指的是一种集成技术,将轻量级的RESTful服务框架Jersey、企业级应用框架Spring 2.5、持久层框架Hibernate 3.3以及Java Persistence API(JPA)结合在一起,以实现高效且...
首先,我们先关注Spring2.5与Hibernate3.3的整合,这是整个集成的第一步。 Spring2.5是Spring框架的一个版本,它提供了一个全面的编程和配置模型,用于管理企业级应用程序的复杂性。它强调依赖注入(DI)和面向切面...
在IT领域,构建高效、可扩展的Web应用是至关重要的,而"spring+springMVC+jpa+hibernate框架整合"就是一个常见的解决方案。这个整合涉及到四个关键的技术栈:Spring框架、SpringMVC、JPA(Java Persistence API)...
以下是一个简单的JPA + Hibernate的例子,展示了如何创建一个实体并进行持久化操作: 1. **定义实体类** ```java @Entity public class User { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) ...
在本项目中,我们主要探讨如何手动构建一个基于SpringMVC、Spring Data JPA、Hibernate以及FreeMarker模板引擎的Maven工程,同时实现环境切换功能。这个基础框架为日常开发工作提供了必要的支持。 首先,SpringMVC...
【标题】"用maven构建SpringMVC+JPA+Hibernate+Hsql+jetty的web项目"涉及了多个核心的Java Web开发技术,这里我们将深入探讨这些技术以及如何将它们整合到一起。 1. Maven:Maven是Apache的一个开源项目,它是一个...
在Java世界中,Java Persistence API(JPA)和Hibernate是两个非常重要的持久层框架,用于管理应用程序中的对象-关系映射(ORM)。JPA是一种标准的API,而Hibernate是其最流行的实现之一。本教程将指导你如何搭建一...
描述中同样强调了这个主题,暗示了压缩包内可能包含了一个演示或教程,讲解如何将这三个流行的技术——Spring 3.0、Struts 2.2和Hibernate 3.3——整合在一起。 **Spring 3.0** 是一个全面的Java应用框架,提供依赖...
这是整合SpringMVC+Spring+SpringDataJPA+Hibernate简单的实现登录的功能,用的是mysql数据库,这是一个web Project 如果你用的是JavaEE6那么你要注意bean-validator.jar和weld-osgi-bundle.jar与slf4j的jar包冲突。...
"spring3+springmvc+jpa+hibernate多数据源"是一个示例项目,它演示了如何在一个应用中集成Spring 3、Spring MVC、JPA 2.0以及Hibernate,以实现对多个数据源的支持。下面将详细介绍这些技术及其集成的关键点。 **...
在本项目中,我们关注的是一个经典的Java Web开发技术栈:Spring 3.0、Hibernate 3.3以及MySQL 8.0的整合。这个组合是企业级应用中常见的技术选型,它们各自承担着不同的职责,共同构建了一个强大、灵活且可扩展的...
标题“spring2.5+strut2.0+hibernate3.3集成”涉及到的是一个经典的Java企业级开发框架组合,这在2000年代末至2010年初是非常流行的技术栈。这个集成旨在提供一个统一的、高效且可扩展的平台来构建Web应用程序。下面...
而**Hibernate**则是一个实现了JPA规范的开源ORM框架,它简化了数据库操作,使得开发者可以使用Java对象来操作数据库,而无需编写大量的SQL语句。 在**JPA + Hibernate**的例子中,通常会涉及以下几个核心概念: 1...
这个"Spring2.5+Structs2+Hibernate3.3框架例子"是一个经典的组合,旨在帮助初学者理解这些框架如何协同工作,构建高效的企业级应用程序。 **Spring框架**:Spring 是一个全面的后端开发框架,它提供了依赖注入(DI...
Flex 是一个高效、免费的开源框架,可用于构建具有表现力的 Web应用程序,这些应用程序利用Adobe Flash Player和Adobe AIR, 运行时跨浏览器、桌面和操作系统实现一致的部署。虽然只能使用 Flex 框架构建 Flex应用...
在这个项目中,Hibernate通过JPA与MySQL数据库进行通信,存储和检索应用程序的数据。 项目中的源码包含了整合这些技术的所有必要组件,包括配置文件、实体类、DAO(数据访问对象)接口、服务类和控制器。开发者可以...
标题 "ssh2(struts2+spring2.5+hibernate3.3+ajax)带进度条文件上传(封装成标签)" 涉及到的是一个基于Java Web的项目,利用了Struts2、Spring2.5、Hibernate3.3和Ajax技术,实现了文件上传并带有进度条显示的功能...