进行阿里云sdk开发的前提是已经购买阿里云的相关服务才能调用阿里的相关接口进行开发。最近公司在做云管控的项目,于是进行下摘录总结。

一. 环境准备

阿里云针对不同的开发语言提供不同的sdk,由于项目用的是java语言进行开发,所以下载的是java sdk,介绍的也是java sdk的开发方式。

1.首先下载服务的SDK,阿里云Java SDK支持J2SE Development Kit (JDK) 1.5或以上版本。

2.安装步骤

  1. 在解压的文件中可以找到 aliyun-sdk-java-online_standard-20141010.jar 这个包;
  2. 以Eclipse为例导入jar包的过程如下:在Eclipse上右键点击工程 -> Properties -> Java Build Path -> Libraries -> Add External JARs(netbeans和intellij等其他idea用户请自行按照相应导入jar包得方法导入这个包);
  3. 选择以上jar包,点击“OK”按钮,经过以上步骤,你就可以在工程中使用阿里云Java SDK了。

二.快速入门

1.初始化一个AliyunClient

  1. 与阿里云SDK相关的类都在包com.aliyun.api.AliyunClient下;
  2. AliyunClient是与API交互的接口,SDK的操作都是通过AliyunClient完成的;
  3. AliyunClient可以复用,建议设置成应用程序全局唯一的;
  4. 用户可以调用带有connectTimeout和readTimeout的构造方法来设置SDK调用接口的连接超时时间和读取超时时间,SDK默认的连接超时时间是3秒,读取超时时间是80秒。

示例代码如下:

import com.aliyun.api.AliyunClient;
import com.aliyun.api.DefaultAliyunClient; public class CreateAliyunClientDemo { private static AliyunClient client;
static {
String serverUrl = "<serverUrl>"; //例如: http://ecs.aliyuncs.com/
String accessKeyId = "<accessKeyId>";
String accessKeySecret = "<accessKeySecret>"; // 初始化一个AliyunClient
client = new DefaultAliyunClient(serverUrl, accessKeyId, accessKeySecret);
} public static void main(String[] args) { } }

2.SDK调用示例

调用步骤:

  1. 实例化一个请求类,根据调用API的不同版本实例化不同Java包下的请求类;
  2. 给请求实例赋值;
  3. 调用接口返回调用结果。

包名称介绍

下面以ECS API 2014-05-26版为例

请求类

响应类

示例代码

创建实例:

public void createInstance() {
CreateInstanceRequest createInstanceRequest = new CreateInstanceRequest();
createInstanceRequest.setRegionId("<RegionId>");
createInstanceRequest.setImageId("<ImageId>");
createInstanceRequest.setInstanceType("<InstanceType>");
createInstanceRequest.setSecurityGroupId("<SecurityGroupId>"); try {
CreateInstanceResponse createInstanceResponse = client.execute(createInstanceRequest);
if (StringUtils.isEmpty(createInstanceResponse.getErrCode())) { //创建成功
String instanceId = createInstanceResponse.getInstanceId(); //获取实例ID
} else {
String errCode = createInstanceResponse.getErrorCode(); //获取错误码
String message = createInstanceResponse.getMessage(); //获取错误信息
}
} catch (ApiException e) {
// TODO: handle exception
}
}

查询实例信息:

public void describeInstanceAttribute(String instanceId) {
DescribeInstanceAttributeRequest describeInstanceAttributeRequest = new DescribeInstanceAttributeRequest();
describeInstanceAttributeRequest.setInstanceId(instanceId);
try {
DescribeInstanceAttributeResponse describeInstanceAttributeResponse = client.execute(describeInstanceAttributeRequest);
if (StringUtils.isEmpty(describeInstanceAttributeResponse.getErrorCode())) { //查询成功
//查看实例信息的代码
//......
} else {
String errCode = describeInstanceAttributeResponse.getErrorCode(); //获取错误码
String message = describeInstanceAttributeResponse.getMessage(); //获取错误信息
}
} catch (ApiException e) {
// TODO: handle exception
}
}

删除实例:

public void deleteInstance(String instanceId) {
DeleteInstanceRequest deleteInstanceRequest =new DeleteInstanceRequest();
deleteInstanceRequest.setInstanceId(instanceId);
try {
DeleteInstanceResponse deleteInstanceResponse=client.execute(deleteInstanceRequest);
if (StringUtils.isEmpty(deleteInstanceResponse.getErrorCode())) { //删除成功 } else { //删除失败
String errorCode = deleteInstanceResponse.getErrorCode(); //获取错误码
String message = deleteInstanceResponse.getMessage(); //获取错误信息
}
} catch (ApiException e) {
// TODO: handle exception
}
}
  • 所有的request返回的值都封装在相应的response对象里,假定我们的response对象名就叫response,则可以通过response.get<成员变量名>()获取。
  • 每一个request返回的response里含有的成员变量可以从Open API文档中查看到。

