クラス 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 を参照してください。

追加情報

より完全な機能を備えたコマンドライン解析が必要な場合は、選択したコマンドライン解析ライブラリに対して独自の CommandLinePropertySource を実装することを検討してください。

導入:
3.1
作成者:
Chris Beams
関連事項:
  • コンストラクターの詳細

    • SimpleCommandLinePropertySource

      public SimpleCommandLinePropertySource(StringSE... args)
      デフォルト名を持ち、コマンドライン引数の指定された String[] を基にした新しい SimpleCommandLinePropertySource を作成します。
      関連事項:
    • SimpleCommandLinePropertySource

      public SimpleCommandLinePropertySource(StringSE name, StringSE[] args)
      指定された名前を持ち、指定された String[] のコマンドライン引数を基にした新しい SimpleCommandLinePropertySource を作成します。
  • メソッドの詳細

    • getPropertyNames

      public StringSE[] getPropertyNames()
      オプション引数のプロパティ名を取得します。
      次で指定:
      クラス EnumerablePropertySource<org.springframework.core.env.CommandLineArgs>getPropertyNames 
    • containsOption

      protected boolean containsOption(StringSE name)
      クラスからコピーされた説明: CommandLinePropertySource
      コマンドラインから解析されたオプション引数のセットに、指定された名前のオプションが含まれているかどうかを返します。
      次で指定:
      クラス CommandLinePropertySource<org.springframework.core.env.CommandLineArgs>containsOption 
    • getOptionValues

      @Nullable protected ListSE<StringSE> getOptionValues(StringSE name)
      クラスからコピーされた説明: CommandLinePropertySource
      指定された名前を持つコマンドラインオプションに関連付けられた値のコレクションを返します。
      • オプションが存在し、引数がない場合(例: "--foo")、空のコレクションを返します ([])
      • オプションが存在し、単一の値( "--foo=bar" など)を持っている場合、1 つの要素を持つコレクションを返します (["bar"])
      • オプションが存在し、基礎となるコマンドライン解析ライブラリが複数の引数をサポートしている場合(例: "--foo=bar --foo=baz")、各値の要素を持つコレクションを返します (["bar", "baz"])
      • オプションが存在しない場合は、null を返します
      次で指定:
      クラス CommandLinePropertySource<org.springframework.core.env.CommandLineArgs>getOptionValues 
    • getNonOptionArgs

      protected ListSE<StringSE> getNonOptionArgs()
      クラスからコピーされた説明: CommandLinePropertySource
      コマンドラインから解析された非オプション引数のコレクションを返します。非 null
      次で指定:
      クラス CommandLinePropertySource<org.springframework.core.env.CommandLineArgs>getNonOptionArgs