Musisz upewnić się, że używasz jednego poprawnego i tego samego kodowania znaków w całym procesie. Gorąco polecam odbiór UTF-8 za to. Obejmuje każdą ludzką postać znaną na świecie. Każdy krok, który obejmuje obsługę danych znakowych, powinien być poinstruowany, aby używać tego samego kodowania.
W kontekście SQL upewnij się, że baza danych i tabela zostały utworzone przy użyciu UTF-8 zestaw znaków. W kontekście JDBC upewnij się, że sterownik JDBC używa UTF-8; jest to często konfigurowalne przez parametry połączenia JDBC. W kontekście kodu Java upewnij się, że używasz UTF-8 podczas odczytu/zapisu danych znakowych z/do strumieni; możesz określić go jako drugi argument konstruktora w InputStreamReader i OutputStreamWriter .