hibernate基础配置(2)

1.Hibernate.cfg.xml: hbm2ddl.auto

   a)如果需要显示这些DDL语句,可以使用log4j日志框架将这些DDL语句打印出来

   b)先建表还是先建实体类:理论上是先建实体类再建表,而实际应用时往往是先建表再建实体类

 

2.搭建日志环境并配置显示DDL语句

 

3.搭建JUnit环境

     a)需要注意JUnit的Bug

 

4.hibernate.cfg.xml:  show_sql

     配置是否需要显示DML语句

 

5.Hibernate.cfg.xml: format_sql

     配置是否需要格式化DML语句,即美化输出的DML语句

注意:format_sql需要与show_sql配合使用

 

6.表名和类名不同,对表名进行配置

      a) Annotation:@Table

      b)xml:table=””

 

7.字段名和属性相同

   a)默认@Basic

   b)xml中不用写column

8.字段名和属性名不同

a)Annotation : @Column(name=””)

b)xml:column

 

9.show_sql和ddl(data definition  language) 的说明

   Show_sql是hibernate.cfg.xml配置文件的配置。日志跟hibernate.cfg.xml配置文件没关系,是hibernate的类执行过程中能够显示的信息。ddl语句在hibernate中是配置不出来的,只能用用日志将ddl语句配置出来

 

10.不需要persistence的字段

     a) Annotation: @Transient(注意:import javax.persistence.Transisent)

     b)xml:不配置该属性的映射

 

11.映射日期与时间类型,指定时间精度(注意:import java.util.date;在Java类里面一般应util.date而不是sql.date)

a)Annotation:@Temporal(用来指定只记录日期还是只记录时间或2者都记录)

b)xml:用type指定,eg:<property name=”birthdate” type=”date”> 日期

 

12.映射枚举类型

     a)@Enumerated(EnumType.STRING)等于@Enumerated(value=“EnumType.STRING”),因为在anntotion中value=可以省略;当value的值设为EnumType.STRING时,数据库对应字段的属性为varchar类型(也就是说按string类型把数据存储到数据库中),当value的值设置成EnumType.ORDINAL时,数据库字段类型会映射成为integer类型

     b) xml:

 

13.字段映射的位置(field或者get方法,推荐get方法上,因为写在field上就破换了java的object oriented的封装性)

      A) best practice(最佳实践):保持field(属性)和get set方法的一致

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值