# Application

# Introdução
As applications são utilizadas para armazenar variáveis de ambiente dentro de um sistema. Variáveis como qual porta será executado o projeto ou então qual o nome da aplicação. 

### Trabalhando Com Uma Application 
Para se trabalhar com uma application, primeiro é necessário criar um arquivo chamado application.properties dentro da pasta resources e incluir as variáveis dentro dele, como mostra a imagem:

![Screenshot_6.png](https://cdn.hashnode.com/res/hashnode/image/upload/v1624137851712/7eNxLbSX5.png)

No exemplo, server.port está setando em qual porta irá ser executada a aplicação.

Para utilizar esse valor em algum lugar dentro do sistema, basta fazer uma injeção com a annotation @Value passando como parametro o nome da propriedade como mostra a figura a seguir:


![Screenshot_9.png](https://cdn.hashnode.com/res/hashnode/image/upload/v1624138097732/DpnvKp7y_.png)

### Trabalhando Com Várias Applications
É possível também trabalhar com vários arquivos de variáveis de ambiente, sendo um para cada ambiente. Para isso, basta criar um outro arquivo com o mesmo nome, porém adicionando um -NomeDoSeuAmbiente, como mostra a figura a baixo:


![Screenshot_10.png](https://cdn.hashnode.com/res/hashnode/image/upload/v1624138230264/E7t8QnhhV.png)

Para setar um ambiente, basta ir no arquivo principal e adicionar a propriedade ```spring.profiles.active``` com o nome do ambiente, como mostra a figura a baixo:


![Screenshot_7.png](https://cdn.hashnode.com/res/hashnode/image/upload/v1624138336901/2PQgIKLt0.png)

Sendo assim, as variáveis de ambiente que estão no arquivo principal estarão disponíveis e serão utilizadas independente do ambiente selecionado. E o restante das variáveis de ambiente vão estar disponiveis e serão utilizadas de acordo com o ambiente selecionado.
 
# Conclusão
Conclui-se que este conhecimento é indispensável para o programador Java que deseja programar uma aplicação que poderá ser executada em múltiplos ambiente e consequentemente múltiplos arquivos de ambientes.









