クラス SimpleCommandLinePropertySource
java.lang.ObjectSE
org.springframework.core.env.PropertySource<T>
org.springframework.core.env.EnumerablePropertySource<T>
org.springframework.core.env.CommandLinePropertySource<org.springframework.core.env.CommandLineArgs>
org.springframework.core.env.SimpleCommandLinePropertySource
public class SimpleCommandLinePropertySource
extends CommandLinePropertySource<org.springframework.core.env.CommandLineArgs>
単純な文字列配列に裏付けされた
CommandLinePropertySource
実装。目的
この CommandLinePropertySource
実装は、コマンドライン引数を解析するための最も単純なアプローチを提供することを目的としています。すべての CommandLinePropertySource
実装と同様に、コマンドライン引数は、以下に説明するように、オプション引数と非 オプション引数の 2 つの異なるグループに分けられます(SimpleCommandLineArgsParser
の Javadoc からコピーされたセクションもあります)。
オプション引数の使用
オプション引数は正確な構文に従う必要があります。
--optName[=optValue]
つまり、オプションの先頭に "--
" を付ける必要があり、値を指定する場合としない場合があります。値を指定する場合、名前と値は等号("=")でスペースなしで区切る必要があります。オプションで、空の文字列を指定できます。
Valid examples of option arguments
--foo --foo= --foo="" --foo=bar --foo="bar then baz" --foo=bar,baz,biz
Invalid examples of option arguments
-foo --foo bar --foo = bar --foo=bar --foo=baz --foo=biz
非オプション引数の使用
コマンドラインで "--
" オプションプレフィックスなしで指定されたすべての引数は、「非オプション引数」と見なされ、CommandLineArgs.getNonOptionArgs()
メソッドで利用可能になります。
典型的な使用箇所
public static void main(String[] args) { PropertySource<?> ps = new SimpleCommandLinePropertySource(args); // ... }完全な一般的な使用例については、
CommandLinePropertySource
を参照してください。追加情報
より完全な機能を備えたコマンドライン解析が必要な場合は、提供されている JOptCommandLinePropertySource
の使用を検討するか、選択したコマンドライン解析ライブラリに対して独自の CommandLinePropertySource
を実装します。
- 導入:
- 3.1
- 作成者:
- Chris Beams
- 関連事項:
ネストされたクラスのサマリー
クラス org.springframework.core.env.PropertySource から継承されたネストクラス / インターフェース
PropertySource.StubPropertySource
フィールドサマリー
クラス org.springframework.core.env.CommandLinePropertySource から継承されたフィールド
COMMAND_LINE_PROPERTY_SOURCE_NAME, DEFAULT_NON_OPTION_ARGS_PROPERTY_NAME
クラス org.springframework.core.env.PropertySource から継承されたフィールド
logger, name, source
コンストラクターのサマリー
コンストラクターコンストラクター説明SimpleCommandLinePropertySource
(StringSE... args) デフォルト名を持ち、コマンドライン引数の指定されたString[]
を基にした新しいSimpleCommandLinePropertySource
を作成します。SimpleCommandLinePropertySource
(StringSE name, StringSE[] args) 指定された名前を持ち、指定されたString[]
のコマンドライン引数を基にした新しいSimpleCommandLinePropertySource
を作成します。メソッドのサマリー
修飾子と型メソッド説明protected boolean
containsOption
(StringSE name) コマンドラインから解析されたオプション引数のセットに、指定された名前のオプションが含まれているかどうかを返します。コマンドラインから解析された非オプション引数のコレクションを返します。getOptionValues
(StringSE name) 指定された名前を持つコマンドラインオプションに関連付けられた値のコレクションを返します。StringSE[]
オプション引数のプロパティ名を取得します。クラス org.springframework.core.env.CommandLinePropertySource から継承されたメソッド
containsProperty, getProperty, setNonOptionArgsPropertyName
コンストラクターの詳細
SimpleCommandLinePropertySource
デフォルト名を持ち、コマンドライン引数の指定されたString[]
を基にした新しいSimpleCommandLinePropertySource
を作成します。SimpleCommandLinePropertySource
指定された名前を持ち、指定されたString[]
のコマンドライン引数を基にした新しいSimpleCommandLinePropertySource
を作成します。
メソッドの詳細
getPropertyNames
オプション引数のプロパティ名を取得します。- 次で指定:
- クラス
EnumerablePropertySource<org.springframework.core.env.CommandLineArgs>
のgetPropertyNames
containsOption
クラスからコピーされた説明:CommandLinePropertySource
コマンドラインから解析されたオプション引数のセットに、指定された名前のオプションが含まれているかどうかを返します。- 次で指定:
- クラス
CommandLinePropertySource<org.springframework.core.env.CommandLineArgs>
のcontainsOption
getOptionValues
クラスからコピーされた説明:CommandLinePropertySource
指定された名前を持つコマンドラインオプションに関連付けられた値のコレクションを返します。- オプションが存在し、引数がない場合(例: "--foo")、空のコレクションを返します (
[]
) - オプションが存在し、単一の値( "--foo=bar" など)を持っている場合、1 つの要素を持つコレクションを返します (
["bar"]
) - オプションが存在し、基礎となるコマンドライン解析ライブラリが複数の引数をサポートしている場合(例: "--foo=bar --foo=baz")、各値の要素を持つコレクションを返します (
["bar", "baz"]
) - オプションが存在しない場合は、
null
を返します
- 次で指定:
- クラス
CommandLinePropertySource<org.springframework.core.env.CommandLineArgs>
のgetOptionValues
- オプションが存在し、引数がない場合(例: "--foo")、空のコレクションを返します (
getNonOptionArgs
クラスからコピーされた説明:CommandLinePropertySource
コマンドラインから解析された非オプション引数のコレクションを返します。非null
。- 次で指定:
- クラス
CommandLinePropertySource<org.springframework.core.env.CommandLineArgs>
のgetNonOptionArgs