jsp解决mysql乱码_jsp+mysql时乱码的解决
剛來了sohu.blog,那就來個原創吧.
由于最近不知道發什么神經了,非常喜歡mysql(那是免費的吖,誰不喜歡呢),而jsp就學了10多天,然后我聽說jsp+mysql在進行相連操作的時候會經常出現亂碼的情況.那我就把心一橫,我也來試試吧.
誰知道一試,在jsp里使用mysql官方所提供的mysql驅動程序,果然在jsp里insert之后出現亂碼的情況.然后在網上找了N多的資料試了一下,還是不行,又說聽mysql官方的驅動對中文支持不太好,最好使用mm.mysql驅動,那又在網上找了驅動來下載,結果還是沒有辦法,亂碼仍然存在.
就在我在csdn里亂逛,尋找解決方法的時候,不經意間看到一遍文章,是要先指定mysql的字符集,不僅是在my.ini文件里指定,而進入mysql時也要指定, mysql --default-character-set=gbk -uroot -p
這樣的話,進入了mysql客戶端管理程序,就可以指定一個字符集了,然后現在建一個數據庫,再insert的話,問題依舊存在,沒辦法,再找方法.然而又找到了一個,說在連接字符串里要加個編碼下去,然后又寫了一下
String url="jdbc.mysql://localhost:3306/數據庫名?useUnicode=true&characterEncoding=gbk"
要這里去寫,然后在DriverManager.getConnection()里用.
然而,加了還不行,真是禍不單行,看了很多的文章了,說到的問題都已經寫上了.包括在jsp里寫
然后獲取傳遞的參數的時候,也轉換了編碼了
String parame=new String(request.getParameter("param").getBytes("ISO8859_1","GBK");
結果還是不行,沒辦法,只好在mysql數據庫里下手,終于在不經意間寫了個建數據庫和表的,竟然行了.腳本如下:
CREATE DATABASE MyDemo DEFAULT CHARSET=GBK;
USE Mydemo;
CREATE TABLE Temp(
ID INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
NAME VARCHAR(50) NOT NULL,
PASSWORD VARCHAR(20) NOT NULL)
ENGINE=INNODB DEFAULT CHARSET=GBK;
這樣,在mysql困擾了我兩天的情況下,問題終于解決了.現在可以安心用mysql了.
希望對學習mysql+jsp的朋友有幫助..
總結
以上是生活随笔為你收集整理的jsp解决mysql乱码_jsp+mysql时乱码的解决的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: TensorFlow官方发布剪枝优化工具
- 下一篇: 我国卫星互联网技术试验卫星成功发射