java通过maven构建项目实现日志生成模拟(二)构建数据,FastJson方法的使用
啟動日志格式
啟動日志結構相對簡單,主要包含公共信息,啟動信息和錯誤信息。 {"common": {"ar": "230000", -- 地區編碼"ba": "iPhone", -- 手機品牌"ch": "Appstore", -- 渠道"md": "iPhone 8", -- 手機型號"mid": "YXfhjAYH6As2z9Iq", -- 設備id"os": "iOS 13.2.9", -- 操作系統"uid": "485", -- 會員id"vc": "v2.1.134" -- app版本號},"start": { "entry": "icon", --icon手機圖標 notice 通知 install 安裝后啟動"loading_time": 18803, --啟動加載時間"open_ad_id": 7, --廣告頁ID"open_ad_ms": 3449, -- 廣告總共播放時間"open_ad_skip_ms": 1989 -- 用戶跳過廣告時點}, "err":{ --錯誤 "error_code": "1234", --錯誤碼"msg": "***********" --錯誤信息 },"ts": 1585744304000 --跳入時間戳 }根據上面的日志來構建數據
在java文件夾下創建FastJsonTest類
創建一個文件夾,下面包含Common,Error,Start類
輸入數據,編寫Common類
public class Common {private String ar;private String ba;private String ch;private String md;private String mid;private String os;private String uid;private String vc;}然后Alt + Insert 創建get 和 set
按Shift+↓全選;其他類同理
編寫Start類
public class Start {private String entry;private int open_ad_id;private int open_ad_ms;private int open_ad_skip_ms;}編寫Error類
public class Error {private String error_code;private String msg;}編寫創建啟動日志類
public class Start_Log {private Common common;private Start start;private Error err;private long ts;}主要方法介紹
下載Json的jar包主要是利用兩個方法;
toJSONString() 和 parseObject()
JSON.toJSONString() : 將對象轉換為JSON字符串;
JSON.parseObject() 將JSON字符串轉換為Java對象;
最后需要做到 從一串JSON字符串里面,找到需要的數據
構建日志
import com.alibaba.fastjson.JSON; import com.zygxy.bean.Common; import com.zygxy.bean.Error; import com.zygxy.bean.Start; import com.zygxy.bean.Start_Log;import java.util.Date;public class FastJsonTest {public static void main(String[] args) {Common common =new Common();common.setAr("450000");common.setBa("OPPO");common.setCh("oppo shop");common.setMd("OPPO K1");common.setMid("YXfhjAYH6As2z9Iq");common.setOs("android 11");common.setUid("99999");common.setVc("v2.1");Start start = new Start();start.setEntry("icon");start.setOpen_ad_id(18803);start.setOpen_ad_ms(5000);start.setOpen_ad_skip_ms(3000);Error err= new Error();err.setError_code("0000");err.setMsg("");Start_Log log= new Start_Log();log.setCommon(common);log.setStart(start);log.setErr(err);log.setTs(new Date().getTime());String jsonString = toJSONString(log);System.out.println(jsonString);}public static String toJSONString(Object o){return JSON.toJSONString(o);}}點擊運行
{"common":{"ar":"450000","ba":"OPPO","ch":"oppo shop","md":"OPPO K1","mid":"YXfhjAYH6As2z9Iq","os":"android 11","uid":"99999","vc":"v2.1"},"err":{"error_code":"0000","msg":""},"start":{"entry":"icon","open_ad_id":18803,"open_ad_ms":5000,"open_ad_skip_ms":3000},"ts":1639200109107}
反過來也可以通過JSON.parseObject()將上面的json字符串轉化成java對象
編寫測試測試對象
編寫代碼
把之前的代碼改一下,這里注釋
上面四個類下面 加上toString方法:
其它幾個同理
運行程序得到:
總結
以上是生活随笔為你收集整理的java通过maven构建项目实现日志生成模拟(二)构建数据,FastJson方法的使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 简单的IDEA的快捷键操作和简写操作介绍
- 下一篇: 通过插件自动将maven项目打成jar包