Hibernate4 mysql 采用注解(annotation)方式配置入门例子
By:Roy.LiuLast updated:2014-01-05
前面的例子(参考 hibernate4 mysql xml )中记录了利用传统的hibernate XML 隐射方式配置, 但这种处理方式在近几年已经不流行了,因为要维护太多的XML 配置文件,而且修改之后还得重启应用服务器。近年流行的是用注解方式写程序, 直观,对程序员来说更容易维护,代码更少。所以在前一个例子的基础上,改写成hibernate 注解方式.
1. 拷贝前面的例子,重新命名为一个新的工程
删掉 Stock.xml hibernate映射配置文件, 修改 Stock.java 为如下:
这里注意 怎么定义映射那个表,那个字段的。当然还有自动增量的定义,Id,以及生成策略, 先简单介绍一下有如下几种生成策略:
AUTO - 可以是identity column类型,或者sequence类型或者table类型,取决于不同的底层数据库.
TABLE - 使用表保存id值(也就是会为应用的表创建一张专门保存Id的表)
IDENTITY - identity column
SEQUENCE – sequence
这里采用了 AUTO 方式,可以在多个数据库之间切换,自动识别,如果是oracle 应该用 sequence 方式了,具体才用那种方式,根据自己数据库需要,以及程序要求.
2. 更新注解下的hibernate 配置文件
这里的重点是将
替换成
3. 其他配置部分以及程序代码保持原样
运行测试程序,可以但到结果,数据被成功插入到数据库中了,源代码在下面下载:
hibernate4 mysql annotation download
1. 拷贝前面的例子,重新命名为一个新的工程
删掉 Stock.xml hibernate映射配置文件, 修改 Stock.java 为如下:
package com.yihaomen.hibernate.domain; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; import javax.persistence.Table; /** * Model class for Stock */ @Entity @Table(name="stock") public class Stock implements java.io.Serializable { private static final long serialVersionUID = 1L; @Id @GeneratedValue(strategy=GenerationType.AUTO) @Column(name="STOCK_ID") private Integer stockId; @Column(name="STOCK_CODE", length=10) private String stockCode; @Column(name="STOCK_NAME", length=20) private String stockName; public Stock() { } public Stock(String stockCode, String stockName) { this.stockCode = stockCode; this.stockName = stockName; } public Integer getStockId() { return this.stockId; } public void setStockId(Integer stockId) { this.stockId = stockId; } public String getStockCode() { return this.stockCode; } public void setStockCode(String stockCode) { this.stockCode = stockCode; } public String getStockName() { return this.stockName; } public void setStockName(String stockName) { this.stockName = stockName; } }
这里注意 怎么定义映射那个表,那个字段的。当然还有自动增量的定义,Id,以及生成策略, 先简单介绍一下有如下几种生成策略:
AUTO - 可以是identity column类型,或者sequence类型或者table类型,取决于不同的底层数据库.
TABLE - 使用表保存id值(也就是会为应用的表创建一张专门保存Id的表)
IDENTITY - identity column
SEQUENCE – sequence
这里采用了 AUTO 方式,可以在多个数据库之间切换,自动识别,如果是oracle 应该用 sequence 方式了,具体才用那种方式,根据自己数据库需要,以及程序要求.
2. 更新注解下的hibernate 配置文件
false com.mysql.jdbc.Driver password jdbc:mysql://localhost:3306/yihaomen-hibernate root org.hibernate.dialect.MySQLDialect true
这里的重点是将
替换成
3. 其他配置部分以及程序代码保持原样
运行测试程序,可以但到结果,数据被成功插入到数据库中了,源代码在下面下载:
hibernate4 mysql annotation download
From:一号门
Previous:Hibernate4 mysql 采用XML 配置方式入门例子
COMMENTS