oi amigos… dei uma lida em dois tutoriais no guj sobre arquivos .properties,
o primeiro tutorial da uma visao de como usar .properties
o segundo ensina como retirar querys sql do .java colocando-as em arquivos .properies, soh que naoi consegui acessar a classe de fora da classe… fiz da maneira que o tutorial explicou
http://www.guj.com.br/java.artigo.115.4.guj
//-Classe QueryManager(ela compila sem erros)
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.Properties;
import java.sql.*;
public class QueryManager {
protected Properties queries;
// nao deveria estar hardcodado:
protected static QueryManager queryManager = new QueryManager("arquivoMysql.txt");
private QueryManager(String arquivo) {
try{
queries = new Properties();
// le as sqls e guarda!
queries.load(new FileInputStream(arquivo));
}catch(IOException e){
System.out.println(e);
}
}
public PreparedStatement getPreparedStatement(Connection conn, String queryName) throws SQLException {
String query = this.queries.getProperty(queryName);
return conn.prepareStatement(query);
}
}
//-Tentar acessar a classe da erro :(
QueryManager manager = QueryManager.getQueryManager();
PreparedStatement ps = manager.getPreparedStatement(conn, USUARIO_SELECT_BY_NAME);
ps.setString(1, "Joaozinho"); // poderia ser setObject, recomendo!
ResultSet rs = ps.executeQuery();
a forma de acessar a classe esta certa ? nao tenho muita experiencia com encapsulamento
abracos