2015-04-27 40 views
-2

我想知道處理傳遞給主方法的參數的最佳方法。 用戶從命令行傳遞參數。即我有一個將調用我的java程序的shell腳本。我正在使用這個Java程序來調用Web服務。例如,
「Ram,ABC,XYZ,null,null,27-04-15」「 「」Kiran,IJK,LMN,null,null,20-04-15「處理在java中傳遞給main方法的參數的最佳方法是什麼?

如您所見,每個字符串中都有不同的屬性值(以逗號分隔)。每組輸入都是空格分開的。 Web服務提供了兩種方法,如下所示。

公共無效processArg(姓名,ADDR1,ADDR2,INFO1,INFO2,DOB){ }

公共無效processArg2(姓名,ADDR1,ADDR2){ }

這裏第一種方法processArg將用於提交每組數據。一旦這個方法返回成功,那麼我需要調用第二個方法processArg2,它將檢查提交的狀態,即是否成功。

達到此目的的最佳方法是什麼?如果我沒有清楚解釋,請告訴我。

感謝

+0

這是基於意見,所以我不會回答,但我不明白爲什麼,除非需要用於其他目的,你不會說,你會存儲它們。沒有進一步解釋你實際上在做什麼,甚至把書面的處理分離出來,也不能很好地翻譯。 – ChiefTwoPencils

+0

嗨,實際的需求是調用有兩種方法的Web服務。第一種方法用於提交數據,第二種方法是檢查狀態,即提交的數據是否完成。爲了簡單起見,我用這個例子來解釋。用戶將從shell腳本傳遞一組數據。我的要求是處理用戶傳遞的輸入,即我需要用第一種方法處理每一組數據,然後一旦第一種方法成功,我需要調用第二種方法來檢查每種狀態的提交狀態。如果我仍然沒有說清楚,請告訴我。 – user2967784

回答

0

您可以使用字符串標記來解決這個issue.Following代碼可以解決你的問題。

public static void main(String[] args){ 
    for(int i=0;i<args.length;i++){ 
     String dataString=args[i]; 
     String[] splittedData=dataString.trim().split(","); 
     processArg(splittedData[0],splittedData[1],splittedData[2],splittedData[3],splittedData[4]); 
     processArg2(splittedData[0],splittedData[1],splittedData[2]); 
    } 
} 
+0

@ user2967784如果解決方案解決了您的查詢,那麼您可以通過接受答案來解決問題 – varpekv

相關問題