日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

小傅哥自研插件,为开发提效80%,已经有8.1k安装量!

發布時間:2023/12/24 windows 40 coder
生活随笔 收集整理的這篇文章主要介紹了 小傅哥自研插件,为开发提效80%,已经有8.1k安装量! 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

作者:小傅哥
博客:https://bugstack.cn

沉淀、分享、成長,讓自己和他人都能有所收獲!??

哈嘍,大家好我是技術UP主小傅哥。

如果你擔心維護成本和性能考量,不想使用 BeanUtils.copyProperties 復制對象,也不想大面積的增加配置文件使用 MapStruct。而是只想要要手寫效果的 x.set(y.get) 模型。那么請立刻在 IDEA 中安裝插件 vo2dto v2.5.1 最新版本。截止到目前小傅哥開發的這款插件已經有 8.1k 安裝量!

IDEA Plugin vo2dto 是一款用于幫助使用 IntelliJ IDEA 編寫代碼的研發人員,快速生成兩個對象轉換過程中所需要大量的 x.set(y.get) 代碼塊的插件工具。在最新 v2.5.1 版本中已支持 Lombok.Builder 模式,讓使用可絲滑得嘞!

文末提供了此插件的源碼地址,你可以針對使用優化提交PR,以后那么多人的使用,都會看見你的貢獻??。

? 特性

  1. 2個對象的轉換操作,通過復制 X x 對象,轉換給 Y y 對象
  2. 允許使用 lombok 對象轉換、lombok 和普通對象轉換,對于 serialVersionUID 屬性過濾
  3. 支持類繼承類,全量的對象轉換操作
  4. 含記憶功能的彈窗選擇映射關系,支持全量對象、支持匹配對象、也支持空轉換,生成一組set但無get的對象
  5. 支持對于引入不同包下的同名類處理
  6. 支持 Lombok.Builder 模式創建轉換對象

??? 安裝

1. 在線安裝

IDEA Plugin 搜索vo2dto直接在線安裝即可

2. 手動安裝

  • 下載:https://github.com/fuzhengwei/vo2dto/releases/tag/v2.5.1
  • 安裝:
IDEA Plugin 手動安裝,導入下載包

?? 使用

  • 視頻:https://www.bilibili.com/video/BV13Y411h7fv - 視頻內有完整的使用介紹和插件設計
  • 描述:你需要復制被轉換 X x = new X() 中的 X x 部分,無論它是方法入參還是實例化或者是接口回值,接下來鼠標定位到轉換對象 Y y 上,可以定位到類 大Y、或者屬性 小y,這樣我就可以知道你要做到是X的對象的屬性值,轉換到Y對象的屬性值上。接下來幫你快速生成全部的 y.set(x.get) 代碼片段。
IDEA Plugin vo2dto 使用演示圖
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Date;

public class ApiTest {

    /**
     * 普通模式
     */
    public void test_vo2dto01(UserVO user) {
        UserDTO userDTO = new UserDTO();
        userDTO.setUserId(user.getUserId());
        userDTO.setUserNickName(user.getUserNickName());
        userDTO.setUserHead(user.getUserHead());
    }
    /**
     * lombok Builder 模式
     */
    public void test_vo2dto02(UserVO user) {
        UserDTO userDTO = UserDTO.builder()
                .userId(user.getUserId())
                .userNickName(user.getUserNickName())
                .userHead(user.getUserHead())
                .build();
    }
    
    @Data
    @Builder
    @AllArgsConstructor
    @NoArgsConstructor
    static class UserDTO {

        private String userId;
        private String userIdx;
        private String userNickName;
        private String userHead;
        private int page;
        private int rows;

    }

    @Data
    @Builder
    @AllArgsConstructor
    @NoArgsConstructor
    static class UserVO {

        private Long id;
        private String userId;
        private String userNickName;
        private String userHead;
        private String userPassword;
        private Date createTime;
        private Date updateTime;

    }

}
  • 注意;v2.5.1 版本已支持了 Lombok Builder 模式,方便使用 Lombok 的伙伴創建對象。如圖使用方式即可完成創建過程。

?? 共建

源碼:https://github.com/fuzhengwei/vo2dto - 你可以Fork工程,了解這套組件源碼,對使用過程中所需的優化和擴展,提交你的代碼。那么下次發版就會帶上你的貢獻了??

總結

以上是生活随笔為你收集整理的小傅哥自研插件,为开发提效80%,已经有8.1k安装量!的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。