Untuk mengatasi kode JSP yang kacau, Anda harus terlebih dahulu memahami alasan kode JSP yang kacau.
1. Saat menyiapkan server dan menginstal MYSQL, Anda akan diminta untuk memilih pengkodean. Jika pengkodean ini tidak sesuai dengan halaman web Anda, itu dapat menyebabkan halaman JSP menjadi kacau.
2. Saat membuat database dalam sistem seperti PHPMYADMIN atau mysql-front, Anda akan diminta untuk memilih pengkodean. Jika pengkodean ini tidak sesuai dengan halaman web Anda, hal ini juga dapat menyebabkan halaman JSP kacau.
3. Saat membuat tabel, Anda akan diminta untuk memilih pengkodean. Jika pengkodean ini tidak sesuai dengan pengkodean halaman web Anda, hal ini juga dapat menyebabkan halaman JSP menjadi kacau.
4. Anda dapat memilih pengkodean saat menambahkan kolom saat membuat tabel. Jika pengkodean ini tidak sesuai dengan pengkodean halaman web Anda, hal ini juga dapat menyebabkan halaman JSP menjadi kacau.
5. Pengkodean halaman JSP yang dikirimkan oleh pengguna tidak sesuai dengan pengkodean halaman JSP yang menampilkan data, yang tentunya akan menyebabkan halaman JSP menjadi kacau.
Misalnya halaman JSP tempat pengguna menginput data dalam kode big5, tetapi halaman JSP tempat input pengguna ditampilkan dalam gb2312. Ini 100% akan menyebabkan halaman JSP kacau.
6. Harap dicatat bahwa rangkaian karakter salah:
1. Teks yang biasa Anda lihat di beberapa situs web mungkin memiliki beberapa penyandian. Misalnya, jika Anda melihat karakter Cina tradisional, itu mungkin penyandian big5, mungkin penyandian utf-8, atau mungkin penyandian gb. artinya, ada aksara Tionghoa tradisional yang dikodekan dalam bahasa Tionghoa sederhana, dan ada juga aksara Tionghoa sederhana yang dikodekan dalam bahasa Tionghoa tradisional. Anda harus memahami hal ini.
Jika Anda membuat halaman web dengan pengkodean bahasa Mandarin yang disederhanakan, pengkodean diatur ke GB2312. Jika pengunjung dari Hong Kong dan Taiwan mengirimkan informasi bahasa Mandarin tradisional, hal ini dapat menyebabkan kode kacau , sehingga kompatibel dengan semua karakter di dunia. (2) Jika situs web telah berjalan lama dan memiliki banyak data lama, dan pengaturan Bahasa Cina Sederhana tidak dapat diubah, disarankan untuk mengatur halamannya. pengkodean ke GBK.
Perbedaan antara GBK dan GB2312 adalah GBK dapat menampilkan lebih banyak karakter dibandingkan GB2312. Untuk menampilkan karakter tradisional dalam kode yang disederhanakan, Anda hanya dapat menggunakan GBK
7. Pengkodean yang ditentukan dalam pernyataan koneksi JSP ke database MYSQL salah.
8. Jika halaman JSP tidak menentukan pengkodean untuk pengiriman data, maka akan menyebabkan kode kacau:
Oleh karena itu, alasan kode JSP kacau tidak lebih dari yang di atas kode. Mari kita ungkapkan satu per satu:
1. Jika kode install MySQL tidak bisa diubah, banyak sobat yang membeli virtual host untuk membangun website dan tidak berhak mengubah kode instalasi MYSQL, langkah ini bisa kita lewati, karena selama langkah-langkah berikut ini benar. masalah kode yang kacau masih bisa diselesaikan.
2. Ubah pengkodean database. Jika pengkodean database salah: Anda dapat menjalankan perintah berikut di phpmyadmin: ALTER DATABASE `test` DEFAULT CHARACTER SET utf8 COLLATE utf8_bin
Perintah di atas adalah untuk mengatur pengkodean database pengujian ke utf8
3. Ubah pengkodean tabel: ALTER TABLE `category` DEFAULT CHARACTER SET utf8 COLLATE utf8_bin
Perintah di atas adalah mengubah pengkodean kategori tabel menjadi utf8
4. Ubah pengkodean bidang:
ALTER TABLE `test` CHANGE `dd` `dd` VARCHAR( 45 ) SET KARAKTER utf8 COLLATE utf8_bin BUKAN NULL
Perintah di atas adalah mengubah pengkodean bidang dd di tabel pengujian menjadi utf8
5. Jika situasi ini mudah diatasi, cukup periksa halaman dan ubah rangkaian karakter file sumber.
, //Jika ini benar, tidak akan ada masalah
6. Dalam hal ini, Anda juga dapat memodifikasi rangkaian karakter halaman.
7. Dalam pernyataan JSP untuk terhubung ke database,
private String url="jdbc:mysql://localhost/"+DB_NAME+" user="+LOGIN_NAME+"&password="+LOGIN_PASSWORD+"&characterEncoding=GBK"; //Kuncinya bergantung pada characterEncoding
8. Dalam kasus karakter yang kacau, cukup tambahkan request.setCharacterEncoding("GBK") di awal halaman; cukup tentukan
data yang dikirimkan. Catatan: Setelah modifikasi sesuai dengan metode di atas, Anda hanya dapat memastikan bahwa Anda baru dimasukkan data tidak akan kacau. Misalnya Contoh: Jika data yang dikirimkan pengguna Anda adalah BIG5, tetapi Anda ingin menggunakan cara di atas untuk mengubahnya agar ditampilkan dengan benar di halaman web GB2312, kode teks semacam ini tidak mungkin transformasi hanya dapat diselesaikan dengan menulis program lain, silakan WEB745 .com artikel terkait lainnya
Ringkasan: Pertama, Anda perlu menentukan apakah karakter JSP yang kacau setelah dimasukkan ke dalam database, atau apakah halaman JSP kacau setelah dikirimkan. pasti character setnya salah, tapi request.setCharacterEncoding tidak ditambahkan ("GBK")
;
Ini mungkin masalah penyandian. Sambungkan ke database seperti ini dan lihat.
jdbc:mysql://localhost:3306/xxxx useUnicode=true&characterEncoding=UTF-8
Lihat apakah itu berhasil