进行阿里云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. 淘宝(阿里百川)手机客户端开发日记第九篇 Looper详解

    public final class Looper: 官方的API: Class used to run a message loop for a thread. Threads by default ...

  2. nginx学习(一):基本安装

    转载自http://summervast.blog.51cto.com/690507/385511 注意:可能因版本不同,个别指令不起作用,需要注意版本灵活安装,我在安装时也遇到过此问题 开始学习ng ...

  3. 自编译ngrok服务器

    转载:http://www.haiyun.me/archives/1012.html 首先安装GO环境,http://www.haiyun.me/archives/1009.html 1 2 3 4 ...

  4. 2015安徽省赛 B.求和

    题目描述 对于正整数n,k,我们定义这样一个函数f,它满足如下规律 现在给出n和k,你的任务就是要计算f(n,k)的值. 输入 首先是一个整数T,表示有T组数据 接下来每组数据是n和k(1<=n ...

  5. HDU 1505 City Game (hdu1506 dp二维加强版)

    F - City Game Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Submi ...

  6. 如何下载google play免费应用的apk文件

    到这里: http://apps.evozi.com/apk-downloader/ 一看便知.

  7. Count Primes

    Count the number of prime numbers less than a non-negative number, n public int countPrimes(int n) { ...

  8. coco2dx实现翻拍效果

    昨天吃饭看见同事演示他做的翻牌效果,感觉不错,我心血来潮也来搞个,很简单直接上代码. class FlipCard : public CCNode { public: CREATE_FUNC(Flip ...

  9. Android 使用dip单位进行布局的一点知识

    先看看怎么算出一个设备的dpi, 其实就是算出对角线上有多少个px,之后除上屏幕尺寸.比如,1280*720 的10.1寸设备,dpi = (sqrt(1280*1280+720*720))  / 1 ...

  10. Windows metro app wcf 地址可配置

    在Windows metro app中调用wcf服务可以通过添加 “服务引用”来实现.一旦项目发布则不可修改.这个和桌面开发不一样. 现在我们通过读取文本的方式来读取wcf地址. 1.添加所需引用的w ...