Visualizzazione dei risultati da 1 a 10 su 13

Hybrid View

  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2004
    Messaggi
    32

    [Java] Buildare un progetto eclipse con file di properties

    Salve,
    in un mio progetto eclipse java
    accingo a delle properties da un file di properties: serverDB.properties che contiene le credenziali per collegarmi ad un server database.

    se buildo il mio progetto con Ant e inno setup devo far riferimento a questo file oppure basta metterlo nelle stessa cartella dell'eseguibile.exe?

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da nobo_ Visualizza il messaggio
    Salve,
    in un mio progetto eclipse java
    accingo a delle properties da un file di properties: serverDB.properties che contiene le credenziali per collegarmi ad un server database.

    se buildo il mio progetto con Ant e inno setup devo far riferimento a questo file oppure basta metterlo nelle stessa cartella dell'eseguibile.exe?
    Scusa ma non è molto chiaro .... quel file di properties serve in fase di build e/o in fase di runtime della applicazione? Se serve solo a runtime, dove mettere il file di properties dipende solo da come/dove il codice cerca quel file. Lo cerca lungo il "classpath"? Lo cerca nella directory "corrente"? Lo cerca nella (o più sotto) directory "home" dell'utente? Altro?
    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
    Jan 2004
    Messaggi
    32
    Quote Originariamente inviata da andbin Visualizza il messaggio
    Scusa ma non è molto chiaro .... quel file di properties serve in fase di build e/o in fase di runtime della applicazione? Se serve solo a runtime, dove mettere il file di properties dipende solo da come/dove il codice cerca quel file. Lo cerca lungo il "classpath"? Lo cerca nella directory "corrente"? Lo cerca nella (o più sotto) directory "home" dell'utente? Altro?
    Il file serve in fase di runtime e il codice che lo richiama è questo :

    codice:
    Properties properties = new Properties();
    properties.load(new FileInputStream("serverDB.properties"));

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da nobo_ Visualizza il messaggio
    codice:
    Properties properties = new Properties();
    properties.load(new FileInputStream("serverDB.properties"));
    Così viene cercato nella directory "corrente", che poi è quella che è corrente nel momento in cui viene avviata la JVM. E dipende appunto da come/da dove e con cosa si avvia la JVM.
    Se a monte c'è un eseguibile nativo/script/batch che è in grado di impostare la directory corrente in modo che sia giusta per l'applicazione, allora è un conto. Se invece dipende da come l'utente lancia la applicazione, allora la tua applicazione potrebbe non funzionare correttamente.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  5. #5
    Utente di HTML.it
    Registrato dal
    Jan 2004
    Messaggi
    32
    Quote Originariamente inviata da andbin Visualizza il messaggio
    Così viene cercato nella directory "corrente", che poi è quella che è corrente nel momento in cui viene avviata la JVM. E dipende appunto da come/da dove e con cosa si avvia la JVM.
    Se a monte c'è un eseguibile nativo/script/batch che è in grado di impostare la directory corrente in modo che sia giusta per l'applicazione, allora è un conto. Se invece dipende da come l'utente lancia la applicazione, allora la tua applicazione potrebbe non funzionare correttamente.
    Devo dire che non ti ho seguito molto ma stando al codice che ti ho incollato... se io deployo l'applicazione con ant e inno setup 5 quindi ottenendo un eseguibile che mi installerà nel pc la mia applicazione, qual è il percorso che bisogna dare magari in fase di coding questo? ::
    %LOCALAPPDATA%\NomeMiaApplicazione\serverDB.proper ties

  6. #6
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da nobo_ Visualizza il messaggio
    Devo dire che non ti ho seguito molto
    A dire il vero non c'era molto da seguire ... più che altro il concetto di directory "corrente" (che tra l'altro, in teoria, dovresti già conoscere).

    Quote Originariamente inviata da nobo_ Visualizza il messaggio
    ma stando al codice che ti ho incollato...
    se io deployo l'applicazione con ant e inno setup 5 quindi ottenendo un eseguibile che mi installerà nel pc la mia applicazione, qual è il percorso che bisogna dare magari in fase di coding questo? ::
    %LOCALAPPDATA%\NomeMiaApplicazione\serverDB.proper ties
    Inno setup non lo conosco/uso (so ovviamente cosa è) ma alla fin fine è solo uno strumento per creare degli "installer". Aiuta solo a predisporre i file durante una fase di setup ma le scelte/logiche di configurazione della applicazione spettano a te, non a questi tool!

    Se stavi pensando di mettere nel sorgente Java es.

    new FileInputStream("%LOCALAPPDATA%\\NomeMiaApplicazio ne\\serverDB.properties")

    Sappi che è sbagliato. La forma %VARIABILE% è specifica solo per i sistemi Windows, Java non ha alcuna nozione di questo e non ha nulla per espandere/risolvere questa forma.
    Se vuoi puoi prendere dall'environment la variabile LOCALAPPDATA e poi comporre tu il path. Questo sì. Ma sarebbe comunque specifico solo per i Windows. E se ti basta questo, non avrei obiezioni.
    Ultima modifica di andbin; 19-01-2016 a 22:02
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

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.