По сути, параметры SSM всегда являются строками (документы) . Являются ли они просто строкой, или зашифрованной строкой, или "списком", который на самом деле является строкой, в которой вы согласились использовать запятую в качестве разделителя для элементов.
К счастью, строки невероятно гибки, и хитрость заключается в том, чтобы перенаправить ваши данные в / из строкового представления.
Вероятно, наиболее очевидным является использование типа SSM StringList
и требование упорядочения списка строк, например mailInfo = smpt,username,password,defaultToMail
. В этот момент вы можете сделать свой собственный маршаллинг:
GetParameterRequest parameterRequest = new GetParameterRequest().withName("mailInfo").withWithDecryption(false);
AWSSimpleSystemsManagement ssmclient = AWSSimpleSystemsManagementClientBuilder.defaultClient();
GetParameterResult parameterResult = ssmclient.getParameter(parameterRequest);
String mailInfo = parameterResult.getParameter().getValue();
String[] params = mailInfo.split(",");
String stmp = params[0];
String username = params[1];
String password = params[2];
String defaultToMail = params[3];
Маршаллинг StringList, вероятно, предпочтительнее других опций (например, сериализация класса и сохранение результата), так как он редактируется пользователем в интерфейсе. Вы можете, однако, захотеть расширить формат, чтобы явным образом указывать порядок, например smtp=smtp_value,username=username_value...
, а затем разделить каждый элемент списка на =
и назначить соответственно.