Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2014
    Messaggi
    17

    [IP addresses should not be hardcoded] file di configurazione

    Dovrei creare un file di configurazione...la mia domanda era dunque la seguente: come???
    avete esempi da mostrarmi?
    grazie

    SOLUZIONE NON COMPILABILE
    String ip = "127.0.0.1";
    Socket socket = new Socket(ip, 6667);

    SOLUZIONE COMPILABILE

    String ip = System.getProperty("myapplication.ip");
    Socket socket = new Socket(ip, 6667);

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da danny51 Visualizza il messaggio
    String ip = System.getProperty("myapplication.ip");
    Questo è di per sé corretto. Ma le "system property", in generale, arrivano o da configurazioni predefinite del framework/runtime o tipicamente tramite opzioni passate al launcher della JVM (java.exe intendo o similare) tramite l'opzione -D

    Es.: java -Dmyapplication.ip=1.2.3.4 TuaClasseMain

    Quindi non è esattamente un "file di configurazione".

    Se vuoi usare un file di configurazione, puoi usare un file di "properties", gestibile con la classe java.util.Properties.
    Ultima modifica di andbin; 21-06-2014 a 11:47
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2014
    Messaggi
    17
    grazie!
    e mi sai dire come leggere un integer (il numero della porta) da un file properties?

  4. #4
    Utente di HTML.it
    Registrato dal
    Jun 2014
    Messaggi
    17
    carico i dati in questo modo...ma quando devo prelevarli ho problemi nel numero della porta e del timeout

    private void loadProperties() throws IOException {
    Properties defaultProps = new Properties();
    // sets default properties
    defaultProps.setProperty("host", "127.0.0.1");
    defaultProps.setProperty("port", "3306");
    defaultProps.setProperty("user", "root");
    defaultProps.setProperty("timeout", "15*1000");

    configProps = new Properties(defaultProps);

    // loads properties from file
    InputStream inputStream = new FileInputStream(configFile);
    configProps.load(inputStream);
    inputStream.close();
    }

  5. #5
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Che tipo di problemi? Tieni conto che le property sono stringhe... timeout quindi ti verrà restituito come "15*1000".

    Comunque, se hai una stringa che rappresenta un numero e vuoi ottenere quel numero puoi usare le classi wrapper Integer, Double ecc...

    codice:
    String s = "123.45";
    double d = Double.parseDouble(s); // d vale 123.45
    
    int i = Integer.parseInt("1000"); // i vale 1000
    Ultima modifica di Alex'87; 21-06-2014 a 13:37
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

Tag per questa discussione

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.