chunjihong 发表于 2016-10-22 09:33:47

解决Java服务器端插入数据到Mysql中乱码问题--简单几步轻松解决乱码问题

  当写入数据到mysql数据库中发生乱码时.请检查以下几个地方.
  
  1.tomcat服务器的配置文件,具体目录在Tomcat安装目录/conf/server.xml文件:
  <Connector URIEncoding="UTF-8" connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443" useBodyEncodingForURI="true" />
  
  2.eclipse工作空间:
  在首选项->General -> Workspace->设置UTF-8
  
  3.jsp文件的编码格式:
  <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
  <metahttp-equiv="Content-Type"content="text/html;charset=utf-8"/>
  
  4.数据连接配置文件.如果是.properties文件要把&amp;改成&,如果是.xml文件要使用&amp;否则写入数据到数据库中会乱码(我就在这里吃了大亏):
  jdbc.driver=com.mysql.jdbc.Driver
jdbc.url = jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&amp;characterEncoding=UTF-8
jdbc.username = root
jdbc.password = mysql
jdbc.database=commondb
  
  5.安装数据时记得设置指定的编码格式utf8.如果忘记设置可以在安装目录:
  C:\Program Files\MySQL\MySQL Server 5.1\中的my.ini文件设置.
  具体需要设置2处:
  default-character-set=utf8
  
  6.建立数据库时和数据库表时设置成utf8
  建立数据库:
  CREATE DATABASE `mydb` CHARACTER SET 'utf8' COLLATE 'utf8_general_ci';
  建立数据库表:
  CREATE TABLE `t_customer` (
  `customer_id` VARCHAR(20) NOT NULL,
  `customer_name` VARCHAR(10) NOT NULL,
  `customer_level` VARCHAR(10) DEFAULT '普通等级'
  PRIMARY KEY (`customer_id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8
  
  7.配置完成之后重启服务器.即可.
  按照我说的这几点做,90%以上都能解决问题. 要是还不能解决联系我QQ: 363667565
  
  
  
  
页: [1]
查看完整版本: 解决Java服务器端插入数据到Mysql中乱码问题--简单几步轻松解决乱码问题