I-ASOS Cvičenie 2 – Application properties

Application Properties

Cieľom cvičenia je oboznámiť sa s aplikačnými atribútmi. Pre viac informácií https://www.baeldung.com/properties-with-spring.

  1. Vytvorte si nový Spring projekt.
  2. Vytvorte súbor application.properties v priečinku src/main/resources/.
  3. Do súboru application.properties napíšte nasledovné:
    mongo.host=127.0.0.1
    mongo.port=27001
    mongo.database=asos
    mongo.login=root
    mongo.password=root
  4. Vytvorte beanu MongoRepository s atribútmi host, port, database, login a password. 
  5. Do beany vygenerujte gettre a settre pre všetky atribúty. 
  6. Do beany vygenerujte metódu toString, ktorá vráti reťazec s hodnotami jednotlivých atribútov.
  7. V config.xml definujte umiestnenie application.properties:
    <context:property-placeholder location=“classpath:application.properties“ />
  8. V main triede vytvorte závislosť na MongoRepositroy bean.
  9. V main metóde vypíšte do konzoly/logu reťazec ktorý dostanete zavolaním metódy toString na beane MongoRepository.
  10. Spustite aplikáciu a sledujte konzolu, mali by sa v nej objaviť atribúty načítané z application.properties.

Environment-Specific Properties 

Cieľom cvičenia je oboznámiť sa s aplikačnými atribútmi špecifickými pre rôzne prostredia.

  1. Pokračujte s kódom z predchádzajúcej úlohy.
  2. Vytvorte súbor application-dev.properties v priečinku src/main/resources/.
  3. Do súboru application-dev.properties napíšte nasledovné:
    mongo.host=127.0.0.1
    mongo.port=27001
    mongo.database=asos-dev
    mongo.login=dev
    mongo.password=dev
  4. V config.xml zmeňte definíciu beany a prostredia:
    <beans profile=“prod“>
    <context:property-placeholder location=“classpath:application.properties“ />
    </beans>
    <beans profile=“dev“>
    <context:property-placeholder location=“classpath:application-dev.properties“ />
    </beans>
    <beans profile=“prod,dev“>
    <bean class=“sk.stuba.fei.uim.asos.cvicenie2.properties.MongoRepository“ name=“mongoRepository“>
    <property name=“host“ value=“${mongo.host}“/>
    <property name=“port“ value=“${mongo.port}“/>
    <property name=“database“ value=“${mongo.database}“/>
    <property name=“login“ value=“${mongo.login}“/>
    <property name=“password“ value=“${mongo.password}“/>
    </bean>
    </beans>
  5. V main metóde zmeňte profil prostredia nasledovným kódom:
    ClassPathXmlApplicationContext appContext = new ClassPathXmlApplicationContext(new String[]{„config.xml“});
    ConfigurableEnvironment environment = appContext.getEnvironment();
    environment.setActiveProfiles(„prod“);
    appContext.refresh();
  6. Spustite aplikáciu a sledujte konzolu, mali by sa v nej objaviť atribúty načítané z application.properties.
  7. Zmeňte profil na “dev” a znovu spustite aplikáciu. V konzole by mali byť vypísané atribúty načítané z application-dev.properties.