Worker类
/**
* 当一个类被标注为实体类后如果没有增加主键的标识,
* 则报异常:
* Caused by: org.hibernate.AnnotationException:
* No identifier specified for entity: com.hsj.domain.Worker
* @author h
*
*/
@Entity
@Table(name=”t_worker”)
public class Worker {
@Id @GeneratedValue
private int id;
**@Transient** //要想让哪个字段不参与生成表中字段,可以打注解@Transient
private String name;
/**
* 指定float数据类型的精度
* scale=6:总位数为6
* precision=2:小数位数为2
*
*/
@Column(scale=6,precision=2)
private float salary;
/**
* 标识当前字段的数据类型为longtext,可以存储4G的内容
*/
@Lob
private String info;
/**
* MySQL的四种BLOB类型
类型 大小(单位:字节)
TinyBlob 最大 255,是默认值
Blob 最大 65K
MediumBlob 最大 16M
LongBlob 最大 4G
*/
@Column(columnDefinition="LongBlob")
private byte[] header;
@Column(name="w_workDate")
**@Temporal(TemporalType.DATE)**
private Date workDate;
…..
public class HibernateDemo01 {
public static void main(String[] args) {
Session session=HibernateUtils.getSession();
Transaction transaction=session.beginTransaction();
//5678.94
//session.save(new Worker("小丽", **5678.93756f**, "小丽你好", **"小丽你好呀".getBytes()**, new Date()));
//56789.9
//session.save(new Worker("小丽", 56789.93756f, "小丽你好", "小丽你好呀".getBytes(), new Date()));
//567890.9===>567891
//session.save(new Worker("小丽", 567890.93756f, "小丽你好", "小丽你好呀".getBytes(), new Date()));
//5678910
session.save(new Worker("小丽", 5678905.93756f, "小丽你好", "小丽你好呀".getBytes(), new Date()));
transaction.commit();
}
}