了解常用注解:
@Entity
@Id
@Table
@GeneratedValue
@Transient
@Column
采用如下注解会默认采用数据库的主键生成能力,相当于hibernate中的native
@GeneratedValue相当于@GeneratedValue(strategy=GenerationType.AUTO)
了解如何采用hibernate的uuid生成主键
package com.hjc.hibernate;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Transient;
@Entity
@Table(name="t_user1")
public class User1 {
private int id;
private String name;
private int age;
@Id
//采用数据库自增方式生成主键
//@GeneratedValue(strategy=GenerationType.AUTO)
@GeneratedValue
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
@Column(name="user_name", length=30, nullable=false, unique=true)
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
//年龄不持久化
@Transient
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
package com.hjc.hibernate;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;
@Entity
@Table(name="t_user2")
public class User2 {
private int id;
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
}
package com.hjc.hibernate;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;
@Entity
@Table(name="t_user3")
public class User3 {
private int id;
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Id
@GeneratedValue(strategy=GenerationType.TABLE)
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
}
package com.hjc.hibernate;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
import org.hibernate.annotations.GenericGenerator;
@Entity
@Table(name="t_user4")
public class User4 {
private String id;
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
//采用hibernate uuid生成器
@Id
@GenericGenerator(name="myIdGenerator",strategy="uuid")
@GeneratedValue(generator="myIdGenerator")
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
}
public void testSave1() {
Session session = null;
try {
session = HibernateUtils.getSession();
session.beginTransaction();
User1 user = new User1();
user.setName("李四11");
session.save(user);
session.getTransaction().commit();
}catch(Exception e) {
e.printStackTrace();
session.getTransaction().rollback();
}finally {
HibernateUtils.closeSession(session);
}
}
public void testSave2() {
Session session = null;
try {
session = HibernateUtils.getSession();
session.beginTransaction();
User2 user = new User2();
user.setName("李四");
session.save(user);
session.getTransaction().commit();
}catch(Exception e) {
e.printStackTrace();
session.getTransaction().rollback();
}finally {
HibernateUtils.closeSession(session);
}
}
public void testSave3() {
Session session = null;
try {
session = HibernateUtils.getSession();
session.beginTransaction();
User3 user = new User3();
user.setName("张三");
session.save(user);
session.getTransaction().commit();
}catch(Exception e) {
e.printStackTrace();
session.getTransaction().rollback();
}finally {
HibernateUtils.closeSession(session);
}
}
public void testSave4() {
Session session = null;
try {
session = HibernateUtils.getSession();
session.beginTransaction();
User4 user = new User4();
user.setName("张三");
session.save(user);
session.getTransaction().commit();
}catch(Exception e) {
e.printStackTrace();
session.getTransaction().rollback();
}finally {
HibernateUtils.closeSession(session);
}
}
分享到:
相关推荐
**Hibernate JPA 框架详解** Hibernate JPA(Java Persistence API)是Java平台上的一个标准,用于管理和持久化应用程序中的对象。它提供了一种在Java应用和关系数据库之间进行数据映射的方法,使得开发者可以使用...
以上就是使用Hibernate JPA进行数据库操作的基本步骤。在实际开发中,可能还需要配置事务管理、缓存、查询优化等高级特性。总的来说,Hibernate JPA为Java开发者提供了一种方便、高效的方式来处理数据库,降低了与...
这个项目"springmvc spring hibernate jpa maven 整合"就是这样一个例子,它整合了四个关键的技术组件:Spring MVC、Spring、Hibernate和JPA,以及依赖管理工具Maven。让我们详细探讨这些技术及其在项目中的作用。 ...
在Java世界中,Hibernate JPA(Java Persistence API)是一种广泛使用的对象关系映射(ORM)框架,它允许开发者使用面向对象的方式来操作数据库。本压缩包包含的文件是进行Hibernate JPA开发所需的核心库,让我们...
在IT行业中,构建一个完整的Web应用常常涉及到多个技术的整合,本示例中提到了"HibernateJPA+Struts2.0+MariaDB"的组合,这是一个经典的Java Web开发架构,用于实现用户登录功能。接下来,我们将深入探讨这些技术...
使用Hibernate JPA,可以轻松实现对数据库的基本CRUD(创建、读取、更新、删除)操作。例如,通过`EntityManager`和`EntityManagerFactory`来实例化和管理实体。 7. JPQL(Java Persistence Query Language): ...
Hibernate JPA,全称为Java Persistence API,是Java领域中用于管理数据库对象的一种规范,它为Java应用程序提供了统一的ORM(对象关系映射)解决方案。Hibernate作为JPA的一个实现,极大地简化了数据库操作,使得...
- **基本类型映射**:如`@Basic`注解用于将Java基本类型或包装类映射到数据库字段。 - **关系映射**:`@ManyToOne`,`@OneToMany`,`@OneToOne`,`@ManyToMany`注解用于处理实体间的关系。 - **复合主键**:`@...
### Hibernate JPA 知识点详解 #### 一、Hibernate JPA 概述 **Hibernate**作为当前最为流行的对象关系映射...了解并掌握Hibernate JPA的基本原理及其配置使用方法,对于提高开发效率和代码质量都具有重要意义。
Hibernate JPA提供了JPA规范的全部功能,并且在JPA的基础上扩展了一些特性,如更强大的 Criteria 查询、HQL(Hibernate Query Language)等。Hibernate JPA因其灵活性和广泛社区支持而受到欢迎,尤其是在处理复杂...
Hibernate JPA,全称为Hibernate Java Persistence API,是Hibernate组织提供的一种基于Java平台的企业级对象关系映射(ORM)解决方案,它实现了Java Persistence API(JPA),使得Java开发者能够方便地在关系数据库...
在Java开发中,Hibernate是一个广泛使用的对象关系映射(ORM)框架,而Java Persistence API (JPA) 是Java平台上的标准ORM规范。两者结合,可以让开发者轻松地将数据库表与Java类进行绑定,从而实现数据的CRUD操作。...
1. **自动Repository接口实现**:只需要定义一个接口,Spring Data JPA就能自动生成对应的实现,包括基本的CRUD操作。 2. **查询方法命名**:通过方法名即可自动生成对应的SQL或HQL查询,如`findAllByAgeAndName(int...
而Hibernate作为一款强大的对象关系映射(ORM)工具,使得开发者可以更方便地操作数据库。JPA(Java Persistence API)是Java平台上的一个标准,它定义了ORM的API。JPA2是其第二个主要版本,引入了许多改进和新特性...
其中,Hibernate作为一款功能强大的ORM框架,极大地简化了Java对象与数据库表之间的映射关系处理。而JPA(Java Persistence API)是Java EE规范的一部分,为ORM提供了标准的接口。`hibernate-jpa-2.1-api-1.0.0....
《基于Hibernate JPA的最新实践解析》 在现代Java开发中,对象关系映射(ORM)框架如Hibernate已经成为必备工具,极大地简化了数据库操作。本文将深入探讨基于Hibernate的Java Persistence API (JPA)的最新应用案例...
Hibernate是一个非常知名的Java ORM(对象关系映射)框架,并且它是JPA(Java Persistence API)和EJB 3的重要贡献者之一。ORM框架的主要目标是实现业务实体类(Entity class)或业务对象(Business Object)与关系...
3. 考虑使用`@ElementCollection`注解进行JPA2.1以上的数组映射,以获取更简洁的配置和更好的性能。 4. 为了保持数据一致性,确保索引列和元素列在数据库中有相应的约束。 以上就是关于`hibernate array 数组映射`...
在JavaSE环境中使用Hibernate JPA(Java Persistence API)进行数据持久化操作,需要引入一系列的jar包来构建完整的开发环境。这些jar包包含了对JPA规范的实现、Hibernate ORM框架的核心功能以及相关的依赖库。以下...