nesse código alguem poderia me dizer pq, qnd coloco essa linha
props.store(fos, "");
fora do for os dados no arquivo properties são sobrescrito(atualizados) e qnd coloco dentro do for como está, fica comportando-se erroneamente duplicando os dados.
public void persistir(Planta planta, Map mapa, Properties props) throws IllegalAccessException,
InvocationTargetException, IOException {
Class p = planta.getClass();
HttpServletRequest req = (HttpServletRequest)mapa.get(HttpServletRequest.class);
FileOutputStream fos = new FileOutputStream(new File("C://Documents and Settings//bernardino//workspace//casa_virtual/mapacasa.properties"));
for(Method m : p.getMethods()){
if(m.getName().startsWith("set")){
String nomeParametro = m.getName().substring(3).toLowerCase();
String valorParametro = req.getParameter(nomeParametro);
if(valorParametro != null){
//Class classe[] = m.getParameterTypes();
if(!props.getProperty(nomeParametro).equals(valorParametro)){
props.setProperty(nomeParametro, valorParametro);
props.store(fos, "");
}
}
}
}
//props.store(fos, "");
fos.close();
}
sentro do for
#
#Fri Jul 28 01:59:23 BRT 2006
sala=0
banheiro=0
quartosuite=1
cozinha=1
suite=0
Casa.acao=app.CasaMapa
quarto=1
ApartamentoDAOImpl.acao=app.ApartamentoDAOImpl
#
#Fri Jul 28 01:59:23 BRT 2006
sala=1
banheiro=0
quartosuite=1
cozinha=1
suite=0
Casa.acao=app.CasaMapa
quarto=1
ApartamentoDAOImpl.acao=app.ApartamentoDAOImpl
fora do for
#
#Fri Jul 28 01:59:23 BRT 2006
sala=1
banheiro=0
quartosuite=1
cozinha=1
suite=0
Casa.acao=app.CasaMapa
quarto=1
ApartamentoDAOImpl.acao=app.ApartamentoDAOImpl