关于DeptParam的问题

来源:7-1 新增部门接口开发

慕沐3291583

2018-07-14

@Getter
@Setter
@ToString
public class DeptParam {

    private Integer id;

    @NotBlank(message = "部门名称不可以为空")
    @Length(max=15,min=2,message = "部门名称长度需要在2-15个字之间")
    private String name;

    private Integer parentId;

    private String level;
    @NotNull(message = "展示顺序不可以为空")
    private Integer seq;

    @Length(max=150,message = "备注的长度需要在150个字以内")
    private String remark;


}

老师既然已经有了sysDept这个pojo类,为什么还需要param类(DeptParam)。你可能会说因为sysDept有一些字段不需要传进来,可咱们不是在serivce层用了sysDeptMapper.insertSelective(dept);又将其转换成了sysDept。


在dao层中,判断哪些字段没有值,然后不写入。

<insert id="insertSelective" parameterType="com.mmall.model.SysDept" >
 insert into sys_dept
 <trim prefix="(" suffix=")" suffixOverrides="," >
   <if test="id != null" >
     id,
   </if>
   <if test="name != null" >
     name,
   </if>
   <if test="parentId != null" >
     parent_id,

写回答

1回答

Jimin

2018-07-14

你好,这也算一种规范吧,传入的参数单独封装,然后校验及前置处理完,转换成实际的业务对象,这样分层比较清楚,也很容易扩展,属于一个编码里的最佳实践。祝你学习愉快~

0
0

Java开发企业级权限管理系统

源于企业真实Java项目,涉及大量高级技巧,覆盖权限管理开发技术

2261 学习 · 1347 问题

查看课程