本文介绍了Salesforce Apex开发环境的设置以及一个简单的Hello World示例的实现过程。

Salesforce开发环境

Salesforce通过http://developer.force.com提供了一个云端的环境供开发者使用。提供电子邮件地址和基本的个人信息就可以注册开发者账户。

注册成功后,登录http://developer.force.com,在首页的用户名下点击My Settings > Personal > Reset My Security Token以获取秘匙。

Salesforce工具

开发Salesforce Apex应用有多种工具可供选择,官方提供的有两个,Force.com Developer Console和Force.com IDE, 本文使用Force.com IDE。

Force.com IDE是在Eclipse IDE基础上的一个插件,要求Eclipse 4.5及JDK 8及以上, 安装路径为https://developer.salesforce.com/media/force-ide/eclipse45

创建Salesforce对象

登录http://developer.force.com

点击Setup > Build > Create > Objects以创建一个Salesforce对象

命名新对象BookSave

Book对象页面的Custom Fields & Relationships中点击New以创建该对象的字段

选择字段类型为Text

输入字段名为TitleNext, 直到最后Save

重复以上步骤再创建一个ISBN字段, 以及一个Language字段。

创建Apex Hello World 工程

首先在Eclipse中选择菜单Window > Open Perspective > Other > Force.com切换到Force.com Perspective。

首先选择菜单File > New > Force.com project以创建工程, 需要填写Force.com的用户名,密码以及秘匙。

选择缺省的Apex, Lighting and Visualforce工程内容

工程创建完毕

创建Apex Class和测试代码

在Eclipse工程中选择New Apex Class, 并命名为BookTools

BookTools类代码如下

    public with sharing class BookTools {

        public static void processBookRecords(Book__c[] books) {
for (Book__c book :books){ System.debug('Process book record: ' + book.Title__c); book.Language__c = 'TBD';
}
}
}

在Eclipse工程中选择New Apex Class, 并命名为BookToolsTest

代码如下

    @isTest
public with sharing class BookToolsTest {
static testMethod void validateProcessBookRecords() {
Book__c book = new Book__c(Title__c='Harry Potter and the Deathly Hallows', ISBN__c='9780545010221');
System.debug('Create new book record: ' + book.Title__c); insert book; Book__c updatedBook = [SELECT Language__c FROM Book__c WHERE Id =:book.Id]; System.assertEquals('TBD', updatedBook.Language__c);
}
}

在Eclipse工程中右键选择Force.com > Save to Server

创建Apex Trigger

Book对象页面的Triggers中点击New以创建一个新的 Trigger

代码如下

    trigger BookTrigge on Book__c (before insert) {
Book__c[] books = Trigger.new; BookTools.processBookRecords(books);
}

测试Apex代码

在Eclipse菜单中选择Run > Run Configurations,在Apex Test下新建一个测试项,输入测试名称, 选择工程和Test Class, 并选择Use logging.

点击Run以运行选定的测试,运行结果和Log输出显示在Apex Test Results View中。

后记

  1. Force.com IDE 需要JDK 8及以上,如果系统默认的JDK在8以下的话,需要另行安装所需的JDK并修改eclipse.ini以指定JDK路径
    openFile
--launcher.appendVmargs
-vm
<path to javaw.exe>
-vmargs

