Estou usando um arquivo .properties(config.properties) p/ fazer a conexão com o banco de dados. Faço uso dele em uma classe responsável pela conexão ao banco que se encontra no msm classpath net/sytes/tsda/zeus/dao/…
Porém, um erro de arquivo não encontrado ocorre ao tentar corregá-lo!
Já tentei de várias maneiras, mas ainda não consegui solucionar o problema!
O trecho d código q uso p/ carregar o arquivo está logo em baixo:
Properties properties = new Properties();
File file = new File(config.properties);
try
{
this.fileInputStream = new FileInputStream(file);
this.properties.load(fileInputStream);
}
catch (FileNotFoundException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
catch (IOException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
A classe System possui alguns parâmetros que são setados dependendo do ambiente onde vc está rodando sua aplicação. Com System.getProperty(nomeDaPropriedade) eu consigo pegar cada uma delas. “user.dir” seria o diretório onde sua aplicação está rodando, com o caminho completo até ela…
[quote=cassio]A classe System possui alguns parâmetros que são setados dependendo do ambiente onde vc está rodando sua aplicação. Com System.getProperty(nomeDaPropriedade) eu consigo pegar cada uma delas. “user.dir” seria o diretório onde sua aplicação está rodando, com o caminho completo até ela…
[/quote]
Entendi… soh q esse método me rertornou somente o diretório principal, eu queria saber um outro método q me retornase a estrutura de diretórios onde c encontra a classe!
Este me retorna exatamente oq eu preciso(a estrutura de diretorios ond c encontrao o arquivo . properties), mas continua dando o mesmo erro:
java.io.FileNotFoundException: file:\C:\eclipse\workspace\zeus_webserver\WEB-INF\classes\net\sytes\tsda\zeus\dao\config.properties (The filename, directory name, or volume label syntax is incorrect)
Não sei pq nao achou, sendo eh exatamente este o caminho do arquivo!
APPSet appset = new APPSet();
String s = appset.getClass().getResource("application.properties").toString();
if (s.indexOf("file:")>-1){
s = s.replaceFirst("file:","");
}
eu tbm tava tendo esta duvidazinha…
vendo a sua implementação ai achei isso ai…
que bomba…
se alguem tiver alguma implementação mais padronizada, mais bonitina ou coisa assim… colabore conosco…
[quote=proteus_adi] APPSet appset = new APPSet();
String s = appset.getClass().getResource("application.properties").toString();
if (s.indexOf("file:")>-1){
s = s.replaceFirst("file:","");
}
eu tbm tava tendo esta duvidazinha…
vendo a sua implementação ai achei isso ai…
que bomba…
se alguem tiver alguma implementação mais padronizada, mais bonitina ou coisa assim… colabore conosco…
rs**
mas,
o código acima funcionou…[/quote]
Intão kra…
dei uma mexida aqui no código i acabei resolvendo meu problema!!
Ficou assim:
String arquivo = getClass().getResource("arquivo.properties").getPath();
File file = new File(arquivo);
FileInputStream fileInputStream = new FileInputStream(file);
Properties properties = new Properties();
properies.load(fileInputstream);