您好,登錄后才能下訂單哦!
今天給大家介紹一下Salesforce中Apex異常該怎么處理。文章的內容小編覺得不錯,現在給大家分享一下,覺得有需要的朋友可以了解一下,希望對大家有所幫助,下面跟著小編的思路一起來閱讀吧。
一 . Apex語言
Apex是由Salesforce.com開發的專有語言。 根據官方定義,Apex是一種強類型,面向對象的編程語言,允許開發人員在Force.com平臺服務器上執行流量和事務控制語句,同時調用Force.com API。 它具有類似Java的語法,并且像數據庫存儲過程。 它使開發人員能夠向大多數系統事件添加業務邏輯,包括按鈕點擊,相關記錄更新和Visualforce頁面。可以通過Web服務請求和對象上的觸發器啟動代理代碼。 Apex包含在Performance Edition,Unlimited Edition,Enterprise Edition和Developer Edition中。
1.語言特點
1)集成
Apex內置支持DML操作,如INSERT,UPDATE,DELETE以及DML異常處理。它支持內聯SOQL和SOSL查詢處理,返回一組sObject記錄。
2)Java語法易于使用
Apex很容易使用,因為它使用像Java這樣的語法。例如,變量聲明,循環語法和條件語句。
3)數據高度集成
Apex數據集中和設計,以一起執行多個查詢和DML語句。它發出的多個數據庫事務語句 。
4)強類型
Apex是強類型語言。它使用直接引用構架對像,比如sObject,并且任何無效引用如果被刪除或者如果是錯誤的數據類型,就會快速失敗。
5)多租戶環境
Apex在多租戶環境中運行。因此,Apex運行時引擎設計為密切防范失控代碼,防止其獨占共享資源。任何違反限制的代碼都會失敗,并顯示易于理解的錯誤消息 。
6)自動升級
Apex作為Salesforce版本的一部分進行升級,不必手動進行升級。
7)容易測試
Apex為單元測試創建和執行提供內置支持,包括指示覆蓋了多少代碼的測試結果,以及代碼的哪些部分可以更高效。
二.異常處理
Apex 因其具有類似Java的語法,所以對于異常處理我們通常使用 try、catch、finally、throw 等關鍵字。 對于每一個 try 代碼段,必須要有至少一個 catch 或 finally 代碼段,而 finally 代碼段最多只能有一個, finally 代碼段是必然會執行的代碼段,無論異常有沒有發生, 這些跟Java里面的是一樣的。
標準格式 :
try { //同時也可以設置一個事務的保存點,當出現異常后可以回滾到保存點 Savepoint sp = Database.setSavepoint(); // 執行操作,有可能發生異常,將其放到try中包裹 }catch(異常類型 e){ // 捕捉 相關類型的異常 //回滾 到某個保存點 Database.rollback(sp); }catch(Exception e){ // e.getMessage() 獲取異常信息 }finally{ //無論如何都會(需要)執行的其他操作 }
三 .常見的異常類型
系統定義的異常類型有:
DmlException:關于數據庫操作的異常
ListException:關于列表操作的異常
NullPointerException:關于空指針的異常
QueryException:關于查詢語句的異常
SObjectException:關于SObject對象的異常
它們共有的方法包括:
getCause():給出異常原因
getLineNumber():給出發生異常的行數
getMessage():給出異常的詳細信息
getStackTraceString():給出異常發生的棧信息
getTypeName():給出異常的類型,比如 DmlException、NullPointerException 等
對于每個異常類型,還有自己的方法,比如 DmlException 就擁有 getDmlFieldNames()、getDmlMessage() 等方法。
如果要捕捉不同的異常類型,要將“一般異常類型”(Exception 最大的異常類型)放在最后。
以上就是Salesforce中Apex異常該怎么處理的全部內容了,更多與Salesforce中Apex異常該怎么處理相關的內容可以搜索億速云之前的文章或者瀏覽下面的文章進行學習哈!相信小編會給大家增添更多知識,希望大家能夠支持一下億速云!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。