1:设计表时建议使用注解自动创建表。
2: hql中from后面的不是表名,而是对象的名字,如book表,对应的entity是Book,则在hql中写“from Book”
一对一:在一方的属性前加注解,如Deal表(主键executionID)和DealFeeDetail表(主键executionID)一对一。
在Deal中:
@OneToOne(cascade = CascadeType.All)
@JoinClolumn(name = ”executionID")
@JsonField(name = "Fee")
private DealFeeDetail edalFeeDeatil;
一对多:在一方的属性前加注解,如Customer表(customerNo是主键)和CustomerUser表(customerNo不是主键,userNo是主键)一对多。
Customer中这样写:
@OneToMany(cascade = CascadeType.All,fetch=Fetchtype.EAGER)
@JoinClolumn(name = ”customerNo")
private Set<CustomerUser> customerUserSet;
但是,需要注意,在多数据源中,尤其是不同数据库的多数据源,想都自动建表是不行的。因为Hibernate自动建表是在项目启动时触发的,因此只会建立项目配置的默认数据源的表,而其他数据源的表则不会自动创建。
2: hql中from后面的不是表名,而是对象的名字,如book表,对应的entity是Book,则在hql中写“from Book”
3:hibernate mysql 主键id自增长使用注解配置。如下(主键由数据库自动生成,主要是自动增长型)
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
4:hibernate update 只更新部分字段的3种方法(转载)
6:hibernate