故事的起因是這樣的,因上線工作量比較大,測試小y希望晚上的上線可以一部分提前中午上線。但是不料,中午上線不到乙個小時的時間,使用者註冊資料進去了200+條,而上線期間程式出了問題,只有部分使用者資訊入庫,也就是client表資訊完整,可是其他附屬表資訊缺失。不過好在,程式的日誌裡對使用者傳入的資訊打了日誌,於是我們為了避免這200+條使用者投訴,進行了如下操作:
1.從這是時間的日誌裡讀取有用的日誌資訊
2.把這段有用的日誌資訊進行處理,取出使用者相應的資訊字段
3,通過仿頁面表單提交的方式呼叫提交介面進行資料入庫補齊處理
首先,我們來看一下有用的日誌資訊樣式:
於是,我從tomcat裡取出這段時間的日誌檔案,進行了讀取,取出含關鍵語句的行,然後通過split對每一行提取有用資料資訊,並呼叫訪表單提交方法。
首先,逐行讀取日誌檔案:(**如下)
/**
* 讀取一行一行的檔案
* * @param filename
* @return
* @throws ioexception
*/public static listreadlinedfile(string filename)
}file.close();
}catch(ioexception e)
return filecon;
}
其次,提取有用資訊,並逐條呼叫訪表單提交方法:
/**
* 寫入一行一行的檔案
* @param lst 要寫入的字串陣列
* @param filename 要寫入的檔案路徑
* @return
* @throws ioexception
*/public static void writelinedfileclient(list lst, string filepath) throws ioexception ;
int ji = 1;
string data=new string[13];
while(temp.split(fenge[ji]).length>1 && ji//testpost方法為仿頁面表單提交
string result = testpost(data[3],data[1],data[4],data[2],"wx",data[5],data[7],null,data[8],data[10],data[9]);
out.write(result +"");
out.newline();}}
out.close();
out = null;
file=null;
}
testpost方法實現:
public static string testpost(string openid,string cellphone,string name,string babybirth,string sourcetype,string acceptlastedinfo,string code,string *****in,string sacode,string intention,string attention) throws ioexception
system.out.println(stotalstring);
return stotalstring;
}
最後,我們只需要用main方法呼叫一下即可:
public static void main(string args) throws ioexception
給自己挖了乙個坑,然後把自己放進去把坑填好,希望對您有所幫助。
end
Oracle cast函式對使用者資料進行型別轉換
一 cast函式 cast函式的作用是對使用者輸入的資料進行資料型別轉換,比如使用者資料的資料時number型別,小數字數是3位,我們可以將使用者資料轉換成整形資料int型別。cast函式的格式是cast 資料來源 as 待轉換的資料型別 比如我需要將number資料型別的13.658轉換成int型...
mongodb 建立使用者 資料庫例項
原文出處 建立資料庫例項 1.開啟cmd,執行以下命令 cd d c mongodb bin mongo.exe 2.建立tmp庫 執行以下命令 use tmp 建立成功顯示 執行操作 資料庫需要執行操作,才會儲存新建的資料庫,我們可以執行以下命令 檢視資料庫狀態 如上,已經可以看到剛才建立的tmp...
分離與附加使用者資料庫
若將資料庫建立在c盤上,而c磁碟空間有限,需要將資料庫移到別的驅動器上,或者希望將資料庫從一台較慢的伺服器移到另一台更快的伺服器上,通過對資料庫進行分離和附件操作,可以很快的完成這項任務。在進行分離和附加資料庫操作時,應注意以下幾點 1 不能進行更新,不能執行任務,使用者也不能連線在資料庫上。2 在...