`

hibernate jpa基本映射

阅读更多

 

了解常用注解:

       @Entity

       @Id

       @Table

       @GeneratedValue

       @Transient

       @Column

      

采用如下注解会默认采用数据库的主键生成能力,相当于hibernate中的native

@GeneratedValue相当于@GeneratedValue(strategy=GenerationType.AUTO)

 

了解如何采用hibernateuuid生成主键 

 

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 jar包

    **Hibernate JPA 框架详解** Hibernate JPA(Java Persistence API)是Java平台上的一个标准,用于管理和持久化应用程序中的对象。它提供了一种在Java应用和关系数据库之间进行数据映射的方法,使得开发者可以使用...

    hibernate jpa 入门案例依赖jar

    以上就是使用Hibernate JPA进行数据库操作的基本步骤。在实际开发中,可能还需要配置事务管理、缓存、查询优化等高级特性。总的来说,Hibernate JPA为Java开发者提供了一种方便、高效的方式来处理数据库,降低了与...

    springmvc spring hibernate jpa maven 整合

    这个项目"springmvc spring hibernate jpa maven 整合"就是这样一个例子,它整合了四个关键的技术组件:Spring MVC、Spring、Hibernate和JPA,以及依赖管理工具Maven。让我们详细探讨这些技术及其在项目中的作用。 ...

    hibernate jpa开发需要的所有包

    在Java世界中,Hibernate JPA(Java Persistence API)是一种广泛使用的对象关系映射(ORM)框架,它允许开发者使用面向对象的方式来操作数据库。本压缩包包含的文件是进行Hibernate JPA开发所需的核心库,让我们...

    HibernateJPA+Struts2.0+MariaDB实现登录功能

    在IT行业中,构建一个完整的Web应用常常涉及到多个技术的整合,本示例中提到了"HibernateJPA+Struts2.0+MariaDB"的组合,这是一个经典的Java Web开发架构,用于实现用户登录功能。接下来,我们将深入探讨这些技术...

    Hibernate JPA 实例

    使用Hibernate JPA,可以轻松实现对数据库的基本CRUD(创建、读取、更新、删除)操作。例如,通过`EntityManager`和`EntityManagerFactory`来实例化和管理实体。 7. JPQL(Java Persistence Query Language): ...

    hibernate_ jpa.jar

    Hibernate JPA,全称为Java Persistence API,是Java领域中用于管理数据库对象的一种规范,它为Java应用程序提供了统一的ORM(对象关系映射)解决方案。Hibernate作为JPA的一个实现,极大地简化了数据库操作,使得...

    学习hibernate必读,JPA2新特征和JPA2映射的神秘之旅。

    - **基本类型映射**:如`@Basic`注解用于将Java基本类型或包装类映射到数据库字段。 - **关系映射**:`@ManyToOne`,`@OneToMany`,`@OneToOne`,`@ManyToMany`注解用于处理实体间的关系。 - **复合主键**:`@...

    Hibernate JPA

    ### Hibernate JPA 知识点详解 #### 一、Hibernate JPA 概述 **Hibernate**作为当前最为流行的对象关系映射...了解并掌握Hibernate JPA的基本原理及其配置使用方法,对于提高开发效率和代码质量都具有重要意义。

    JPA教程,包括TOPLink JPA,Hibernate JPA,Open Jpa,jpa批注

    Hibernate JPA提供了JPA规范的全部功能,并且在JPA的基础上扩展了一些特性,如更强大的 Criteria 查询、HQL(Hibernate Query Language)等。Hibernate JPA因其灵活性和广泛社区支持而受到欢迎,尤其是在处理复杂...

    hibernate-jpa.jar

    Hibernate JPA,全称为Hibernate Java Persistence API,是Hibernate组织提供的一种基于Java平台的企业级对象关系映射(ORM)解决方案,它实现了Java Persistence API(JPA),使得Java开发者能够方便地在关系数据库...

    HIbernate Jpa 生成entities

    在Java开发中,Hibernate是一个广泛使用的对象关系映射(ORM)框架,而Java Persistence API (JPA) 是Java平台上的标准ORM规范。两者结合,可以让开发者轻松地将数据库表与Java类进行绑定,从而实现数据的CRUD操作。...

    SpringMVC +Hibernate JPA+Spring-data-jpa实例

    1. **自动Repository接口实现**:只需要定义一个接口,Spring Data JPA就能自动生成对应的实现,包括基本的CRUD操作。 2. **查询方法命名**:通过方法名即可自动生成对应的SQL或HQL查询,如`findAllByAgeAndName(int...

    spring 整合 hibernate jpa2 实例

    而Hibernate作为一款强大的对象关系映射(ORM)工具,使得开发者可以更方便地操作数据库。JPA(Java Persistence API)是Java平台上的一个标准,它定义了ORM的API。JPA2是其第二个主要版本,引入了许多改进和新特性...

    hibernate-jpa-2.1-api-1.0.0.final.jar.zip

    其中,Hibernate作为一款功能强大的ORM框架,极大地简化了Java对象与数据库表之间的映射关系处理。而JPA(Java Persistence API)是Java EE规范的一部分,为ORM提供了标准的接口。`hibernate-jpa-2.1-api-1.0.0....

    基于HibernateJPA最新案例

    《基于Hibernate JPA的最新实践解析》 在现代Java开发中,对象关系映射(ORM)框架如Hibernate已经成为必备工具,极大地简化了数据库操作。本文将深入探讨基于Hibernate的Java Persistence API (JPA)的最新应用案例...

    How to Use Hibernate JPA

    Hibernate是一个非常知名的Java ORM(对象关系映射)框架,并且它是JPA(Java Persistence API)和EJB 3的重要贡献者之一。ORM框架的主要目标是实现业务实体类(Entity class)或业务对象(Business Object)与关系...

    hibernate array 数组映射

    3. 考虑使用`@ElementCollection`注解进行JPA2.1以上的数组映射,以获取更简洁的配置和更好的性能。 4. 为了保持数据一致性,确保索引列和元素列在数据库中有相应的约束。 以上就是关于`hibernate array 数组映射`...

    在JavaSE下使用HibernateJPA所需的jar包

    在JavaSE环境中使用Hibernate JPA(Java Persistence API)进行数据持久化操作,需要引入一系列的jar包来构建完整的开发环境。这些jar包包含了对JPA规范的实现、Hibernate ORM框架的核心功能以及相关的依赖库。以下...

Global site tag (gtag.js) - Google Analytics