自2024年7月31日起, AWS SDK for Java 1.x已进入维护模式,并将于2025年12月31日end-of-support
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用区域和可用区
描述区域
要列出账户可用的区域,请调用 AmazonEC2Client 的 describeRegions
方法。该方法返回 DescribeRegionsResult。调用返回对象的 getRegions
方法,获取表示各个区域的 Region 对象的列表。
导入
import com.amazonaws.services.ec2.AmazonEC2; import com.amazonaws.services.ec2.AmazonEC2ClientBuilder; import com.amazonaws.services.ec2.model.DescribeRegionsResult; import com.amazonaws.services.ec2.model.Region; import com.amazonaws.services.ec2.model.AvailabilityZone; import com.amazonaws.services.ec2.model.DescribeAvailabilityZonesResult;
代码
DescribeRegionsResult regions_response = ec2.describeRegions(); for(Region region : regions_response.getRegions()) { System.out.printf( "Found region %s " + "with endpoint %s", region.getRegionName(), region.getEndpoint()); }
请参阅完整示例
描述可用区
要列出账户可用的每个可用区,请调用 AmazonEC2Client 的 describeAvailabilityZones
方法。该方法返回 DescribeAvailabilityZonesResult。调用其 getAvailabilityZones
方法,获取表示各个可用区的 AvailabilityZone 对象的列表。
导入
import com.amazonaws.services.ec2.AmazonEC2; import com.amazonaws.services.ec2.AmazonEC2ClientBuilder; import com.amazonaws.services.ec2.model.DescribeRegionsResult; import com.amazonaws.services.ec2.model.Region; import com.amazonaws.services.ec2.model.AvailabilityZone; import com.amazonaws.services.ec2.model.DescribeAvailabilityZonesResult;
代码
DescribeAvailabilityZonesResult zones_response = ec2.describeAvailabilityZones(); for(AvailabilityZone zone : zones_response.getAvailabilityZones()) { System.out.printf( "Found availability zone %s " + "with status %s " + "in region %s", zone.getZoneName(), zone.getState(), zone.getRegionName()); }
请参阅完整示例
描述账户
要描述您的账户,请调用 AmazonEC2Client 的 describeAccountAttributes
方法。此方法返回 DescribeAccountAttributesResult 对象。调用此对象的 getAccountAttributes
方法以获取 AccountAttribute 对象的列表。您可以遍历该列表来检索 AccountAttribute 对象。
您可以通过调用 AccountAttribute 对象的 getAttributeValues
方法来获取您账户的属性值。此方法返回 AccountAttributeValue 对象的列表。您可以遍历第二个列表来显示属性的值(请参阅以下代码示例)。
导入
import com.amazonaws.services.ec2.AmazonEC2; import com.amazonaws.services.ec2.AmazonEC2ClientBuilder; import com.amazonaws.services.ec2.model.AccountAttributeValue; import com.amazonaws.services.ec2.model.DescribeAccountAttributesResult; import com.amazonaws.services.ec2.model.AccountAttribute; import java.util.List; import java.util.ListIterator;
代码
AmazonEC2 ec2 = AmazonEC2ClientBuilder.defaultClient(); try{ DescribeAccountAttributesResult accountResults = ec2.describeAccountAttributes(); List<AccountAttribute> accountList = accountResults.getAccountAttributes(); for (ListIterator iter = accountList.listIterator(); iter.hasNext(); ) { AccountAttribute attribute = (AccountAttribute) iter.next(); System.out.print("\n The name of the attribute is "+attribute.getAttributeName()); List<AccountAttributeValue> values = attribute.getAttributeValues(); //iterate through the attribute values for (ListIterator iterVals = values.listIterator(); iterVals.hasNext(); ) { AccountAttributeValue myValue = (AccountAttributeValue) iterVals.next(); System.out.print("\n The value of the attribute is "+myValue.getAttributeValue()); } } System.out.print("Done"); } catch (Exception e) { e.getStackTrace(); }
请参阅 GitHub 上的完整示例
更多信息
-
《Amazon EC2 用户指南(适用于 Linux 实例)》中的区域和可用区
-
《Amazon EC2 API Reference》中的 DescribeRegions
-
《Amazon EC2 API Reference》中的 DescribeAvailabilityZones