该版本仍在开发中,尚未被视为稳定。最新稳定版本请使用Spring Shell 3.4.1spring-doc.cadn.net.cn

字符串输入

字符串输入组件要求用户输入简单的文本,可选择性地遮蔽值如果内容包含敏感内容。以下列表展示了一个示例:spring-doc.cadn.net.cn

@Command
public class ComponentCommands extends AbstractShellComponent {

	@Command(command = "component string", description = "String input", group = "Components")
	public String stringInput(boolean mask) {
		StringInput component = new StringInput(getTerminal(), "Enter value", "myvalue");
		component.setResourceLoader(getResourceLoader());
		component.setTemplateExecutor(getTemplateExecutor());
		if (mask) {
			component.setMaskCharacter('*');
		}
		StringInputContext context = component.run(StringInputContext.empty());
		return "Got value " + context.getResultValue();
	}
}

以下屏幕显示了字符串输入组件的典型输出:spring-doc.cadn.net.cn

上下文对象为字符串输入上下文. 下表列出了其上下文变量:spring-doc.cadn.net.cn

表1。StringInputContext 模板变量
钥匙 描述

defaultValuespring-doc.cadn.net.cn

如果设置为默认值。否则为空值。spring-doc.cadn.net.cn

maskedInputspring-doc.cadn.net.cn

掩蔽输入值spring-doc.cadn.net.cn

maskedResultValuespring-doc.cadn.net.cn

掩蔽结果值spring-doc.cadn.net.cn

面具性格spring-doc.cadn.net.cn

如果设置了,则是遮罩字符。否则,为空。spring-doc.cadn.net.cn

hasMaskCharacterspring-doc.cadn.net.cn

true如果设置了遮罩字符。否则,为假。spring-doc.cadn.net.cn

spring-doc.cadn.net.cn

父上下文变量(参见TextComponentContext模板变量)。spring-doc.cadn.net.cn