salesforce 零基礎學習(五十五)java通過SOAP方式定時訪問某個文件然后插入到sObject中


項目源碼:https://github.com/zhangyueqidlmu/SOAP-Access-SFDC.git

項目背景:salesforce端相關數據需要其他系統提供,其他系統可以提供相關數據的CSV文件。使用SOAP方式java代碼定時將文件讀取解析並插入到salesforce相關數據表中。

項目實現功能:固定時間訪問指定目錄下的csv文件,解析csv文件到List中並將records插入到Goods(自定義的sObject)表中,並將此定時任務放到計算機的服務中,防止誤操作關閉了命令窗口導致job結束。

代碼結構:

代碼結構簡單介紹:

  • SFDCConf.properties:鏈接salesforce的配置信息,包括用戶名密碼以及是否使用代理鏈接salesforce
  • BaseConf.preperties:配置job的運行時間以及相關文件的訪問目錄以及文件的名稱等;
  • Log4j.properties:配置相關log4j的配置信息;
  • utilities.BaseConfig:基類配置類,通過配置文件路徑讀取相關的配置信息;
  • utilities.ConstantUtility:常量類;
  • utilities.CVSHelper:對csv文件讀或者寫的方法封裝;
  • utilities.QuartzConfig:讀取BaseConf.properties的絕對路徑;
  • utilities.SFDCConfig:讀取SFDCConf.preperties的絕對路徑;
  • service.EmailMessageService:封裝發送郵件的服務層;
  • service.GoodsService:封裝讀取CSV文件並將內容插入到Goods__c中的服務層;
  • service.SFDCService:封裝鏈接斷開sfdc接口的服務層;
  • handler.SFDCHandler:實現Job接口,定期創建和sfdc的連接;
  • handler.GoodsHandler:實現Job接口,定期調用GoodsService方法實現定期訪問某個文件實現記錄插入;
  • schedule.QuartzTask:程序主入口,配置哪些job運行。

 其中jar目錄中需要包括salesforce相關的wsdl生成的jar,通過wsdl生成jar可以參看http://www.cnblogs.com/zero-zyq/p/6077773.html

通過上述代碼即可實現定期訪問某個目錄下某個csv文件並將文件解析同步到salesforce中。

此項目生成jar以后可以在命令窗口啟動后實現每天定時job,通過以下方式可以將此定時任務放到計算機的服務中,免得其他人員誤操作將命令窗口關閉從而導致job結束。

生成服務的git地址:https://github.com/zhangyueqidlmu/put-job-to-service.git

 目錄結構介紹:

  • conf:此目錄為相關配置文件,包括SFDCConf.properties、BaseConf.preperties、Log4j.properties,配置和上述程序中相同;
  • jar:程序使用相關jar包,將上述項目中的jarcopy過來即可;
  • jre:程序運行需要的jre;
  • log:存儲job運行生成的log日志;
  • InstallService-NT.bat:雙擊此批處理文件可以在服務中生成相關的服務;
  • SOAPOperateGoods.jar:此jar包為上面java項目export產生,名字自己起,本項目名稱為SOAPOperateGoods;
  • StartService-NT.bat:雙擊此批處理文件可以直接啟動此服務;
  • UninstallService-NT.bat:雙擊此批處理文件可以卸載此服務;
  • wrapper.conf:此配置文件中需要配置相關jar的路徑,項目的QuartTask類的相對位置,生成服務的名稱等配置信息;
  • wrapper.log:此log文件顯示job所有的log日志信息。

(注:批處理文件應右鍵使用管理員方式運行)

效果展示:

1.生成Goods Service服務

 2.Goods目錄生成備份文件以及數據原來內容

3.插入到數據庫的數據展示

 總結:此項目用於SOAP方式訪問salesforce並進行定時任務,有錯誤的地方歡迎指正,不懂得地方歡迎留言。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM