jsp匹配數據庫中文出錯,jsp匹配數據庫中文出錯怎麼辦

本文目錄一覽:

為什麼我的JSP程序想數據庫存入漢字時會出現亂碼?怎麼解決啊?

jsp傳值到數據庫出現亂碼,一般有兩個原因:

一種是jsp將數據發送給數據庫時出現亂碼,

一種是數據庫拿到數據後進行存儲是發生亂碼,

出現第一種問題時要去看jsp標籤中是否是為utf-8,再者就要看項目編目是否為utf-8右鍵項目名到preference下可以更改項目編碼。

出現第二種問題時,代表數據庫編碼有問題。右鍵你用的數據庫–數據庫屬性可以更換成utf-8具體視圖如下顯示,

在編碼過程中要保證項目不出現亂碼情況就要在創建項目和數據庫時對其編碼進行上述規定

JSP數據庫使用中文用戶名就報錯

不支持中文。安裝的時候不要安裝在中文目錄下。代碼使用的時候中文要帶“”。要使用STRING 類型

你使用了過濾,你查看一下過濾的代碼

用jsp連接mysql數據庫,出現中文亂碼,該怎麼解決啊

數據庫不是亂碼,是你設置的編碼問題,你用的是cmd來查看的吧,cmd查看的方式的gbk的,和你的數據庫編碼不一樣,就會顯示亂碼

嗯,對呀,所以你頁面顯示沒有問題,數據庫裡面存儲的也沒有問題,而且是用cmd執行sql語句看到的是亂碼問題,沒有問題的

如何徹底解決jsp頁面中文亂碼及數據庫亂碼

1、知道自己安裝Mysql數據庫安裝配置時選擇了什麼編碼方式,如果之前安裝,現在不太清楚,建議重新安裝Mysql數據庫,安裝配置時選擇utf8

(這裡有個小技巧:不用卸載Mysql數據,找到安裝Mysql數據庫目錄:D:\MySQL Server 5.1\bin下的MySQLInstanceConfig.exe,雙擊運行可以進行重新配置安裝,並選擇utf8編碼方式),如圖

2、安裝成功後,查看編碼方式,sql命令如下:

show variables like ‘character%’;

這裡的所有編碼方式都要統一為utf8,若某一個不是utf8的編碼方式,就要設置為utf8,sql命令如下:set character_set_results=utf8

3、創建數據庫並指定數據庫的編碼方式,sql命令如下:

create database yourDB character set utf8;

4、創建數據庫表,也要指定其編碼方式

5、如果你的Mysql版本是5.0以下,則還需要在hibernate.cfg.xml配置裡面url指定數據庫訪問連接時的編碼方式:

如:url=jdbc:mysql://localhost/db?user=userpassword=123456useUnicode=truecharacterEncoding=UTF8

如果Mysql版本是5.0以上,這裡的url加不加?user=userpassword=123456useUnicode=truecharacterEncoding=UTF8 都沒關係

6、寫一個字符編碼的過濾器,編碼方式也要保證跟mysql的字符集一致為UTF-8

注意:在web.xml配置該過濾器時,必須把該過濾器的filter-mapping放在struts的映射前面,不然起不到過慮作用

7、所有jsp頁面指定編碼格式,保證跟mysql的字符集一致為UTF-8

注意:頁面裡面大小寫統一,如%@ page pageEncoding=”UTF-8″ contentType=”text/html; charset=UTF-8″ %,不能是pageEncoding=”UTF-8″,contentType=”text/html; charset=utf-8″,添加數據頁面也要跟顯示數據頁面的編碼格式要保持一致,不然的話就會出現添加到數據庫中沒亂碼,從數據庫中顯示出現亂碼的情況

解決:JSP頁面取出數據庫中的中文出現亂碼

jsp讀取數據亂碼原因如下:

1、JSP連接數據庫語句指定的編碼不正確

解決方案:在JSP連接數據庫的語句中,帶上useUnicode=truecharacterEncoding=UTF-8autoReconnect=true

2、JSP頁面沒有指定數據提交的編碼,就會造成亂碼:

解決方案:這種亂碼的情況,只需在頁面開頭加上request.setCharacterEncoding(“GBK”); 指定提交的即可。

從jsp頁面讀取數據庫 中文變成問號 mysql

從jsp頁面讀取數據庫操作mysql變成問號是因為編碼問題導致。

1.架設服務器安裝MYSQL時的會讓你選擇一種編碼,如果這種編碼與你的網頁不一致,可能就會造成JSP頁面亂碼.

解決方案:如果安裝mysql的編碼已不能更改,很多朋友是購買虛擬主機建立網站,無權更改MYSQL的安裝編碼,這一關我們可以跳過,因為只要後面的步聚正確,一樣能解決亂碼問題

2.在PHPMYADMIN或mysql-front等系統 創建數據庫時會讓你選擇一種編碼,如果這種編碼與你的網頁不一致,也有可能造成JSP頁面亂碼.

解決方案:修改數據庫編碼,如果是數據庫編碼不正確: 可以在phpmyadmin 執行如下命令: ALTER DATABASE `test` DEFAULT CHARACTER SET utf8 COLLATE utf8_bin 。這個命令就是將test數據庫的編碼設為utf8

3.創建表時會讓你選擇一種編碼,如果這種編碼與你的網頁編碼不一致,也可能造成JSP頁面亂碼

解決方案:修改表的編碼:

