如何定制Hibernate映射

这篇文章主要介绍“如何定制Hibernate映射”,在日常操作中,相信很多人在如何定制Hibernate映射问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何定制Hibernate映射”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

南华ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:18980820575(备注:SSL证书合作)期待与您的合作!

Hibernate 能够出色地自动生成主键。Hibernate/EBJ 3 注释也可以为主键的自动生成提供丰富的支持,允许实现各种策略。下面的示例说明了一种常用的方法,其中Hibernate将会根据底层数据库来确定一种恰当的键生成策略:

public Long getId() {  return id;  }

定制Hibernate映射

默认情况下,Hibernate会将持久类以匹配的名称映射到表和字段中。例如,前一个类可以与映射到以如下代码创建的表中:

CREATE TABLE MODELPLANE   (  ID long,  NAME varchar  )

如果您是自己生成并维护数据库,那么这种方法很有效,通过省略代码可以大大简化代码维护。然而,这并不能满足所有人的需求。有些应用程序需要访问外部数据库,而另一些可能需要遵从公司的数据库命名惯例。如果有必要,您可以使用 @Table 和 @Column 注释来定制您自己的持久性映射,如下所示:

public class ModelPlane {  private Long id;  private String name;  @Id  @Column(name="PLANE_ID")  public Long getId() {  return id;  }  public void setId(Long id) {  this.id = id;  }  @Column(name="PLANE_NAME")   public String getName() {  return name;  }  public void setName(String name) {  this.name = name;  }  }

该内容将映射到下表中:

CREATE TABLE T_MODEL_PLANE   (  PLANE_ID long,  PLANE_NAME varchar  )

也可以使用其他图和列的属性来定制Hibernate映射。这使您可以指定诸如列长度、非空约束等详细内容。Hibernate支持大量针对这些注释的属性。下例中就包含了几种属性:

...  @Column(name="PLANE_ID", length=80, nullable=true)  public String getName() {  return name;  }  ...

到此,关于“如何定制Hibernate映射”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注创新互联网站,小编会继续努力为大家带来更多实用的文章!


网站名称:如何定制Hibernate映射
文章位置:http://azwzsj.com/article/goidsd.html