课程章节介绍
同学们,我们这节课来看一个非常实用的部分,
就是Apex开发中经常碰到的几个高级能力:
元数据、缓存、文章管理和文件下载。
这些内容能帮你做出更智能、更灵活的应用。
首先,什么是元数据?
在Salesforce里,你建的对象、字段、页面布局,
这些配置都是以“元数据”的形式保存的。
以前我们要手动点鼠标去改,
但现在,我们可以用Apex里的Metadata命名空间,
直接在代码中读取或调整这些配置。
举个例子:
你开发了一个App,安装后需要自动创建几个自定义字段。
那你就可以写上Apex,让它去检查字段存不存在,
不存在就调用Metadata API自动建好。
或者你要做一个自定义的配置向导,
让管理员通过界面调整设置,你背后用代码去改元数据。
而且这样操作,权限都是受控的,
能安全地访问那些受保护的元数据,
不用担心把关键配置搞乱。
接下来是平台缓存。
你有没有遇到过查询数据太慢的情况?
比如每次都要去数据库取同样的记录。
平台缓存就是来解决这个问题的,
它把常用数据暂存起来,下次再取就特别快。
它有两种类型:
一种是会话缓存,数据跟着用户会话走,
用户一退出就没,适合存临时的东西;
另一种是组织缓存,我这边Slide里叫“收件箱缓存”,
你可以理解成“组织级缓存”,一个地方存了,
整个公司的用户都能共享,
非常适合存那些很少变化、但是很多人会用到的配置数据。
再说说Salesforce Knight,
其实这个就是指用程序来管理知识库文章。
比如你们公司有个知识库,里面有各种产品的帮助文档。
你可以写Apex自动创建文章、
设定发布流程、或者根据条件批量翻译。
这样就不需要人工逐条去点了,
尤其是在文章数量很大的时候特别省力。
最后是文件下载的自定义处理。
通常用户点下载按钮,就直接拿到文件了。
但有些场景,你得在下载前做点事情:
比如先检查权限、加上水印,
或者动态把几个文件打包成一个ZIP。
这个时候,Salesforce File支持我们用回调的方式,
让Apex在后台准备好文件流,
再把文件推给用户。
这样整个下载过程我们就有完全的控制权。
你看,把元数据、缓存、知识文章、文件下载这几个点结合起来,
就能做出体验很好、而且很自动化的企业应用。
大家课后可以打开开发者文档,
搜一下Metadata命名空间、Platform Cache、Knowledge和ContentVersion这些关键字,
自己跑一跑例子,感受会更深。
今天就到这里,下节课我们继续深入。
关键词
Apex
Salesforce
Developer Guide