@SelectProvider和 @InsertProvider ,@SelectProvider某些情况可以共用:

@SelectProvider和 @InsertProvider ,@SelectProvider某些情况可以共用:

 

// 动态插入部门
    @InsertProvider(type=DeptDynaSqlProvider.class,method="insertDept")
    void save(Dept dept);
    
    // 动态修改用户
    @SelectProvider(type=DeptDynaSqlProvider.class,method="updateDept")
    void update(Dept dept);

 

 

// 动态插入
    public String insertDept(Dept dept){
        
        return new SQL(){
            {
                INSERT_INTO(DEPTTABLE);
                if(dept.getName() != null && !dept.getName().equals("")){
                    VALUES("name", "#{name}");
                }
                if(dept.getRemark() != null && !dept.getRemark().equals("")){
                    VALUES("remark", "#{remark}");
                }
            }
        }.toString();
    }
    // 动态更新
    public String updateDept(Dept dept){
        
        return new SQL(){
            {
                UPDATE(DEPTTABLE);
                if(dept.getName() != null){
                    SET(" name = #{name} ");
                }
                if(dept.getRemark() != null){
                    SET(" remark = #{remark} ");
                }
                WHERE(" id = #{id} ");
            }
        }.toString();
    }

原因以后补充

你可能感兴趣的:(ssm,待完善,mybatis)