首頁>技術>

1. 前言

老闆說,明天甲方要來看產品,你得造點資料,而且資料必須是“真”的,演示效果要好看一些,這樣他才會買我們的產品,我好明年給你換個嫂子。一般開發接到這種過分要求都不會很樂意去做,這完全是體力勞動,而且很棘手。今天胖哥教你一招,讓你做出逼真的“假”資料。

2. javafaker

我們Java是有可以生成模擬資料的框架的,這裡我安利一個Javafaker的框架,你只需要在專案中引入:

        <dependency>            <groupId>com.github.javafaker</groupId>            <artifactId>javafaker</artifactId>            <version>1.0.2</version>        </dependency>

忘記說了它主要的使用場景就是為了製造模擬測試資料,而並不是用來造假。

然後胖哥來演示一下它的用法,先定義一個Java Bean :

/** * User info. * * @author felord.cn * @since 10 :50 */@Datapublic class UserInfo {  /**   * 真實姓名   */  private String realName;  /**   * 手機   */  private String cellPhone;  /**   * 大學   */  private String universityName;  /**   * 城市   */  private String city;  /**   * 地址   */  private String street;}

然後宣告一個Faker物件,你可以根據需要進行本地化宣告,如果是使用中國的:

        Faker fakerWithCN = new Faker(Locale.CHINA);

你要是想造點美帝的資料就改成這樣:

        Faker fakerWithUS = new Faker(Locale.US);

這裡我們使用中國來生成模擬10條模擬資料:

for (int i = 0; i < 10; i++) {    UserInfo userInfo = new UserInfo();    userInfo.setRealName(fakerWithCN.name().fullName());    userInfo.setCellPhone(fakerWithCN.phoneNumber().cellPhone());    userInfo.setCity(fakerWithCN.address().city());    userInfo.setStreet(fakerWithCN.address().streetAddress());    userInfo.setUniversityName(fakerWithCN.university().name());    System.out.println("userInfo = " + userInfo);}

我們來看下結果:

是不是看上去跟真的一樣,但是一定要用到正途,不要用到歪門邪道上。

17
最新評論
  • BSA-TRITC(10mg/ml) TRITC-BSA 牛血清白蛋白改性標記羅丹明
  • 容器時代的分散式日誌架構