实体bean的开发

涉及的注解

@Entity(name="")  name属性指明了JPQL中使用的实体名

@Table(name="xxx")

 

@Id

@GeneratedValue(strategy=GenerationType.AUTO)

GenerationType.TABLE       //会创建一个表 具有序列名和对应值两个字段,易于数据库移植

GenerationType.SEQUENCE   //支持序列的数据库 如 Oracle

GenerationType.IDENTITY        //使用ID自动增长 如mysql

GenerationType.AUTO         //  由持久化提供器根据数据库的不同自动决定以何种方式生成主键

@Column(nullable=false,length=10,unique=false,name="",insertable=true,updatable=true) 

name指明映射的字段名

insertable和updatable指明是否让该字段出现在SQL INSERT和SQL UPDATE语句中

@Transient指明该字段不会被持久化

@Enumerated(EnumType.STRING)    枚举类型的映射,及映射到数据库内的数据类型

@Lob 映射大数据

byte[] Byte[] Serializable时数据库中映射为Blob类型,char[] Character[] String时为Clob类型

@Basic(fetch=FetchType.LAZY)默认是立即    FetchType.EAGER

注解延时加载,懒加载,特别是大数据字段时很有用

@Temporal(value=TemporalType.DATE)

对于时间类型很严格处理时,指明是映射为date,time,timestamp

实体属性也可以是 普通可序列化的java对象

@Embedded当不需要将整个对象映射到数据库,只希望映射它的字段可以使用

 

表名和列名不要使用数据库的保留字段如 order group

对于实体bean建议重写equals和hashcode方法以使用集合时,可以区别实体的不同

 

 

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值