galera é o seguinte… estpu realizando a conversão de uns dados para outra base e fiz um mini aplicativo que gera os inserts…
o problema éo seguinte…
tenho um banco com uns 12 mil registros
e outro com 17 mil registros
faço um select e faço um while no resultset ( estou utilizando jdbc puro)
e dentro do while existe um select no banco para verificacação de uns dados ( o cadastro de produtos esta separado em 2 tabelas )
o de 12 mil registros o geração chega em 71% e para… o jframe fica como se não estivesse executando nenhum processo ( fica livre )
o que será ?
segue o código da rotina
public void realizarConversao(String caminhoRA, String caminhoCLIPP) throws IOException
	{
	
	    textArea.setText("");
		/*JFileChooser fsave = new JFileChooser();
		fsave.setDialogTitle("Onde pretendes salvar o arquivo SQL ?");
		fsave.showSaveDialog(null);
		String arquivo = fsave.getSelectedFile().getAbsolutePath();
		PrintWriter saida = new PrintWriter(new FileOutputStream(new File(arquivo),false),false);*/
		//conexões
		Conexao conRA = new Conexao(caminhoRA);
		Conexao conRAaux = new Conexao(caminhoRA);
		//fim das conexões
		
		try {
			PreparedStatement stmt = conRA.getConexao().prepareStatement("select count(*) as total from MATERIAL");
			ResultSet rs11 = stmt.executeQuery();
			rs11.next();
			int valor = rs11.getInt("total");
			progressBar.setMaximum(valor);
			PreparedStatement stmtM = conRA.getConexao().prepareStatement("select * from MATERIAL");
			ResultSet rs = stmtM.executeQuery();
			
			
			
		    progressBar.setValue(0);
			SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
		    Date data = new Date();
		    List<String> linhas = new ArrayList<String>();
			int a = 0;
			while(rs.next())
			{
				       a = a+1;
				       progressBar.setValue(progressBar.getValue()+1);
				       paintComponents(getGraphics());
                      // System.out.println("Codigo = "+rs.getString("CODIGO"));				
				       PreparedStatement stmtConsulta = conRAaux.getConexao().prepareStatement("select * from PRODUTO where CODIGO = '" +
				    		   rs.getString("CODIGO")
				    		   +"'");
				       textArea.setText("Gerando o SQL...");
				       textArea.append("-------------------------------------------------");
				       
				       ResultSet rsConsulta = stmtConsulta.executeQuery();
				       
						if(rsConsulta.next())
						{
							String sql_tb_estoque = 
								"INSERT INTO TB_ESTOQUE (ID_ESTOQUE, ID_GRUPO, DESCRICAO, STATUS," +
								" DT_CADAST, HR_CADAST, FRACIONADO, PRC_VENDA, PRC_CUSTO, ULT_VENDA" +
								", MARGEM_LB, POR_COMISSAO, ULT_FORNEC, GRADE_SERIE, ID_TIPOITEM," +
								" ID_CTI, OBSERVACAO, CST_PIS, CST_COFINS, PIS, COFINS, UNI_MEDIDA)" +
								" VALUES (" +rs.getString("CODIGO")
								+",null,'" +rs.getString("NOME")
								+"','A','" +sdf.format(data)
								+"','00:00:00'" +
								",'N'," +rsConsulta.getDouble("PVENDA")
								+",null,null,null,null,null,'N',0," +converteCTI(rsConsulta)
								+"," +
								"null,'99','99',0,0,'" +rs.getString("UNID")
								+"');";
								linhas.add(sql_tb_estoque);
							   //textArea.append(sql_tb_estoque+"\n");
							   //textArea.repaint();
							    //saida.print(sql_tb_estoque);
							    //saida.write(13);  
							    //saida.write(10); 
								//stmtClipp.addBatch(sql_tb_estoque);
								
								String sql_tb_est_lol = "INSERT INTO TB_EST_IDENTIFICADOR (ID_IDENTIFICADOR, ID_ESTOQUE, CHAVE) VALUES (" +
										"" +rs.getString("CODIGO")
										+"," +rs.getString("CODIGO")
										+",null);"; 
								linhas.add(sql_tb_est_lol);
                               // textArea.append(sql_tb_est_lol+"\n");
								//	stmtClipp.addBatch(sql_tb_est_lol);
                                //textArea.repaint();
                                
								String sql_tb_est_produto = 
									"INSERT INTO TB_EST_PRODUTO (ID_IDENTIFICADOR, DESC_CMPL, COD_BARRA," +
									" REFERENCIA, PRC_MEDIO, QTD_COMPRA, QTD_ATUAL, QTD_MINIM, QTD_INICIO," +
									" QTD_RESERV, QTD_POSVEN, ULT_COMPRA, PESO, IPI, CF, CST, IAT, IPPT," +
									" COD_NCM, ID_NIVEL1, ID_NIVEL2, MVA, CST_IPI, FOTO, CSOSN) VALUES (" +
									"" +rs.getString("CODIGO")
									+"," 
									+"null,'" +rs.getString("REFERENCIA")
									+"',null,null,null," +
									"10000,null,null,null,null,null,null," +
									"0,null," +converteCST(rsConsulta)
									+",'A','T',null,null,null,0,null,null," +converteCSOSN(rsConsulta.getString("TRIB"))
									+"" +
									");";
								linhas.add(sql_tb_est_produto);
*/								//textArea.append(sql_tb_est_produto+"\n"); 
								//stmtClipp.addBatch(sql_tb_est_produto);
								//textArea.repaint();
				            
					//	}
					
						
			    
			}
			JOptionPane.showMessageDialog(null, "Comandos Gerados com Exito.");
			/*
			for(String a: linhas)
			{
				textArea.append(a);
				paintComponents(getGraphics());
			}*/
			//stmtClipp.executeBatch();
		}
		catch (Exception e)
		{
			JOptionPane.showMessageDialog(null, "Erro no Conversor: "+e.getMessage());
			//progressBar.setIndeterminate(false);
		}
	}
	me ajudem galera, preciso resolver isso urgente

