菜鸟用jsp往数据库添加的中文显示为乱码“?” 求大侠帮忙解决
我的配置环境:window xp;myEclipse6.5 ;MySQL 5.5; jdk1.6.0_10;apache-tomcat-7.0.19
我数据库的字符集信息:输入show variables like 'character\_set\_%';
显示的是:图片上传不了
输入show variables like 'collation_%';
显示的是:图片上传不了
数据库部分信息,我是往bookinfo添加数据的,第二条数据为我添加的,中文显示的都是"?":/*
SQLyog Enterprise - MySQL GUI v6.14
MySQL - 5.5.14 : Database - library
*********************************************************************
*/
/*!40101 SET NAMES utf8 */;
/*!40101 SET SQL_MODE=''*/;
create database if not exists `library`;
USE `library`;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*Table structure for table `bookinfo` */
DROP TABLE IF EXISTS `bookinfo`;
CREATE TABLE `bookinfo` (
`id` int(10) NOT NULL AUTO_INCREMENT,
`bookname` varchar(70) DEFAULT NULL,
`author` varchar(30) DEFAULT NULL,
`publishing` varchar(50) DEFAULT NULL,
`publishingtime` varchar(20) DEFAULT NULL,
`page` int(10) DEFAULT NULL,
`price` varchar(20) DEFAULT NULL,
`intime` varchar(10) DEFAULT NULL,
`Isbn` varchar(30) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=gb2312 CHECKSUM=1 DELAY_KEY_WRITE=1 ROW_FORMAT=DYNAMIC;
/*Data for the table `bookinfo` */
insert into `bookinfo`(`id`,`bookname`,`author`,`publishing`,`publishingtime`,`page`,`price`,`intime`,`Isbn`) values (1,'jsp技术开发详解','卢汉鹏','化学工业出版社','1',400,'58','2011-10-17',NULL),(2,'jsp???????','???','???????','0910',420,NULL,'20111017','A209');
/*Table structure for table `users` */
jsp页面头部的信息如下:
<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>用户界面</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<link href="css/style1.css" type="text/css" rel="stylesheet">
</head>
我还参照教程用了过滤器来处理中文,已经配置好,如下:
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
//将所有request内的对象设置字符集为gb2312
request.setCharacterEncoding("gb2312");
//将所有response内的对象设置字符集为gb2312
response.setCharacterEncoding("gb2312");
//用chain的doFilter处理过滤
chain.doFilter(request, response);
}
除了以上文件,涉及的还有连接数据库、servlet、等几个JAVA文件,如果需要这些文件信息或其它的信息我再补上,真心真意想大侠们帮我,因为我已经为这个问题困扰很久了,跪谢!!