Errors及相关类(未完待续)

  1.接口Errors:存储和公开关于特定对象的数据绑定和验证错误的信息。字段名可以是目标对象的属性或嵌套字段的子对象。支持通过setNestedPath(String)进行子树导航:例如,AddressValidator验证“address”,但不知道这是customer的子对象。Errors是单线程的。

    a.String NESTED_PATH_SEPARATOR = PropertyAccessor.NESTED_PROPERTY_SEPARATOR:嵌套路径中路径元素之间的分隔符,例如在“customer.name”或“customer.address.street”中。

    b.void setNestedPath(String nestedPath):允许更改上下文,以便标准验证器能够验证子树。Reject调用将给定的路径放在字段名的前面。例如,一个address validator可以验证customer的子对象“address。参数nestedPath:对象内的嵌套路径。“address”(默认为“”,null也是可以接受的)。可以以点结尾:“address”和“address.”都是有效的。
    c.String getNestedPath():返回此Errors对象的当前嵌套路径。返回带有点的嵌套路径,即“address.”,方便建立连结路径。默认值是一个空字符串。

    d.void pushNestedPath(String subPath):将给定的子路径推入嵌套路径堆栈。popNestedPath()调用将在相应的pushNestedPath(String)调用之前重置原始嵌套路径。使用嵌套路径堆栈可以为子对象设置临时嵌套路径,而不必担心临时路径保持器。例如:当前路径"spouse.", pushNestedPath("child")->结果路径"spouse.child.";popNestedPath() ->“spouse.”。参数subPath:要推入嵌套路径堆栈的子路径。

    e.void popNestedPath() throws IllegalStateException:从嵌套路径堆栈中弹出前一个嵌套路径。

    f.void reject(String errorCode)、void reject(String errorCode, String defaultMessage)、void reject(String errorCode, Object[] errorArgs, String defaultMessage):使用给定的错误描述为整个目标对象注册一个全局错误。

      errorCode:错误代码,可解释为消息键

      errorArgs:错误参数,用于通过MessageFormat绑定参数(可以为空)

      defaultMessage:返回默认消息

    g.void rejectValue(String field, String errorCode)、void rejectValue(String field, String errorCode, String defaultMessage)、void rejectValue(String field, String errorCode, Object[] errorArgs, String defaultMessage):使用给定的错误描述为当前对象的指定字段注册一个field错误(根据当前嵌套路径(如果有的话))。字段名可以是null或空字符串,以指示当前对象本身,而不是其字段。这可能导致嵌套对象图中相应的字段错误,如果当前对象是顶部对象,则可能导致全局错误。

      field:字段名(可以是null或空字符串)

      errorCode:错误代码,可解释为消息键

      errorArgs:错误参数,用于通过MessageFormat绑定参数(可以为空)

      defaultMessage:返回默认消息

    h.void addAllErrors(Errors errors):将给定错误实例中的所有错误添加到此错误实例。这是一个便利方法,用于避免将一个错误实例合并到另一个错误实例的重复reject(..)调用。请注意,传入的错误实例应该引用相同的目标对象,或者至少包含适用于此错误实例的目标对象的兼容错误。

    i.boolean hasErrors():如果有任何错误,返回。

    j.int getErrorCount():返回错误总数

    k.List<ObjectError> getAllErrors():获取所有错误,包括全局错误和字段错误。

    l.boolean hasGlobalErrors():是否存在全局错误?

    m.int getGlobalErrorCount():全局错误个数

    n.List<ObjectError> getGlobalErrors()获取所有全局错误

    o.ObjectError getGlobalError():获取第一个全局错误

    p.boolean hasFieldErrors():是否有字段错误

    q.int getFieldErrorCount():返回与字段关联的错误数。

    r.List<FieldError> getFieldErrors():获取与字段关联的所有错误。

    s.FieldError getFieldError():获取与字段关联的第一个错误(如果有的话)。

    t.boolean hasFieldErrors(String field):是否存在与给定字段相关的错误

    

转载于:https://www.cnblogs.com/majority/p/10273128.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值