Аргументы командной строки Spring load из контекста приложения xml

Согласно Apple-doc

  • Слабые ссылки всегда имеют необязательный тип и автоматически становятся нулями, когда экземпляр, который они ссылаются, освобождается.
  • Если захваченное задание никогда не станет нулевым, оно всегда должно быть записано как неосновная ссылка, а не слабая ссылка
blockquote>

Пример -

    // if my response can nil use  [weak self]
      resource.request().onComplete { [weak self] response in
      guard let strongSelf = self else {
        return
      }
      let model = strongSelf.updateModel(response)
      strongSelf.updateUI(model)
     }

    // Only use [unowned self] unowned if guarantees that response never nil  
      resource.request().onComplete { [unowned self] response in
      let model = self.updateModel(response)
      self.updateUI(model)
     }

0
задан michele 20 March 2019 в 13:27
поделиться

2 ответа

Когда вы делаете что-то подобное в своей конфигурации Spring XML

<bean id="fooClassInstance" class="my.package.FooClass">
    <property name="myproperty" value="${variable}" />
</bean>

Spring использует PropertyPlaceholderConfigurer для поиска этих переменных в переменных System / enviroment и / или в списке предопределенных файлов свойств.

Таким образом, самый простой способ - передать это значение как переменную системы или среды с помощью -Dvariable=value.

Если вы хотите передать эти значения в качестве аргументов в min, вы все равно можете делать такие хаки, как

public static void main(String[] args) {
    // parse arguments into key, value pairs
    System.setProperty(<key>, <value>);
    ClassPathXmlApplicationContext ctx = new ClassPathXmlApplicationContext(<your XML config file>);
    // use Spring context to get beans
}
0
ответ дан Ivan 20 March 2019 в 13:27
поделиться

Попробуйте использовать Системные свойства:

java -Dvariable=value -jar my.jar

Это либо работает из коробки, либо вам нужно указать контексту приложения, чтобы он смотрел на свойства системы, когда она расширяет переменные. Прошло много времени с тех пор, как я это попробовал.

Хорошей отправной точкой является PropertySourcesPlaceholderConfigurer.

0
ответ дан Aaron Digulla 20 March 2019 в 13:27
поделиться
Другие вопросы по тегам:

Похожие вопросы: