链式编程封装javaBean数据

举报
brucexiaogui 发表于 2021/11/25 23:13:34 2021/11/25
【摘要】 链式编程封装javaBean数据 1. 前言 在封装数据过程中,每添加一次数据都需要对象.set方法,代码写起来重复且不够美观。使用链式编程封装javaBean数据,可以实现循环添加数据。 ...

链式编程封装javaBean数据

1. 前言

在封装数据过程中,每添加一次数据都需要对象.set方法,代码写起来重复且不够美观。使用链式编程封装javaBean数据,可以实现循环添加数据。

2. 链式编程封装数据Demo

2.1.创建一个javaBean

package com.bruce.hulk.dao.testbean;

import lombok.*;

/**
 * @author bruce
 * 
 */
@Setter
@Getter
@ToString
@Builder
@EqualsAndHashCode
public class ColumnDTO {
    private String columnName;
    private String columnValue;
    private ColumnType columnType;

}

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19

2.2. 链式编程封装javaBean

  • 实现核心思想
    • 1.构造器中创建一个hashSet,初始化类的同时创建HashSet对象。
    • 2.addColumn方法链式编程实现思想:最后必须返回当前类对象。
    • 3.封装的数据放到HashSet集合优势:自动去除添加的重复数据,确定添加数据的唯一性。
    • 4.提供一个获取封装数据的方法,同时将HashSet转为List集合。方便从集合中取数据。
package com.bruce.hulk.dao.testbean;

import com.google.common.collect.Lists;
import com.google.common.collect.Sets;
import java.util.List;
import java.util.Set;

/**
 * @author bruce
 * 
 */
public class ColunmDTOHolder {
    Set<ColumnDTO> colunmSet;
    private ColunmDTOHolder(){
        //1.构造器中创建一个hashSet
        colunmSet = Sets.newHashSet();
    }
    public static ColunmDTOHolder of (){
        return new ColunmDTOHolder();
    }


    /**
     * 2.
     * @MethedName: addColumn链式编程实现思想:最后必须返回当前类对象。
     * @Description: 封装ColumnDTO数据,并添加到HashSet集合中。能够自动
     * 去除添加的重复数据,确定添加数据的唯一性。
     */
    public ColunmDTOHolder addColumn(String columnName,String columnValue) {
        this.colunmSet.add(ColumnDTO.builder()
                .columnName(columnName)
                .columnValue(columnValue)
                .columnType(ColumnType.WHERE)
                .build());
        return this;
    }

    //3. 提供一个获取封装数据的方法,同时将HashSet转为List集合。方便从
    //集合中取数据。
    public List<ColumnDTO> getColumnDTO() {
         return Lists.newArrayList(colunmSet);
    }
}

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43

2.3.链式编程使用

  • 使用链式编程封装提供的方法添加数据非常的方便好用,代码结构美观性得到了优化。
package com.bruce.hulk.dao.testbean;

/**
 * @author bruce
 */
public class AppTest {
    public static void main(String[] args) {

// -----------没有使用链式编程,添加数据方式--------------
        ColumnDTO columnDTO = new ColumnDTO();
        columnDTO.setColumnName("username");
        columnDTO.setColumnValue("zhansan");
        columnDTO.setColumnName("passwd");
        columnDTO.setColumnValue("123456");
        columnDTO.setColumnName("address");
        columnDTO.setColumnValue("大连抚顺");


// -----------使用链式编程,添加数据方式--------------

        ColunmDTOHolder column = ColunmDTOHolder.of()
                //通过链式编程实现了循环添加数据
                .addColumn("username", "zhangsan")
                .addColumn("username", "zhangsan")
                .addColumn("passwd", "1258963")
                .addColumn("address", "大连抚顺");
    }
}


  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29

文章来源: brucelong.blog.csdn.net,作者:Bruce小鬼,版权归原作者所有,如需转载,请联系作者。

原文链接:brucelong.blog.csdn.net/article/details/105663110

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。