µ±jspºÍservlet³öÏÖÂÒÂëÎÊÌâºóµÄ½â¾ö·½°¸
ÉÏÍø¿´Á˺ö࣬¾ÍÕâһƪ½â¾öÁËÎÒµÄÎÊÌ⣬ÏÖת£¬ÎÒµÄÏîÄ¿ÓõÄÊÇMVC¼Ü¹¹£¬ÓÐͳһµÄ¿ØÖÆÆ÷£¬×ªÏò²»Í¬µÄAction£¬ÉÏÍø¿´Á˺ö࣬´ó²¿·ÖÊÇ˵¼ÓÈërequest.setCharacterEncoding("utf-8");µ«ÊǾ¹ýÎÒµÄÊÔÑ飬ÕâÖ»ÓÐÔÚÀûÓÃJSP´¦Àí±íµ¥´«ÊäÊý¾Ýʱ²Å¿ÉÓã¬ÔÚÎҵĶ«Î÷ÖÐÎÞ·¨½â¾ö£¬ºóÀ´·¢ÏÖ»¹ÊÇÓÃFilterChainºÃ£¬ºÇºÇ£¬Öص㻹ÊÇÔÚrequest.setCharacterEncoding("")ÖУ»Ï£Íû¶Ô´ó¼ÒÓеã°ïÖú
ת×Ô£¨http://www.itwis.com/html/java/jsp/20080814/2158.html£©
µ±jspºÍservlet³öÏÖÂÒÂëÎÊÌâºóµÄ½â¾ö·½°¸
À´Ô´£º ·¢²¼Ê±¼ä£º2008-08-14 ·¢²¼ÈË£º ä¯ÀÀ£º162 ÈË´Î ×ÖÌ壺 [´ó ÖРС]
ÔÚ½øÐÐjspºÍservletµÄ¿ª·¢Ê±£¬ºÜÓпÉÄÜÓöµ½³öÏÖÁËÖÐÎÄÂÒÂëÎÊÌ⣬ÏÖÔÚÎÒÃÇÀ´¿´¿´±ÊÕßÊÇÈçºÎ½â¾öµÄ£¬ËûÒ²ÊÇÓÃÁËÐí¶à·½·¨£¬·¢ÏÖ»¹Êǽâ¾ö²»ÁË¡£×îºóÓÃÁ˹ýÂËÆ÷£¬²ÅËãÖսᡣ
´Ë·½·¨×ܽáÈçÏ£ºÔÚjspÒ³ÃæÖÐʹÓÃ<%@ page pageEncoding="GB2312"%> £¬ÕâÀïµÄpageEncodingÊÇGB2312,ÄÇôÎÒÃÇÔÚ¹ýÂËÆ÷web.xmlÖÐËùʹÓõÄ<param-value>GB2312</param-value>ҲΪGB2312¡£×ÜÖ®Ò»Ìõ£º¾ÍÊÇÉÏÊöÁ½ÕßÒ»Ö¼´¿É,±ÈÈçͬΪUTF-8
½«¹ýÂËÆ÷µÄjava´úÂëºÍweb.xmlµÄÅäÖÃд
//--------java´úÂ벿·Ö£ºCharsetFilter .java
package com;
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
public class CharsetFilter implements Filter {
private String charset = "GB2312";
public void destroy() {
}
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain arg2) throws IOException, ServletException {
request.setCharacterEncoding(charset);
arg2.doFilter(request, response);
}
public void init(FilterConfig arg0) throws ServletException {
charset = arg0.getInitParameter("charset");
System.out.println("×Ö·û¹ýÂËÆ÷¿ªÆô£¬µ±Ç°×´Ì¬£º"+charset);
}
}
//--------web.xml²¿·Ö£¨ÒÔϲ¿·Ö¿ÉÒÔÖ±½Ó¸´ÖÆÕ³Ìùµ½WEB.XMLÏ£©
<filter>
<filter-name>CharsetFilter</filter-name>
<filter-class>com.CharsetFilter</fi
Ïà¹ØÎĵµ£º
ǰÌ᣺¼ÙÉèÄãµÄ Http µØÖ·Îª http://192.168.0.1/ ÄãµÄ web Ó¦ÓÃΪ webapp £¬ÄÇôÄãµÄ web Ó¦Óà URL Ϊ http://192.168.0.1/webapp/
[ÎÊÌâ1]
[ÃèÊö]µ±ÔÚ jsp ÖÐÒýÈë css ʱ£¬Èç¹ûÆäÏà¶Ô·¾¶Ïà¶ÔÓÚµ±Ç° jsp ÎļþµÄ£¬¶øÔÚÒ»¸öºÍÕâ¸ö jsp µÄ·¾¶²»Ò»ÑùµÄ servlet ÖÐ forwarder Õâ¸ö jsp ʱ£¬¾Í»á·¢ÏÖÕâ¸ö css Ñùʽ¸ù±¾Ã»ÓÐÆ ......
jspµÄpageEncoding="UTF-8",strutsµÄencoding="UTF-8"£¬eclipse µÄ¹¤×÷Çø¼äµÄ±àÂ뷽ʽÊÇGBK£¬µ«ÊÇÔÚstrutsµÄactionÖлñµÃµÄjsp´«À´µÄÖÐÎÄÖÐÓÐÂÒÂ룬ʹÓÃnew String(sysgkForm.getContent().getBytes("UTF-8"),"GBK")תÂëÒ²²»ÐУ¬×îºó·¢ÏÖÎÊÌâ³öÔÚÁËjspÀïÃæ¡£¼ÓÉÏcontentType="text/html; charset=GBK" ¾ÍºÃÁË¡£
pageEncodi ......
·pageContext£ºÌṩ¶ÔÒ³ÃæÊôÐԵķÃÎÊ¡£
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
pageContext.setAttribute("basePath",basePath);
%>
ʹÓãº
${pageScope}
·reques ......
session¾ÍÊÇÒ»¸öÈ«¾Ö±äÁ¿£¬ÊÇä¯ÀÀÆ÷Ïß³ÌÔÚ·þÎñÆ÷¶ËµÄ´úÀí¡£web·þÎñ³ÌÐòÖ»Òª´ò¿ª£¬session¾Í»á´æÔÚ£¬µ±ÄãµÚÒ»´Î·ÃÎÊʱ£¬session»á×Ô¶¯ÎªÄã·ÖÅäÒ»¸ösession ID£¬ËùÒÔsessionΪн¨Á¢µÄ£¬ËùÒÔsession.isNew()Ϊtrue¡£µ±ÄãË¢ÐÂÒ³ÃæÊ±£¬Õâ¸ösession IDÒ»Ö±´æÔÚ(session.getId()²»±ä)£¬²»»áÏûʧ£¬ËùÒÔse ......
ÔÚjspÖУ¬Èç¹ûÔÚurlÖд«µÝÖÐÎÄʱ»á³öÏÖÂÒÂ룬ÔÚÍøÉϹØÓÚÕâÒ»ÎÊÌâµÄ½â¾ö·½·¨Î廨°ËÃÅ£¬µ«¶¼²»ÊǺÜ×àЧ£¡Æäʵ½â¾ö·½·¨·Ç³£¼òµ¥£º µÚÒ»²½£º±àÂ루ÒÔ´«µÝµÄ²ÎÊýΪstrΪÀý£© ÔÚ´«µÝÊý¾Ýǰ½«str½øÐбàÂëJava.net.URLEncoder.encode(str) µÚ¶þ²½£º½âÂë ÔÚ»ñÈ¡Êý¾Ý¶Ë½«µÃµ½µÄÊý¾Ý½øÐнâÂë new String£¨str.getBytes("ISO8859_1")£©
......