教育行業(yè)A股IPO第一股(股票代碼 003032)

全國(guó)咨詢/投訴熱線:400-618-4000

怎樣模擬訂單字段和生成訂單數(shù)據(jù)?【Java項(xiàng)目開(kāi)發(fā)】

更新時(shí)間:2021年08月25日17時(shí)58分 來(lái)源:傳智教育 瀏覽次數(shù):

好口碑IT培訓(xùn)

訂單數(shù)據(jù)模型通常由訂單編號(hào)、訂單時(shí)間、商品編號(hào)、商品價(jià)格等數(shù)十個(gè)字段組成,模型中的指標(biāo)越多,提供給分析人員可分析的維度就越多,如針對(duì)平臺(tái)運(yùn)維角度統(tǒng)計(jì)指標(biāo)可、以計(jì)算訂單數(shù)據(jù)統(tǒng)計(jì)平臺(tái)總銷售額度、平臺(tái)今日下單人數(shù);針對(duì)商品銷售角度統(tǒng)計(jì)指標(biāo)可以計(jì)算每個(gè)商品的總銷售額、每個(gè)商品的銷售數(shù)量。在本項(xiàng)目模塊開(kāi)發(fā)中,需要計(jì)算每個(gè)商品總銷售額,相應(yīng)的維度數(shù)據(jù)在數(shù)據(jù)庫(kù)中可以表示為bussiness::order::total字段,字段的名稱設(shè)計(jì)可根據(jù)業(yè)務(wù)需求名稱自定義設(shè)置。

首先在cn.itcast.createorder包下創(chuàng)建PaymentInfo.java文件,用于定義訂單字段以及生成訂單數(shù)據(jù),具體代碼如文件9-1所示。
文件9-1 PaymentInfo.java

import com.alibaba.fastison.JSONObject;

import java.Util.Random;

import java.util.UUID;

public class PaymentInfo

private static finallong serialVersionuid =1L;

//序列化ID

private String orderId;                     //訂單編號(hào)

private String productId;                    //商品編號(hào)

private long productPrice;                   //商品價(jià)格

//無(wú)參構(gòu)造方法

public PaymentInfo() {
}

public static long getSerialVersionUID() {

    return serialVersionUID;
}

public String getOrderId(){

return orderId;

public void setOrder (String OrderId){

this.orderId =ordertdi

}

public string getProductId() (

return productId;

public void setPrroductId(String productId)

this.productId=productId;

}

public long getProductPricel()

return productPrice;

}

public void setProductPrice (long poductPrice) {

  this.productPrice =productPrice;

}

QOverride


public String toString(){

return "PaymentInfo{" +

"orderId="+orderId + '\ ''+ 

",productId="+productId + '\ ''+ 

,productPrice="+productPrice+

(

//模擬訂單數(shù)據(jù)

public String random(){

Random r =new Random();

this.orderId=UUID.randomUUID().toString().replaceAll("-"'”")
this.productPrice=r.nextInt (1000);

this.productId=r.nextInt(10)+"";

JSONObject obj=new JSONObject();

string jsonString = obj.toJsoNString(this);

return jsonString;
   }
}

構(gòu)建訂單系統(tǒng)1.jpg


模擬訂單數(shù)據(jù)模塊開(kāi)發(fā)中,第6~8行代碼設(shè)置了3個(gè)字段,分別是訂單編號(hào)、商品編號(hào)、商品價(jià)格。第42~49行代碼是模擬訂單數(shù)據(jù)的核心方法,采用UUID模擬生成訂單編號(hào),UUID是由一組32位數(shù)的十六進(jìn)制數(shù)字隨機(jī)構(gòu)成的字符串?dāng)?shù)據(jù),商品編號(hào)是由0~9這10個(gè)數(shù)字組成,代表特定商品。在數(shù)據(jù)傳輸過(guò)程中,需要將對(duì)象轉(zhuǎn)換成Json格式的字符串,這里采用了Fastjson 數(shù)據(jù)轉(zhuǎn)換工具,調(diào)用JSONObject類的toJSONString()方法將PaymentInfo訂單對(duì)象轉(zhuǎn)換為Json格式的字符串,編寫(xiě)成功后,就可以在test目錄中創(chuàng)建測(cè)試用例,最終隨機(jī)生成的訂單數(shù)據(jù)格式如下。

{"orderId":"b030e0dfb3b04cd18c3b32beac01ab25","productId" :"6","productPrice":834}





猜你喜歡:

依賴倒轉(zhuǎn)原則是什么?軟件設(shè)計(jì)原則介紹

oracle安裝步驟和配置方法詳細(xì)介紹【圖文+視頻教程】

ajax提交請(qǐng)求默認(rèn)是異步還是同步?

怎樣實(shí)現(xiàn)redis緩存與數(shù)據(jù)庫(kù)同步?

傳智教育Java高級(jí)軟件工程師培訓(xùn)

0 分享到:
和我們?cè)诰€交談!