Salesforce Apex 开发环境设置和Hello World示例的更多相关文章

  1. Hadoop集群(第7期)_Eclipse开发环境设置

    1.Hadoop开发环境简介 1.1 Hadoop集群简介 Java版本:jdk-6u31-linux-i586.bin Linux系统:CentOS6.0 Hadoop版本:hadoop-1.0.0 ...

  2. Cocos开发中Visual Studio下HttpClient开发环境设置

    Cocos2d-x 3.x将与网络通信相关的类集成到libNetwork类库工程中,这其中包括了HttpClient类.我们需要在Visual Studio解决方案中添加libNetwork类库工程. ...

  3. Cocos开发中Visual Studio下libcurl库开发环境设置

    我们介绍一下win32中Visual Studio下libcurl库开发环境设置.Cocos2d-x引擎其实已经带有为Win32下访问libcurl库,Cocos2d-x 3.x中libcurl库文件 ...

  4. Visual Studio下SQLite数据库开发环境设置

    由于我们介绍的内容都是基于微软的Visual Studio下开发的Win32平台,所以下边我们介绍Visual Studio下SQLite数据库开发环境设置.具体而言我们有两种方式可以在Visual ...

  5. Visual Studio 2012下Box2D开发环境设置

    Cocos2d-x 3.x默认情况下采用的物理引擎是Chipmunk,如果我们要使用Box2D引擎,需要进行一些设置和调整,而且不同的开发平台下这些设置也有所不同.由于本书在此之前介绍的都是基于微软的 ...

  6. Cocos发育Visual Studio下一个HttpClient开发环境设置

    Cocos2d-x 3.x相关类集成到网络通信libNetwork图书馆project于.这其中包括:HttpClient分类. 我们需要在Visual Studio溶液中加入libNetwork图书 ...

  7. Hadoop集群 -Eclipse开发环境设置

    1.Hadoop开发环境简介 1.1 Hadoop集群简介 Java版本:jdk-6u31-linux-i586.bin Linux系统:CentOS6.0 Hadoop版本:hadoop-1.0.0 ...

  8. 2-5 Flutter开发环境与Android开发环境设置详解(Windows)

    第二个是国内服务器的网址 andoid stuido的一些使用的说明文档 https://developer.android.google.cn/studio/intro 安装Flutter Dart ...

  9. python开发环境设置(windows)

    python开发环境设置(windows) 1)  python2.7.3安装 在www.python.org上下载python-2.7.6.amd64.msi软件.安装完毕后设置path路径.控制面 ...

随机推荐

  1. ASP.NET MVC5+EF6+EasyUI 后台管理系统(40)-精准在线人数统计实现-【过滤器+Cache】

    系列目录 上次的探讨没有任何结果,我浏览了大量的文章和个别系统的参考!决定用Cache来做,这可能有点难以接受但是配合mvc过滤器来做效果非常好! 由于之前的过滤器我们用过了OnActionExecu ...

  2. Notes:SVG(3)---滤镜和渐变

    SVG滤镜使用filter标签来定义,该标签必须嵌套在defs元素里面,并且必须指定一个ID,以供引用. 在 SVG 中,可用的滤镜有: feBlend feColorMatrix feCompone ...

  3. u-boot-2015.04 在tq2440上的移植(使用spl引导u-boot)

    本次移植跟以往的不同之处是采用了spl来引导u-boot,参考了博客http://blog.csdn.net/fulinus/article/details/42738641 下载链接:http:// ...

  4. android黑科技——完美解决界面逻辑的数据框架DataBinding(最新)的使用(二)

    昨天我们一起学习了dataBinding的基础用法,我想你可能还停留在它只是不用再findViewById,其实不然,今天我们就来扩展延伸,看看这个框架到底有什么魔力让谷歌官方大力推崇.这里还没看昨天 ...

  5. 使用代码向一个普通的类注入Spring的实例

    转载请在页首注明作者与原文地址 一:应用场景 什么是普通的类,就是没有@Controller,@Service,@Repository,@Component等注解修饰的类,同时xml文件中,也没有相应 ...

  6. 微信小程序demo2

    接着上篇 微信小程序-阅读小程序demo写:http://www.cnblogs.com/muyixiaoguang/p/5917986.html 首页banner动画实现 京东新闻上下动画实现   ...

  7. 注意 AppResLib.dll.*.mui 的生成操作应该为 Content

    为 Windows Phone 8 App 添加本地化的时候,发现修改 AppResLib.dll.*.mui 后不仅没有其变化,还发现修改它导致它失效.通过对比代码发现,问题原因是 AppResLi ...

  8. ASP.NET + EF + SQL Server搭建个人博客系统新手系列(一):界面展示

    第一次写博客,可能有些地方描述的不准确,还请大家将就.本人大四学生,学了半年C#,半年.net,但是很遗憾,学完之后只会写个hello word.老师教的过程中总是会套用一些模板,特别是后台,完全封装 ...

  9. C# if中连续几个条件判断

    C# if中连续几个条件判断 1.if (条件表达式1 && 条件表达式2) 当条件表达式1为true时 using System; using System.Collections. ...

  10. QML 从无到有 3 (自动更新)

    新的需求出来啦,需要自动更新功能,不怕程序升级了. 自动更新,QML不好写,需要c++来辅助,这里就涉及QML中调用c++功能(这里就不写了,百度一下,很多). 思路:获取版本>下载程序> ...