假定開始沒有這個文件,在插入數(shù)據(jù)時建立文件。
創(chuàng)新互聯(lián)公司服務項目包括建水網(wǎng)站建設、建水網(wǎng)站制作、建水網(wǎng)頁制作以及建水網(wǎng)絡營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,建水網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟效益。目前,我們服務的客戶以成都為中心已經(jīng)輻射到建水省份的部分城市,未來相信會繼續(xù)擴大服務區(qū)域并繼續(xù)獲得客戶的支持與信任!
FILE *fp;
fopen(激法館盒弋谷龜貪駭楷"c:a.txt","wt+");這個是打開以寫或讀的方式打開文件。打開后就可以寫入了,用for循環(huán),例如你有4組數(shù)據(jù),
for(int i;i=4;i++)
{
fprintf(fp,"%s%s%s%s",a,b,c,d);
}
fprintf();就實現(xiàn)了把數(shù)據(jù)寫入文件的功能。跟printf();差不多,只是一個是往文件里寫,一個是往屏幕上寫。
上面就實現(xiàn)了插入操作。
如果你想刪除一個數(shù)據(jù),就先在數(shù)組中刪除,然后重新進行上述寫入文件操作。 要是讀取數(shù)據(jù)的話就在打開文件時:fp = fopen("c:a.txt",r+);
要是還不明白的話就看下書,這兩個函數(shù)就可以滿足你的需要。
你這個只是一個方法,而且是數(shù)據(jù)分析,應該放在服務層,而且你這里還沒有返回值,怎么告訴控制層?
第一:服務層:
public String audit(Long spuId,String status) {
Spu spu =new Spu();
spu.setId(spuId);
spu.setStatus(status);
if ("1".equals(status)){//審核通過
spu.setIsMarketable("1");//自動上架
}else{
如果不是,怎么怎么樣
}
spuMapper.updateByPrimaryKeySelective(spu);
return 某個狀態(tài)值
}
第二:控制層:
前端傳進來參數(shù),調(diào)用服務層方法,返回前端
1.權(quán)限的設置:審核人員看不到操作模塊;操作人員看不到審核模塊
2.記錄表中應該有一個狀態(tài)的字段:操作人員錄入信息后該條記錄應該為待審核(或者是提交審核)狀態(tài),(如果輸入了二級密碼,狀態(tài)直接為審核通過);審核模塊中直接查詢狀態(tài)為待審核(或提交審核)的記錄,同意后更新該記錄的狀態(tài)為審核通過;
3.你至少需要以下幾個action:
①操作員提交數(shù)據(jù)的action(包括修改,可以公用這個action)
②審核員查詢數(shù)據(jù)的action
③審核員更新記錄狀態(tài)的action
(這里沒考慮權(quán)限的問題,如果考慮權(quán)限問題,你的工作量還有很多很多)
你可以只用一個定時任務,每次取一個,然后進行處理,你也可以順序得進行,也可以多線程,但是取過的記錄最好在數(shù)據(jù)庫上打個標記來區(qū)別。
還有種就是取一個列表,然后全插到一個隊列里,另一線程就是用隊列的阻塞原理來取對象來處理,沒有就會阻塞在那里,同樣建議你每次給取到的和處理掉的數(shù)據(jù)都打個標記(如果你是刪除的就不說了)