阿里云SDK手册之java SDK的更多相关文章

  1. 阿里云MNS官方PHP版SDK缺少message tag问题处理

    最近在使用阿里云MNS官方PHP版SDK的过程中,发现发送到topic的消息,不能设置tag(其它语言版本SDK支持tag,如java,python),但在阿里云控制台页面发送是可以设置tag的. 因 ...

  2. 阿里云服务器ubuntu安装java运行环境

    服务器 阿里云服务器ubuntu安装java运行环境 转:http://www.codingyun.com/article/45.html 今天来给大家介绍一下在阿里云ubuntu服务器下安装java ...

  3. iOS使用阿里云OSS对象存储 (SDK 2.1.1)

    最近项目中用到了阿里云OSS对象存储,用来存储APP中图片.音频等一些数据.但坑爹的阿里云居然在11月20日将SDK版本更新到了2.1.1,然而网上给出的教程都是1.*版本的(针对iOS),两个版本所 ...

  4. 记一次阿里云Linux服务器安装.net core sdk的问题以及解决方法

    因为公司领导要求新的项目能跨平台部署,也就是说能部署到Linux服务器上,故新的项目采用了Asp.net mvc core 1.1 进行开发.开发过程一切都比较顺利,然后在之前申请试用的一台微软Azu ...

  5. 如何在阿里云linux上部署java项目

      前2天把git练了下,敲了很多命令,也借助图形界面增强自己的理解,乘着余热把linux在熟悉下.然后想起以前婷主有让我帮忙搭建的阿里云服务器,所以就想自己试着在阿里云的linux上搭建自己的jav ...

  6. 关于阿里云Centos服务器搭建Java网站不能访问的问题

    首先阿里云提供的手册是没问题的 手工搭建 然后我在地址栏输入服务器地址之后总是提示无法访问! 输入命令 netstat -tunlp,80端口确实是在监听(这里不是8080,因为我在tomcat的配置 ...

  7. 阿里云短信服务Java版

    短信服务管理平台 https://dysms.console.aliyun.com/dysms.htm java短信发送API    https://help.aliyun.com/document_ ...

  8. 阿里云CentOS7.3配置Java Web应用和Tomcat步骤

    阿里云的Linux系统包括CentOS7.3配置了密钥对 怎样将自己ECS实例绑定密钥对,并启用秘钥: https://help.aliyun.com/document_detail/51798.ht ...

  9. 阿里云直播鉴权java代码示例

    段时间公司需要做直播服务,所以就研究了一下阿里云的直播,在直播里面,最重要的就是url的鉴权操作(验证推流或者拉流的有效性),在网上找了很多代码,都没有发现java的demo,所以就写篇播客记录一下, ...

随机推荐

  1. 实战 -- Redis2.4.2集成spring3.2.2

    redis.host=... redis.port= redis.pass= redis.timeout= #最大能够保持idel状态的对象数 redis.maxIdle= #最大分配的对象数 red ...

  2. Ubuntu 16.04 下安装Firefox的Flash插件

    在ubuntu系统环境下面打开优酷视频,发现无法播放视频.Adobe Flash Player 是一款轻量级浏览器插件,具有丰富的 Internet 应用运行时间,提供持续的迷人用户体验.绝妙的音频/ ...

  3. 他们在军训,我在搞 OI(四)

    (怎么自动变成两天一更了?) ——因为我菜啊 T_T Day 5 今天上午刷得爽啊!5 道 NOIP,前四题直接 1A,然而最后一题还是 WA 了一发才 A... 第一题是个简单的贪心,题意大概是 n ...

  4. WPF 样式和行为

    样式(style):组织和重用格式化选项的重要工具,将细节如边距.字体.字号等信息封装起来,然后再需要的地方通过属性来应用样式. 行为(behavior):封装一些通用的UI行为,如拖动,缩放元素的代 ...

  5. 第一次学习QT

    跟着大神学:http://www.cnblogs.com/tornadomeet/archive/2012/06/25/2561007.html

  6. 8个开发必备的PHP功能

    做过PHP开发的程序员应该清楚,PHP中有很多内置的功能,掌握了它们,可以帮助你在做PHP开发时更加得心应手,本文将分享8个开发必备的PHP功能,个个都非常实用,希望各位PHP开发者能够掌握. 1.传 ...

  7. encode和decode

    Python字符串的encode与decode研究心得乱码问题解决方法 为什么会报错“UnicodeEncodeError: 'ascii' codec can't encode characters ...

  8. IE8 不支持html5 placeholder的解决方案

    IE8不支持html5 placeholder的解决方法. /** * jQuery EnPlaceholder plug * version 1.0 2014.07.01戈志刚 * by Frans ...

  9. 高效PHP开发注意事项

    2015年2月26日 17:23:26 http://www.open-open.com/lib/view/open1332904714233.html

  10. msysgit ls 中文显示

    2013年10月17日 14:54:15 安装了新版的msysgit后,在其自带的 git bash 命令行下就可以输入中文汉字了 但是创建了中文名字命名的文件后,再用 ls 命令查询时会出现乱码的情 ...