jsp+mysql 中文处理问题

编码的统一主要在以下三个地方:JSP页面,数据库连接方式,数据库。

一首先看一下数据库方面的编码设定
1:mySQL的my.ini文件,它位于MySQL Server 安装目录下,设置default-character-set = gbk(共两处);
2:建立数据库表的时候要写成这样。
create table `immdb`.`admins`(
......
) ENGINE=InnoDB DEFAULT CHARSET=gbk;
最后这句ENGINE=InnoDB DEFAULT CHARSET=gbk是设置建立的这个表使用的是GBK。

二下面再看看数据库连接方式上编码需要注意的地方
它在connection=DriverManager.getConnection("jdbc:mysql://localhost:3306/immdb?user=root&password=123456&useUnicode=true&characterEncoding=GBK");
最后的字符编码被指定为GBK。这样才能与数据库统一,不会在传递过程中发生乱码。

三再看看JSP页面的编码修改位置,位于<%@ page language="java" contentType="text/html; charset=GBK"
pageEncoding="GBK"%>

但是还应该注意,如果在JSP页面传递form或者其他值的时候,有中文,那么,你还需要在JSP页面中加入<% request.setCharacterEncoding("GBK");%>(在servlet中加入request.setCharacterEncoding("GBK");
response.setCharacterEncoding("GBK");
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值