hibernate的配置——基本映射信息

hibernate的映射信息有xml配置与注解配置2种方式。我一般喜欢使用注解。下面使用注解配置一个映射类:

@Table(schema="dbo")
@Entity
public class DatabaseLog {
	int DatabaseLogID;、、
	String Schema;
	String TSQL;

	@Id
	public int getDatabaseLogID() {
		return DatabaseLogID;
	}

	public void setDatabaseLogID(int databaseLogID) {
		DatabaseLogID = databaseLogID;
	}

	@Column(name = "[schema]")
	public String getSchema() {
		return Schema;
	}

	public void setSchema(String schema) {
		Schema = schema;
	}

	public String getTSQL() {
		return TSQL;
	}

	public void setTSQL(String tSQL) {
		TSQL = tSQL;
	}
}
@Entity 注解将一个类声明为实体 Bean, @Id 注解声明了该实体 Bean 的标识属性。

最简单的配置只要配置这2个注解就能把实体映射配置好了。

@table 注解相关属性:

name="databaseLog"   ,默认值与类名相同(大小写一般不敏感)
schema="person",一般都是取默认值,不用配置。除非类是sql server 里的表在不在dbo而是在其他架构,如person架构时使用。

catelog="test", 一般默认为配置文件中连接的数据库,如果表不在默认数据库则需要指定。如:test。

映射主键属性

@Id 注解可将实体Bean中某个属性定义为主键,使用@GenerateValue注解可以定义该标识符的生成策略。

• AUTO -  可以是 identity column, sequence 或者 table 类型,取决于不同底层的数据库
• TABLE - 使用table保存id值
• IDENTITY - identity column
• SEQUENCE - sequence

一般id设置为自动递增:

@GeneratedValue(strategy=GenerationType.IDENTITY)


@Column 一般字段不用定义,默认为对应的属性名。当属性名是数据库关键字时需要注解其name属性,加上中括号。或者修改字段名,可以在column属性中添加`` (反引号就是1前面的按键,来指定名称)

@Column(name="[schema]") 或者 @Column(name="`schema`")


//指定生产的外键的字段名,默认是fundType_id

@JoinColumn(name = "id", nullable = false)

//LAZY表示不会马上取关联数据,EAGER表示马上取出关联的其他属性。

@OneToMany(fetch="FetchType.EAGER")  //默认是lazy,一般都采用默认值,可不用设置fetch属性。

@ManyToOne(fetch="FetchType.LAZY")  //默认是eager一般都采用默认值,可不用设置fetch属性。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值