zoukankan      html  css  js  c++  java
  • jsp编码问题

    jsp编码问题


    方法一%%%%%%%%%%%%%%%%%%%%%%%%%
    例:1:jsp页面用<%@ page language="java" pageEncoding="UTF-8"%>
       2: mysql数据库utf8(没问题)
    3:mysql链接字符串

      <property name="url">
        <value>jdbc:mysql://127.0.0.1:3306/cms?useUnicode=true&amp;characterEncoding=UTF-8</value>
      </property>
    4:
       出现问题:jsp页面数据一传到mysql数据库里就变成乱码
       最后解决方法:把对传递的数据值的变量操作如下:

       String username=StringEncode.getEncode(userForm.getUsername());

    StringEncode.getEncode的功能如下:

    package com.links.utils;

    public class StringEncode {
       
        public static String getEncode(String str)
        {
          String ret;
          
          if(str==null)
              return str;
         try{
            // ret=new String(str.getBytes("UTF-8"),"UTF-8");
             ret=new String(str.getBytes("ISO-8859-1"),"UTF-8");
           
         }
         catch(Exception e){

            ret=str;
         }
         return ret;
        }

    }
    其它参考
    #################################################################
    方法二%%%%%%%%%%%%%%%%%%%%%%%%%(为了不都写 StringEncode.getEncode转换)

    就是要在web.xml配置如下:
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.4" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee   http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
        <!-- <servlet>
            <servlet-name>action</servlet-name>
            <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
            <init-param>
                <param-name>config</param-name>
                <param-value>/WEB-INF/struts-config.xml</param-value>
            </init-param>
            <init-param>
                <param-name>debug</param-name>
                <param-value>3</param-value>
            </init-param>
            <init-param>
                <param-name>detail</param-name>
                <param-value>3</param-value>
            </init-param>
            <load-on-startup>0</load-on-startup>
        </servlet>
        <servlet-mapping>
            <servlet-name>action</servlet-name>
            <url-pattern>*.do</url-pattern>
        </servlet-mapping>
     -->
    <servlet>
      <servlet-name>ChinaRedTea</servlet-name>
      <servlet-class>com.henry.util.ChinaRedTea</servlet-class>
      <init-param>
       <param-name>config</param-name>
       <param-value>/WEB-INF/struts-config.xml</param-value>
      </init-param>
      <init-param>
       <param-name>debug</param-name>
       <param-value>3</param-value>
      </init-param>
      <init-param>
       <param-name>detail</param-name>
       <param-value>3</param-value>
      </init-param>
      <load-on-startup>0</load-on-startup>
     </servlet>
     
     <servlet-mapping>
      <servlet-name>ChinaRedTea</servlet-name>
      <url-pattern>*.do</url-pattern>
     </servlet-mapping>

    </web-app>





    package com.henry.util;
    import java.io.IOException;
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import org.apache.struts.action.ActionServlet;

    public class ChinaRedTea extends ActionServlet {
         private static final long serialVersionUID = -995919609576385793L;
         
         public ChinaRedTea() {
         }
         
         protected void process(HttpServletRequest request,
           HttpServletResponse response) throws ServletException, IOException {
          request.setCharacterEncoding("UTF-8");
          super.process(request, response);
         }
    }


  • 相关阅读:
    「杂文」随想录
    「小说」妖精舞于废墟之上
    昨日之盛,明日之俗 ~ SDOI2021 退役记
    P6292 区间本质不同子串个数
    「杂文」生之重
    「闭门造车」二叉分块树
    「杂文」雨色的魔法(一)
    「笔记」斜率优化 DP
    「笔记」后缀数组
    NOIP 2020 AFO 记
  • 原文地址:https://www.cnblogs.com/smallfa/p/943264.html
Copyright © 2011-2022 走看看