一.SalesForce中Schema類的簡單介紹

一.Schema以及Schema NameSpace是什麼

在SalesForce中Schema指的是應用程序中對象(Object)以及對象之間的各種關係。
Schema NameSpace中包含了好多的類和方法,通過這些類和方法,可以訪問Schema的一些基本信息。

二.Schema常用的類和方法

在Schema NameSpace中包含了很多的類以及方法,在此並不會對所有的類和方法做介紹,只會對其中幾個類的幾個方法做簡單介紹。

1.Schema.getGlobalDescribe方法``
這個方法返回系統中所有sObject的一個Map,其中key是sObject Name,value是sObject token。
在此需要介紹一下的是什麼是token,token的中文意思有象徵性的,作爲標誌的意思。
在這裏的token指的是sObject或者是Field,token中並不包含具體的信息,但是通過token可以獲取到sObject或者Field的一些信息。
Schema.SObjectType是sObject token的類型。
Schema.SObjectField是Field token的類型。
Schema.DescribeSObjectResult是sObject describe的類型。
Schema.DescribeFieldResult是Field describe的類型。
代碼示例:

Map<String, Schema.SObjectType> map = Schema.getGlobalDescribe();
system.debug(map);

上面代碼運行輸出的log是

{acceptedeventrelation=AcceptedEventRelation, account=Account, accountchangeevent=AccountChangeEvent, accountcleaninfo=AccountCleanInfo, accountcontactrole=AccountContactRole, accountcontactrolechangeevent=AccountContactRoleChangeEvent, accountfeed=AccountFeed, accounthistory=AccountHistory, accountpartner=AccountPartner, accountshare=AccountShare, ...}

獲得某一個sObject的token可以通通過一下兩種方式:
例如要獲得Account的token
⑴.

Schema.SObjectType type = account.sobjectType;
system.debug(type);

上面代碼的輸出結果是:Account
(2).

Account account = new Account();
system.debug(account.getsObjectType());

上面代碼的輸出結果同樣是Account

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章