Java mampu menyimpan SEMUA teks Unicode yang valid. Ini menggunakan UTF-16 secara internal.
Jika Anda mengonfigurasi seluruh jalur data dengan benar, semua teks akan dipertahankan. Anda perlu memastikan:
- String yang benar mencapai Java (dalam hal aplikasi web, pengkodean karakter dari formulir yang dikirimkan).
- Java tahu itu harus berbicara dengan database di UTF-8 dan database tahu itu harus mengharapkan UTF-8 melalui koneksi. Anda memastikan ini saat menyiapkan koneksi database.
- Data disimpan sebagai UTF-8 dalam database.
Perhatikan bahwa [dokumentasi untuk MySQL] klaim UTF-8 tidak mampu menyimpan karakter di luar Basic Multilingual Plane (semua karakter "normal" berada di dalam BMP). UTF-8 sendiri sangat mampu menyimpan semua karakter unicode dan database juga harus dapat mengkodekan karakter ini.
Java sendiri baik-baik saja - ingat saja beberapa karakter unicode langka sebenarnya adalah dua karakter (disebut pasangan pengganti ) di Jawa.