BasicDAO与SpringDAO区别,使用Hibernate验证,注解方式实现主键自增,注解方式注入外键(一对多)

来源:互联网 发布:七子之歌 知乎 编辑:程序博客网 时间:2024/06/04 18:51

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 主表类 主表名称;










0 0
原创粉丝点击