zoukankan      html  css  js  c++  java
  • J2EE Oa项目上传服务器出现的乱码解决过程

    (= =)搞了许久觉得有必要记下来.. 


    由于我本地的mysql都设置好了,但是服务器的又不能去改它 毕竟还有其他人要用- -;


    所以只能是我建的时候去设置一下了,


    首先先建数据库 ,表;;

    create database w2oa;
    use w2oa;
    create table user(id int primary key auto_increment,name varchar(60),password varchar(40),photoname varchar(50),isadmin int,score int,stuid varchar(12),
    tel varchar(20),sex varchar(20), qq varchar(20),banktype varchar(40),banknumber varchar(25),email varchar(40),grade_class varchar(100), birthday DATE,direction varchar(30),ing int,
    intro varchar(200)
    );

    注册可以不报错,注册里面最长的字段grade_class 13计算机实验班都可以  但是悲剧的是 登入完出现的页面出现"?"这样的乱码

    百度了一番

    说是要

    jdbc.driverClassName=com.mysql.jdbc.Driver
    jdbc.url=jdbc:mysql://localhost:3306/w2oa?useUnicode=true&characterEncoding=utf-8
    jdbc.username=zjx
    jdbc.password=zjx

    加上

    ?useUnicode=true&characterEncoding=utf-8
    就能解决(后来想想也确实是这样 因为乱码的问题有好几种,我的是属于在action里面添加到数据库的时候出现的乱码,所以应该在连接的时候设置下这个属性)

    本以为可以了很开心..

    结果意想不到的事情又来了..

    注册都注册不了 报错!!

    ERROR:

    Incorrect string value: 'xE5x85xB6xE4xBBx96' for column...
    就是不能插入那个13计算机实验班的数据...  于是又百度了一番..


    最后发现了一个问题... 数据表的编码不是utf8。。。

    因为我本地数据库默认的是创建的时候就设置为utf8。。

    所以服务器建表那边要改
    然后统统删了 重新建.....


    create database w2oa;
    use w2oa;
    create table user(id int primary key auto_increment,name varchar(60),password varchar(40),photoname varchar(50),isadmin int,score int,stuid varchar(12),
    tel varchar(20),sex varchar(20), qq varchar(20),banktype varchar(40),banknumber varchar(25),email varchar(40),grade_class varchar(100), birthday DATE,direction varchar(30),ing int,
    intro varchar(200)
    )default charset=utf8;
    create table project(id int primary key auto_increment,name varchar(60),ismark int,fbname varchar(60),filename varchar(100),status varchar(20),begintime DATE,finishtime DATE,
    intro varchar(1000),ios int,j2ee int,android int,php int,qianduan int,unity3d int,other int)default charset=utf8;
    
    create table u_p(upid int primary key auto_increment,uid int,pid int,upscore int ,upstatus varchar(20))default charset=utf8;
    
    create table apply(aid int primary key auto_increment,pname varchar(60),uid int ,uing int,udirection varchar(30),pid int,uname varchar(60),
    ustuid varchar(12),uphotoname varchar(50),status int)default charset=utf8;

    注意这一句

    default charset=utf8;
     因为在我没加这句的时候 建表完;

    执行 show create table user; 发现 

    是这样的:

    ) ENGINE=InnoDB DEFAULT CHARSET=latin1 |
    编码不匹配,,导致我在建表的时候不能用中文


    这样就ok了、 记录下来用来让需要的人少走弯路


    转载请注明出处:http://blog.csdn.net/u011644423/article/details/39735623





    版权声明:本文为博主原创文章,未经博主允许不得转载。

    today lazy . tomorrow die .
  • 相关阅读:
    汇编写启动代码之关看门狗、设置栈、调用C、开关icache
    ARM汇编伪指令
    多寄存器访问、后缀、栈、!、^
    协处理器CP15操作指令
    常用的ARM指令
    汇编指令及其特点
    ARM的37个寄存器以及异常处理方法
    一步步点亮LED之汇编点亮LED
    机器学习_第一节_numpy
    函数进阶_生成器
  • 原文地址:https://www.cnblogs.com/france/p/4808629.html
Copyright © 2011-2022 走看看