BasicDAO与SpringDAO区别
1)BasicDAO,会生成两个类得到session,不是用注入的形式得到DAO,不会在applicationContext.xml中自动生成bean
2)SpringDAO,是以注入的形式得到session,会自动在applicationContext.xml中生成bean
3)通常独立的Hibernate使用BasicDAO,交给Spring托管的用SpringDAO
使用Hibernate验证
通过注解的方式在页面展示层的bean类中进行输入验证,写在成员变量定义上,可参考
@Null 被注释的元素必须为 null
@NotNull 被注释的元素必须不为 null
@AssertTrue 被注释的元素必须为 true
@AssertFalse 被注释的元素必须为 false
@Min(value) 被注释的元素必须是一个数字,其值必须大于等于指定的最小值
@Max(value) 被注释的元素必须是一个数字,其值必须小于等于指定的最大值
@DecimalMin(value) 被注释的元素必须是一个数字,其值必须大于等于指定的最小值
@DecimalMax(value) 被注释的元素必须是一个数字,其值必须小于等于指定的最大值
@Size(max=, min=) 被注释的元素的大小必须在指定的范围内
@Digits (integer, fraction) 被注释的元素必须是一个数字,其值必须在可接受的范围内
@Past 被注释的元素必须是一个过去的日期
@Future 被注释的元素必须是一个将来的日期
@Pattern(regex=,flag=) 被注释的元素必须符合指定的正则表达式
Hibernate Validator 附加的 constraint
@NotBlank(message =) 验证字符串非null,且长度必须大于0
@Email 被注释的元素必须是电子邮箱地址
@Length(min=,max=) 被注释的字符串的大小必须在指定的范围内
@NotEmpty 被注释的字符串的必须非空
@Range(min=,max=,message=) 被注释的元素必须在合适的范围内
注解方式实现主键自增
在model层主键上加入以下两个注解,实现主键的自增
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
注解方式注入外键(一对多)
1)主表中:
@OneToMany(mappedBy=“主表名称”)
private Set<从表类> 从表名称 = new HashSet<从表类>();
2)从表中:
类定义上加 @Table(name="从表名称")
类中加:@ManyToOne
@JoinColumn(name="从表中的外键字段名")
private 主表类 主表名称;