Bom Pessoal, estou com o seguinte problema. Ao resgatar uma lista de estados do banco de Dados MySQL Charset UTF- Unicode e Collation: utf8_general_ci. Os dados acentuados vem deformado. Em PHP existe as funções utf8_encode() e utf8(decode) para essa conversão. Sei que em Java também tem. Mas como aplicar corretamente no código abaixo?
Por favor postem respostar práticas. Obrigado.
Classe onde pego os valores do MySQL e jogo Array
//metodo para selecao no banco com ResultSet
public List<Estados> getLista() throws SQLException{
String sql = "select * from estados";
PreparedStatement stmt = this.conexao.prepareStatement(sql);
ResultSet rs = stmt.executeQuery();
//cria objeto do tipo lista
List<Estados> minhaLista = new ArrayList<Estados>();
while(rs.next()){
Estados e1 = new Estados();
e1.setCoduf(rs.getString("coduf"));
e1.setDescricao(rs.getString("descricao"));
minhaLista.add(e1);
}
rs.close();
stmt.close();
return minhaLista;
}
onde chamo o combobox
public formPessoas() throws SQLException {
Connection conexao = CriaConexao.getConexao();
Consulta con1 = new Consulta();
List<Estados> lisestado = con1.getLista();
initComponents();
//Limpa o Combobox e adiciona os itens do Banco
jCombouf.removeAllItems();
for (Estados estados : lisestado) {
//o getDescricao() da linha abaixo é onde pega os dados do MySQL
jCombouf.addItem(estados.getDescricao());
}