Como você precisa acessar o MongoDB, o ambiente de desenvolvimento local não pode se conectar diretamente ao MongoDB, você precisa usar o proxy IP local 127.0.0.2 através do SecureCrt. No entanto, depois que o programa é implantado em um ambiente de produção on -line, ele pode acessar diretamente o MongoDB. Portanto, após o desenvolvimento do programa, você sempre precisa modificar o IP do servidor MongoDB antes de enviar o código, o que é muito inconveniente.
String final de estática privada pubchat_host = "127.0.0.2"; // String final privada final pubChat_host = "Prod_mongo_server_ip";
Como não é utilizado o Spring-Boot-Starter-Data-MongoDB, mas usa o Mongo-Java-Driver para acessar o MongoDB, é necessário definir algumas configurações para acessar o MongoDB no programa, como o endereço do servidor. Injetado via @configurationproperties.
Definição de classe de ferramenta estática
As propriedades são estáticas:
String estática privada chat_username;
Em seguida, injete-o através do método de conjunto não estático:
@Value ("$ {Mongo.config.username}") public void setchat_username (string chat_username) {mongoconfig.chat_username = chat_username; }Outras classes obtêm propriedades por meio de métodos públicos estáticos de obter:
public static string getchat_username () {return chat_username; }O valor do prefixo é definido no Application.yml
@ConfigurationProperties (prefix = "Mongo.config") Classe pública MongoConfig {.....Todo o código completo é o seguinte:
importar org.springframework.beans.factory.annotation.value; importar org.springframework.boot.context.properties.configurationproperties; importar org.springframework.tereotype.component;/** ** criado pelo administrador em 2018/4/4. */@Componente (value = "mongoconfig")@configurationProperties (prefix = "mongo.config") classe pública mongoconfig {private static string chat_username; String estática privada chat_password; String estática privada chat_host; private static int chat_port; String estática privada chat_dbname; String estática privada chat_collprefix; public static string getchat_username () {return chat_username; } @Value ("$ {Mongo.config.username}") public void setchat_username (string chat_username) {mongoconfig.chat_username = chat_username; } public static string getchat_password () {return chat_password; } @Value ("$ {Mongo.config.password}") public void setChat_password (string chat_password) {mongoconfig.chat_password = chat_password; } public static string getchat_host () {return chat_host; } @Value ("$ {Mongo.config.host}") public void setChat_host (String chat_host) {mongoconfig.chat_host = chat_host; } public static int getchat_port () {return chat_port; } @Value ("$ {Mongo.config.port}") public static void setChat_port (int chat_port) {mongoconfig.chat_port = chat_port; } public static string getchat_dbname () {return chat_dbname; } @Value ("$ {Mongo.config.dbname}") public void setchat_dbname (string chat_dbname) {mongoconfig.chat_dbname = chat_dbname; } public static string getchat_collprefix () {return chat_collprefix; } @Value ("$ {Mongo.config.collprefix}") public void setChat_collPrefix (String chat_collprefix) {mongoconfig.chat_collprefix = chat_collPrefix; }}Definição do arquivo de configuração YML
Use o perfil para especificar diferentes configurações a serem usadas em diferentes ambientes. ativo especifica o ambiente ativado, como Dev ou Prod
Spring: Aplicação: Nome: TextML Perfis: Ativo: Dev ---- Spring: Perfis: Dev, Padrão, Testmongo: Config: Nome de Usern: "XXX" Senha: "XXX" Host: "127.0.0.2" Port: 10001 dbname: "XXX" ColPrefix: "xxxx" --- Host "xxx": porta "xxxx": 10001 dbname: "xxxx" colrefix: "xxx"
teste
Como a configuração personalizada do MongoDB é usada, o @springbootApplication (exclude = mongoautoconfiguration.class) é usado para excluir a configuração do MongoDB que vem com o Spring-Boot.
@SpringbooTApplication (exclude = mongoautoconfiguration.class) public class Application {public static void main (string [] args) {springApplication.run (application.class, args); System.out.println ("-Valor da configuração-nome:" + mongoconfig.getChat_username ()); }}Referência: Spring Boot Static Variable Injeção Arquivo
O exposto acima é todo o conteúdo deste artigo. Espero que seja útil para o aprendizado de todos e espero que todos apoiem mais o wulin.com.