zoukankan      html  css  js  c++  java
  • Bug案例集中营

    1、get方法提交表单,后台出现中文乱码问题  (注明:web.xml中的编码设置只是针对post请求)

           在eclipse中,找到tomcat的目录,在这个目录下面 omcat61-32 omcat61conf,找到server.xml

           打开文件,找到这一行  <Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>

           将其修改成这样 <Connector URIEncoding="utf-8" connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>

           最后清理服务器缓存

         (如不行,更改tomcat原始路径的配置)

          配置useBodyEncodingForURI="true"后,可以解决普通get请求的中文乱码问题

            但是对于通过ajax发起的get请求中文依然会乱码,请把useBodyEncodingForURI="true"改为URIEncoding="UTF-8"即可

    2、Js的数组排序sort(),默认使用字母数字(字符串的Unicode码)排序。例如:[1,2,5,10].sort()会输出 [1,10,2,5] 。正确的排序可用 [1,2,5,10].sort(a,b)

     3、JSp使用include标签包含子页面时出现乱码。方法:在子页面的顶部加入:<%@page pageEncoding="UTF-8"%> 

    4、Linux的权限读取文件,java往服务器上上传文件后,再次登录就没有权限了。

    5、写接口调试的时候,浏览器查看乱码,解决办法:

          1.通过代码查看当前电脑的编码类型System.out.println(System.getProperty("file.encoding")); 或者 System.out.println(Charset.defaultCharset());,任意选一种即可。

          2.response.setCharacterEncoding("utf-8");//第一句,设置服务器端编码

             response.setContentType("text/html;charset=utf-8");//第二句,设置浏览器端解码

    6、linux系统下mysql表名区分大小的问题:  

     1、数据库名与表名是严格区分大小写的;2、表的别名是严格区分大小写的;3、列名与列的别名在所有的情况下均是忽略大小写的;4、变量名也是严格区分大小写的;
     注:MySQL在Windows下都不区分大小写。

      可以查看Linux上的MySQL的配置文件/etc/my.cnf ,就需要在[mysqld]下面添加一行配置,即 lower_case_table_names=1: (其中 0:区分大小写,1:不区分大小写)

    [root@VM_219_131_centos tomcat7]# vi /etc/my.cnf 
    [mysqld]
    lower_case_table_names=1
    datadir=/var/lib/mysql
    socket=/var/lib/mysql/mysql.sock
    user=mysql
    # Disabling symbolic-links is recommended to prevent assorted security risks
    symbolic-links=0
    
    [mysqld_safe]
    log-error=/var/log/mysqld.log
    pid-file=/var/run/mysqld/mysqld.pid

        补:如果想在查询时区分字段值的大小写,则:字段值需要设置BINARY属性,设置的方法有多种:

    A、创建时设置:
    CREATE TABLE T(
    A VARCHAR(
    10) BINARY );
    B、使用alter修改:
    ALTER TABLE`tablename` MODIFY COLUMN `cloname` VARCHAR(45) BINARY;
    C、mysql table编辑时中直接勾选BINARY项。
    修改完后,一定记得重启数据库。
    [root@VM_219_131_centos tomcat7]# service mysqld restart
    Stopping mysqld:  [  OK  ]
    Starting mysqld:  [  OK  ]

     

  • 相关阅读:
    BZOJ 4010: [HNOI2015]菜肴制作( 贪心 )
    bzoj 1084
    bzoj 2763
    bzoj 1003
    bzoj 1858
    codevs 1296
    cf 438D
    vijos 1083
    codevs 3303
    bzoj 1296
  • 原文地址:https://www.cnblogs.com/george93/p/6952378.html
Copyright © 2011-2022 走看看