Tenho um sistema de cadastro em Java.
Quando é cadastrado alguma String com acentos ou outros caracteres especiais, o banco não armazena como deveria, ‘õ’ é armazenado como ‘õ’, por exemplo.
Porem, quando eu armazeno a String com caracteres especiais no próprio MySql Workbench o banco de dados armazena do jeito certo, então eu suponho que o problema esteja na parte do Java.
Pesquisando por ai, eu encontrei a informação de que as Strings em Java são formatadas em UTF-16 ou algo assim, tentei trocar o charset do meu banco de dados para UTF-16 mas parece que ele “rejeitou”
Também como resultado das pesquisas, eu encontrei os métodos decode
e encode
no PHP, que na teoria resolveriam esse problema, e aparentemente é desses métodos que eu preciso.
Existem métodos em Java que façam essa conversão de UTF-16 pra UTF-8? Ou será que existe outra forma de arrumar esse bug?
Estou usando Windows 10