- 浏览: 1328117 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (896)
- spring4 (14)
- hibernate3 (26)
- spring2 (35)
- struts2 (55)
- struts1 (15)
- 设计模式 (15)
- java (172)
- mybatis3 (11)
- sql (17)
- mysql (13)
- jbpm (10)
- J2EE (45)
- tools (29)
- js (83)
- 数据结构 (13)
- Html (26)
- web (22)
- flex (33)
- Oracle (57)
- linux (49)
- 算法 (6)
- 其它 (12)
- easyui (1)
- bootstrap (13)
- xml (2)
- tomcat (1)
- redis (10)
- activemq (2)
- webservice (11)
- maven (2)
- springboot (1)
- ubuntu (1)
- python (14)
- rocketmq (1)
- springcloud (10)
- opencv (1)
最新评论
-
mike_eclipse:
Hashtable是线程不安全的吗?好像是线程安全的吧?
多线程之集合类 -
July01:
推荐用StratoIO打印控件,浏览器和系统的兼容性都很好,而 ...
lodop打印控件 -
xingcxb:
经过测试,假的,依旧会出现中文乱码!!!!store方法里面采 ...
java 读写Properties文件,不会出现中文乱码 -
tiger20111989:
...
Spring注解方式管理事务 -
zw7534313:
...
js 文字上下滚动 无间断循环显示
实例一:一个对象的增删改查:
import java.math.BigDecimal;
import java.util.Date;
import javax.persistence.Entity;
import javax.persistence.Id;
import org.hibernate.annotations.GenericGenerator;
@Entity
public class User2 implements java.io.Serializable {
private Integer id;
private String name;
private String sex;
private Date birthday;
@Id
//@GenericGenerator //可以不用,使用trigger来自增id,save()时需要setId();否则报异常
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Date getBirthday() {
return birthday;
}
public void setBirthday(Date birthday) {
this.birthday = birthday;
}
}
AnnotationHibernateSessionFactory与自动生成的HibernateSessionFactory.java中惟一不同的地方:
sessionFactory= new AnnotationConfiguration() //注意 建立 SessionFactory于前面的不同
.addPackage("com.model")
.addAnnotatedClass(User2.class)
.configure()
.buildSessionFactory();
void save(){
Session session=AnnotationHibernateSessionFactory.getSession();
Transaction tr=session.beginTransaction(); //事务(insert,update,delete需要事务)
User2 u2=new User2();
u2.setId(112);
u2.setName("test");
u2.setSex("男");
u2.setBirthday(new Date());
session.save(u2);
tr.commit();
session.close();
}
实例二:
http://mydreams1983.blog.163.com/blog/static/8632879520091123102730619/ hibernate 注解说明
* @author liuguangyi
* @content ejb3注解的API定义在javax.persistence.*包里面。
*
* 注释说明:
* @Entity —— 将一个类声明为一个实体bean(即一个持久化POJO类)
* @Id —— 注解声明了该实体bean的标识属性(对应表中的主键)。
* @Table —— 注解声明了该实体bean映射指定的表(table),目录(catalog)和schema的名字
* @Column —— 注解声明了属性到列的映射。该注解有如下的属性
* @GenericGenerator —— 注解声明了一个hibernate的主键生成策略。支持十三种策略。该注解有如下属性
* name 指定生成器名称
* strategy 指定具体生成器的类名(指定生成策略)。
* parameters 得到strategy指定的具体生成器所用到的参数。
例:@GeneratedValue(generator = "paymentableGenerator")
* @GenericGenerator(name = "paymentableGenerator", strategy = "native")
7.sequence 调用谨慎数据库的序列来生成主键,要设定序列名,不然hibernate无法找到。
* 例:@GeneratedValue(generator = "paymentableGenerator")
* @GenericGenerator(name = "paymentableGenerator", strategy = "sequence",
* parameters = { @Parameter(name = "sequence", value = "seq_payablemoney") })
10.foreign 使用另一个相关的对象的主键。通常和<one-to-one>联合起来使用。
* 例:@Id
* @GeneratedValue(generator = "idGenerator")
* @GenericGenerator(name = "idGenerator", strategy = "foreign",
* parameters = { @Parameter(name = "property", value = "info") })
* Integer id;
* @OneToOne
* EmployeeInfo info;
(三)映射主键属性
@Id
使用@Id注解可以将实体Bean中的某个属性定为为标识符(identifier)。该属性值可以通过应用自身创建,也可以通过Hibernate生成(推荐)。使用@GeneratedValue注释利用定义标识符的生产策略:
*AUTO 可以是一下三种任意一种类型,取决于地层数据库的不同
*TABLE 使用表保存id值
*IDENTITY identity column
*SEQUENCE sequence
@Id
@GeneratedValue(strategy = GenerationType.IDENTITy)
Public Integer getId() {… …}
在Hibernate的应用中提供了更加丰富的主键生产策略。
@org.hibernate.annotations.GenericGeneracor允许定义一个Hibernate特定的id生成器。
例:
- @Id
- @GeneratedValue(generator = "system-uuid")[该属性名自定义]
- @GenericGenerator(name = " system-uuid ", strategy = "uuid")
- [name可自定义,但是strategy属性必须是Hibernate中有效的主键策略]
- @Column (name = "user_id")
- private Integer userId;
发表评论
-
hibernate Search
2010-10-15 10:09 1413hibernate Search 使用过lucene的人都 ... -
org.hibernate.LazyInitializationException: could not initialize proxy - no Sessi
2010-09-10 15:57 20251.设置里 lazy = "false" ... -
Hibernate数据检索策略
2010-08-09 08:52 1227Hibernate数据检索策略: Hiberna ... -
Java、hibernate、sql类型对照
2010-08-09 08:48 1507基本值类型: Java基本类型、对应的Hibernate映射 ... -
Hibernate事务隔离级别
2010-08-09 08:46 6274Hibernate事务隔离级别: 隔离级别 ... -
Hibernate数据检索策略
2010-08-06 15:58 1351Hibernate数据检索策略:Hibernate的数据检索策 ... -
生成model类的serialVersionUID
2010-06-25 16:36 1131生成model类的serialVersionUID: 在命令 ... -
spring 与 hibernate Annotation配置(entry)
2010-06-13 16:53 2044(5)TCompanyInfo.java import ... -
Hibernate的复杂用法HibernateCallback
2010-06-13 09:00 1143HibernateTemplate还提供一种更加灵活的方式来操 ... -
hibernate3与spring2零配置
2010-06-11 15:19 1416ssh除了xml配置之外,还可以用标注式配置: (1)sp ... -
hibernate3 annotation 的实例 3 (one to many)
2010-03-24 15:19 2108http://bigcat.easymorse.com/?p= ... -
hibernate annotation spring
2010-03-24 08:35 1100http://2625962-163-com.iteye.co ... -
hibernate3 annotation 的实例 2
2010-03-23 15:51 1817实例二:(主键sequence策 ... -
query specified join fetching, but the owner of the fetched association
2010-03-04 09:57 1974错误原因分析: 首先看HQL语句: ... -
illegal attempt to dereference collection
2010-03-04 09:12 3702首先说一句:是版本的问题! 我写的hql为: from D ... -
深化学习hibernate
2010-01-29 14:10 11333.4.5. 查询语言中 ... -
查询hibernate 部分数据
2010-01-29 10:56 1410hibernate查出来人部分数据基本上是数组,有的时候需要对 ... -
解决hibernate中的lazy的问题
2010-01-28 11:38 1417<many-to-one name="TCu ... -
hibernate 批量添加
2009-12-29 13:37 2069public void createRolePermissio ... -
hibernate 常见错误
2009-12-24 12:52 9741.org.hibernate.LazyInitializat ...
相关推荐
《Hibernate注解与Hibernate3深度解析》 在Java开发领域,Hibernate作为一种强大的对象关系映射(ORM)框架,极大地简化了数据库操作。本篇将深入探讨Hibernate 3版本中的注解使用,帮助开发者理解如何利用注解进行...
3. **Hibernate Annotation**: Hibernate的注解是在Java类和属性上添加元数据的方式,它替代了传统的Hibernate XML配置文件。通过注解,可以在实体类和属性上直接定义数据库映射,如@Entity表示一个数据库表,@Table...
在Hibernate 3.x版本中,引入了Annotation注解,这是一种元数据的方式,可以替代XML配置文件来描述对象与数据库表之间的映射关系。 **Hibernate Annotation注解** 在Hibernate 3.x之前,对象到数据库的映射通常...
里面整合的是springMVC+hibernate3的配置文件和实例,用的是mysql数据库,使用注解annotation,下载后,只需修改jdbc.properties配置文件和加载对应的数据库驱动jar包就可以运行。亲测通过,有问题可以交流。
通过编写简单的HelloWorld程序,引入Hibernate和Annotation,创建第一个数据库操作实例,了解基本的Session和Transaction使用。 ### 第 7 课 建立 Annotation 版本的 HelloWorld 在此阶段,将HelloWorld示例转换为...
3. Hibernate 注解:注解是Java语言中的一个特性,允许在代码中添加元数据。在Hibernate中,注解用于标记实体类、属性、关联等,让Hibernate知道如何自动映射这些对象到数据库表。常见的注解有`@Entity`(定义实体类...
JSF+Spring+Hibernate(Annotation)的login小实例,建议入门的朋友看看,老鸟就免了,呵呵。环境:SQLSever2000+jdk5.0+spring2.0+hibernate3.2+jsf
《Hibernate Annotation 中文版详解》 Hibernate 是一个广泛使用的开源对象关系映射(ORM)框架,它极大地简化了Java应用程序对数据库的操作。而Hibernate Annotation则是Hibernate框架中的一个重要组成部分,它...
超级详细的SSH2项目实例详解,并且附带两个项目详解。两种注解实现方式。不同的生成数据脚本实现。 在JavaEE企业级开发中,以SSH2框架为核心的应用非常广,大象根据项目实践经验,通过二个实例,详细的为大家讲解...
3. 更深入的学习:要深入了解Hibernate Annotation,可以参考官方文档`hibernate_annotations_3.2.1.pdf`(英文原稿)和中文翻译版`hibernate_annotations_zh.pdf`(满江红翻译)。这些文档详细介绍了各种注解的用法...
**Hibernate Annotation 入门** Hibernate 是一款非常流行的Java对象关系映射(ORM)框架,它允许开发者使用面向对象的方式操作数据库。而Hibernate Annotation是Hibernate的一个重要特性,它通过在Java类和字段上...
3. 注解(Annotation)在Hibernate中的应用: - @Entity:标记一个Java类为数据库中的一个表,表示该类是实体类。 - @Table:指定实体类对应的数据库表名。 - @Id:标识类中的主键字段,可以配合@GeneratedValue...
在这个“Hibernate的Annotation版Hello world实例”中,我们将探讨如何利用Hibernate的注解(Annotation)功能来简化实体类的配置,并实现一个基本的数据操作。 首先,Hibernate注解是自Hibernate 3.2版本开始引入...
本教程将深入探讨如何在Hibernate中使用注解(Annotation)进行配置,从而避免传统的XML配置文件。通过这种方式,我们可以更直观地将数据库表与Java实体类关联起来。 首先,让我们理解什么是Hibernate注解。...
3. Hibernate Annotation是Hibernate的一部分,使用Java注解实现对象持久化,减少了XML配置。 4. @Entity、@Table、@Id和@GeneratedValue是常见的Hibernate Annotation,用于定义实体类和表的关系、主键规则等。 5. ...
【标题】:“第一个Hibernate with Annotation程式(转)” 在Java世界中,Hibernate是一个非常流行的ORM(对象关系映射)框架,它允许开发人员使用面向对象的编程方式来操作数据库,而无需直接编写SQL语句。这个标题...
以下将详细介绍"spring_hibernate_annotation的三种实现"。 1. **基于XML的配置** 在早期的Spring和Hibernate集成中,通常使用XML配置文件来定义Bean和数据源,以及映射信息。Spring的`applicationContext.xml`...