Java Server Faces:仅在业务逻辑层中进行验证

我有一个 Java Server Faces Web应用程序,我不确定如何处理验证.

在我看来,验证应该在业务逻辑层完成.业务逻辑层用于Web表示(jsf)和REST-API.

目前我正在使用提供的验证器在jsf层内进行验证.我认为在大多数情况下只会重复代码.有没有办法避免这种代码重复? java服务器面孔是否能够使用我在业务逻辑层中抛出的验证异常?

解决方法

Bean验证就是针对这种情况而发明的.

您使用约束来注​​释您的实体,这些约束将受到您的业务逻辑(通过EJB,CDI和/或JPA)以及JSF的尊重.

对于少量的验证,您无法通过Bean验证表达,但真正与业务相关;是的,抛出异常,在你的支持bean中捕获它并设置相应的Faces消息(提示:使用OmniFaces’ Messages使这更容易).同样,对于少量的验证,您无法使用Bean验证表达,并且强烈的面向观点;使用JSF本机验证器.

相关文章

ArrayList简介:ArrayList 的底层是数组队列,相当于动态数组。与 Java 中的数组相比,它的容量能动态增...
一、进程与线程 进程:是代码在数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位。 线程...
本文为博客园作者所写: 一寸HUI,个人博客地址:https://www.cnblogs.com/zsql/ 简单的一个类...
#############java面向对象详解#############1、面向对象基本概念2、类与对象3、类和对象的定义格式4、...
一、什么是异常? 异常就是有异于常态,和正常情况不一样,有错误出错。在java中,阻止当前方法或作用域...
Collection接口 Collection接口 Collection接口 Collection是最基本的集合接口,一个Collection代表一组...