ALTER TABLE `category` DEFAULT CHARACTER SET utf8 COLLATE utf8_bin

這個命令就是將一個表category的編碼改為utf8

4.創建表時添加字段是可以選擇編碼的,如果這種編碼與你的網頁編碼不一致,也可能造成JSP頁面亂碼

解決方案:修改字段的編碼:

ALTER TABLE `test` CHANGE `dd` `dd` VARCHAR( 45 ) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL

這個命令就是將test表中 dd的字段編碼改為utf8

5.用戶提交JSP頁面的編碼與顯示數據的JSP頁面編碼不一致,就肯定會造成JSP頁面亂碼.

解決方案:如果是這種情況容易解決,只需檢查一下頁面,修改源文件的charset即可。如用戶輸入資料的JSP頁面是big5碼, 顯示用戶輸入的JSP頁面卻是gb2312,這種100%會造成JSP頁面亂碼

6.字符集不正確

解決方案:要注意:

1.平時你在某些網站看到的文字可能有幾種編碼, 如你看到一個繁體字,它有可能是big5編碼,也有 可能是utf-8編碼的,更有可能是gb碼的,沒錯,也就是說有簡體編碼的繁體字,也有繁體編碼的簡體字,一定要了解這一點.

2.如果你是做一個簡體編碼的網頁,編碼定為GB2312,如果有香港和台灣地區的訪客提交繁體的信息,就可能會造成亂碼,解決方法就是(A)將網站編碼設為utf-8,這樣可以兼容世界上所有字符, (B)如果網站已經運作了好久,已有很多舊數據,不能再更改簡體中文的設定,那麼建議將頁面的編碼設為GBK,GBK與GB2312的區別就在於:GBK能比GB2312顯示更多的字符,要顯示簡體碼的繁體字,就只能用GBK

7.JSP連接MYSQL數據庫語句指定的編碼不正確

解決方案:在JSP連接數據庫的語句中,帶上

useUnicode=truecharacterEncoding=UTF-8autoReconnect=true,

但是千萬不要犯和我同樣的錯誤哦。

8.JSP頁面沒有指定數據提交的編碼,就會造成亂碼:

解決方案:這種亂碼的情況,只需在頁面開頭加上request.setCharacterEncoding(“GBK”); 指定提交的即可。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/259719.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-15 16:30
下一篇 2024-12-15 16:30

相關推薦

  • Python 常用數據庫有哪些?

    在Python編程中,數據庫是不可或缺的一部分。隨着互聯網應用的不斷擴大,處理海量數據已成為一種趨勢。Python有許多成熟的數據庫管理系統,接下來我們將從多個方面介紹Python…

    編程 2025-04-29
  • openeuler安裝數據庫方案

    本文將介紹在openeuler操作系統中安裝數據庫的方案,並提供代碼示例。 一、安裝MariaDB 下面介紹如何在openeuler中安裝MariaDB。 1、更新軟件源 sudo…

    編程 2025-04-29
  • Python讀取中文

    Python是一種高級編程語言,被廣泛地應用於各種領域中。而處理中文數據也是其中重要的一部分。本文將介紹在Python中如何讀取中文,為大家提供指導和幫助。 一、讀取中文文件 在P…

    編程 2025-04-29
  • jQuery Datatable分頁中文

    jQuery Datatable是一個非常流行的數據表插件,它可以幫助您快速地在頁面上創建搜索、過濾、排序和分頁的數據表格。不過,它的默認設置是英文的,今天我們就來探討如何將jQu…

    編程 2025-04-29
  • Python計算中文字符個數

    本文將從多個方面對Python計算中文字符個數進行詳細的闡述,包括字符串長度計算、正則表達式統計和模塊使用方法等內容。 一、字符串長度計算 在Python中,計算字符串長度是非常容…

    編程 2025-04-29
  • 數據庫第三範式會有刪除插入異常

    如果沒有正確設計數據庫,第三範式可能導致刪除和插入異常。以下是詳細解釋: 一、什麼是第三範式和範式理論? 範式理論是關係數據庫中的一個規範化過程。第三範式是範式理論中的一種常見形式…

    編程 2025-04-29
  • Python3亂碼轉中文

    本文將詳細介紹如何轉換Python3中的亂碼為中文字符,幫助Python3開發工程師更好的處理中文字符的問題。 一、Python3中文亂碼的原因 在Python3中,中文字符使用的…

    編程 2025-04-29
  • leveldb和unqlite:兩個高性能的數據庫存儲引擎

    本文將介紹兩款高性能的數據庫存儲引擎:leveldb和unqlite,並從多個方面對它們進行詳細的闡述。 一、leveldb:輕量級的鍵值存儲引擎 1、leveldb概述: lev…

    編程 2025-04-28
  • 從16進制轉義到中文字符

    16進制轉義是為了在不同的字符集、不同的編碼下,能夠保證特殊字符被正確的識別和渲染。本文將從多個方面對16進制轉義做詳細的闡述,讓讀者對其有更深入的了解。 一、轉義實現 在Web開…

    編程 2025-04-28
  • Python怎麼導入數據庫

    Python是一種高級編程語言。它具有簡單、易讀的語法和廣泛的庫,讓它成為一個靈活和強大的工具。Python的數據庫連接類型可以多種多樣,其中包括MySQL、Oracle、Post…

    編程 2025-04-28

發表回復

登錄後才能評論