数据传输对象Domain
Domain并不是必要的
so-fast框架规定在进行复杂的数据传输时,需要使用Domain进行规范定义和数据传输。
Domain的分类
so-fast中domain分为vo和dto两类,vo为视图模型,主要用于展现层;dto是数据传输模型,主要用于服务层数据传输。
在so-fast框架中,vo和dto并没有按照严格的模型规范来设计,主要是为了减少重复的javabean对象,必要的情况下,可以进行模型合并。一切为了在能清晰表达数据流的基础上的极简开发。
使用方式
例如,在多条件搜索的业务场景下,需要定义搜索条件的vo对象。
/**
* 字典类型查询条件
*
* @Package: com.sofast.system.dict.domain.vo
* @Description: 字典类型查询条件VO
* @Date : 2020/11/21 9:25 PM
* @Author : NCIT
*/
@ApiModel(value = "字典类型查询接口VO")
@Data
public class DictTypeQueryVo extends PageRequestBaseVo {
@ApiModelProperty(value = "字典名称")
private String dictName;
@ApiModelProperty(value = "字典类型")
private String dictType;
@ApiModelProperty(value = "状态(0正常 1停用)")
private String status;
}
对于有分页需求的必须extends PageRequestBaseVo,PageRequestBaseVo中定义了分页所需的通用条件,以及日期范围搜索的条件。