`
实学实战
  • 浏览: 16010 次
  • 性别: Icon_minigender_1
  • 来自: 青岛
文章分类
社区版块
存档分类
最新评论

ajax jsp请求乱码

 
阅读更多

jsp页面(Ajax)

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>My JSP 'ajax1.jsp' starting page</title>
    
	<meta http-equiv="pragma" content="no-cache">
	<meta http-equiv="cache-control" content="no-cache">
	<meta http-equiv="expires" content="0">    
	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
	<meta http-equiv="description" content="This is my page">
	
<script type="text/javascript" src="ajax_createXMLHttpRequest/createXMLHttpRequest.js"></script>	
<script type="text/javascript">


//文档加载完毕后执行
window.onload = function() {
	var btn = document.getElementById("btn");
	//给按钮的点击事件注册监听
	btn.onclick = function() {
		/*
		 * ajax四步操作,得到服务器的响应
		 * 把响应结果显示到h1元素中
		 */
		
		//1. 得到异步对象 
		var xmlHttp = createXMLHttpRequest();
		/*
		2. 打开与服务器的连接
		  * 指定请求方式
		  * 指定请求的URL
		  * 指定是否为异步请求
		*/
		/************修改open方法,指定请求方式为POST**************/
		xmlHttp.open("POST", "<c:url value='/Servlet'/>", true);
		/************设置请求头:Content-Type************/
		xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		/*
		 * 3. 发送请求
		 * GET请求没有请求体,但也要给出null,不然FireFox可能会不能发送!
		 */
		 /**********发送时指定请求体***********/
		xmlHttp.send("username=<span style="font-size:18px;">:Java技术之信仰 557254530</span>&password=123");
		/*
		 * 4. 给异步对象的onreadystatechange事件注册监听器
		 *
		 */
		//当xmlHttp的状态发生变化时执行
		xmlHttp.onreadystatechange = function() {
			// 双重判断:xmlHttp的状态为4(服务器响应结束),以及服务器响应的状态码为200(响应成功)
			if(xmlHttp.readyState == 4 && xmlHttp.status == 200) {
				// 获取服务器的响应结束
				var text = xmlHttp.responseText;
				// 获取h1元素
				var h1 = document.getElementById("h1");
				h1.innerHTML = text;
			}
		};
	};
};
</script>
  </head>
  <body>
  		
  		<% request.setCharacterEncoding("utf-8"); %>
		<button id="btn">点击这里</button>
		<h1 id="h1"></h1>
		
  </body>
</html>


servlet处理页

package com.ajax.data;

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * Servlet implementation class Servlet
 * 响应text文本:方式POST
 * 解决中文乱码
 * 
 */
@WebServlet("/Servlet")
public class Servlet extends HttpServlet {
	
	private static final long serialVersionUID = 1L;

	protected void doGet(HttpServletRequest request, HttpServletResponse response) 
			throws ServletException, IOException {
	}


	protected void doPost(HttpServletRequest request, HttpServletResponse response) 
			throws ServletException, IOException {
		
		response.setCharacterEncoding("utf-8");
		response.setContentType("text/html;charset=UTF-8");
		
		String name = request.getParameter("username");
		//解决中文乱码
		String strNmae = new String(name.getBytes("ISO-8859-1"),"UTF-8");
//		byte[] n = name.getBytes("ISO-8859-1");
//		String strNmae = new String(n,"UTF-8");
		
		System.out.println("doPost HELLO AjAX!"+strNmae);
		response.getWriter().print("doPost hello ajax!!!"+strNmae);
	}

}

后台输出:

doPost HELLO AjAX! :Java技术之信仰 557254530


分享到:
评论

相关推荐

    ajax解决中文乱码(java/jsp)

    在Web开发中,尤其是在使用Java与JSP技术栈进行开发时,经常会遇到的一个问题是:如何处理AJAX请求中的中文字符乱码问题。本篇文章将详细介绍如何通过前端编码处理、后端参数接收以及响应头设置等手段来有效解决这一...

    JSP中 ajax的get请求的中文乱码问题的解决方法.pdf

    在JSP中,当使用Ajax进行GET请求时,可能会遇到中文乱码的问题。这通常是由于URL编码不匹配或处理不当导致的。以下是一些解决这个问题的关键知识点和步骤: 1. **URL编码问题**: URL编码是一种标准,用于将特殊...

    Struts框架下Ajax发送中文乱码问题的解决

    当我们在Ajax请求中发送中文数据时,如果服务器端没有正确设置接收编码,就会导致乱码。 接着,我们来看看Ajax发送数据的过程。通常,我们使用JavaScript的XMLHttpRequest对象来发送Ajax请求。在发送POST请求时,...

    jsp中 ajax的get请求的中文乱码问题的解决方法.docx

    JSP中的AJAX GET请求的中文乱码问题主要是由于URL编码格式不匹配导致的。以下是一些解决此问题的关键点和步骤: 1. **URL编码格式**: 默认情况下,Tomcat服务器使用ISO-8859-1编码处理URL,这是因为在`server.xml...

    JSP中文乱码问题最优解决方法

    ### JSP中文乱码问题最优解决方法 在Web开发中,特别是使用Java Server Pages(JSP)进行网页设计时,中文乱码问题是一个常见的技术挑战。本文将详细探讨如何有效地解决JSP页面中的中文乱码问题,并提供具体的解决...

    ajax中文乱码如何解决

    在本文中,我们将深入探讨如何解决使用Ajax进行POST请求时出现的中文乱码问题。首先,我们要理解Ajax中文乱码的根源,它通常涉及到字符编码的不一致,尤其是在客户端与服务器之间的通信过程中。 Ajax(Asynchronous...

    ajax乱码解决方案

    **Ajax 乱码解决方案** Ajax 乱码问题在开发Web应用程序时经常遇到,尤其是在涉及到不同编码格式时。本文将深入探讨Ajax与字符编码相关的技术细节,并提供几种有效的解决策略。 首先,JavaScript处理字符的方式是...

    Ajax乱码解决方案(docx)

    总结,解决Ajax乱码问题的关键在于确保编码的统一,从文件编码、请求头、服务器端处理到响应头,每个环节都要设定为UTF-8,以保证数据在传输和处理过程中的正确性。同时,对编辑器的配置也很重要,确保它保存文件时...

    AJAX于jsp结合的一个例子

    在这样的场景中,AJAX请求会携带必要的参数到JSP,JSP通过Java的JDBC API连接到数据库,执行SQL查询,获取数据,最后将数据以JSON或XML形式返回给客户端。 解决乱码问题通常涉及到设置正确的字符编码。在发送AJAX...

    JQuery发送ajax请求时中文乱码问题解决

    总结以上所述,要解决JQuery发送ajax请求时出现的中文乱码问题,需要从两个方面着手:确保Web项目的web.xml配置文件中设置了正确的字符编码过滤器,以及在JSP页面中设置了正确的字符编码,并使用POST方法发送ajax...

    jsp中 ajax的get请求的中文乱码问题的解决方法

    在JSP中使用AJAX的GET请求时,经常会出现中文乱码问题。这种乱码问题通常是由于字符编码不一致导致的。由于HTTP协议本身不包含字符编码信息,服务器和浏览器通常会采用默认的编码方式来处理请求和响应数据,如果默认...

    JSP乱码终极攻略和AJAX初步运用

    在Java Web开发中,JSP乱码和AJAX的应用是两个常见的主题。本文将深入探讨这两个话题,提供解决方案,并给出详尽的实践指导。 首先,让我们来解决JSP项目的乱码问题。乱码通常是由于编码不一致导致的,尤其是在处理...

    java文件JSP文件乱码汇总

    #### 五、GET请求乱码 **问题描述**:使用GET方法传递参数时,Tomcat服务器默认使用ISO8859编码,可能与前端或后端的编码不匹配,导致乱码。 **解决方案**:在Tomcat的`server.xml`配置文件中,添加`URIEncoding=...

    STRUTS+AJAX+JSP 请求到后台乱码问题解决方法

    总结一下,解决STRUTS+AJAX+JSP请求乱码问题主要涉及以下几个步骤: 1. 前端JavaScript中,使用`encodeURI()`对非ASCII字符进行编码。 2. 在STRUTS2的配置文件中,设置`ParametersInterceptor`的编码为UTF-8。 3. ...

    Ajax uri 乱码问题总结

    Ajax URI 乱码问题主要涉及浏览器差异和服务器配置两方面,尤其在处理非 ASCII 字符时,编码格式的不一致可能导致乱码。以下是对这个问题的详细解析和解决方案: 1. **浏览器差异**: - **Internet Explorer (IE)*...

    ajax乱码解决汇总

    当使用Ajax GET请求返回页面时,响应文本(RESPONSETEXT)中的中文乱码通常是因为XMLHttpRequest对象按照UTF-8解码了服务器返回的非UTF-8编码的响应体。为解决此问题,服务器需要在响应头中明确指定编码类型,例如在...

    ajax乱码解决办法

    首先,我们需要理解Ajax请求中的乱码问题通常源于以下几个方面: 1. **服务器编码设置**:服务器返回的数据可能是以特定的字符编码格式(如GBK或UTF-8)生成的,如果客户端(浏览器)不正确识别这个编码,就会出现...

    ajax中文乱码问题解决方案

    总之,解决Ajax中文乱码问题的关键在于确保前端、后端、请求和响应之间的编码一致性。通过以上策略,我们可以有效地预防和解决这类问题,提供良好的用户体验。同时,随着技术的发展,现代Web应用更多地倾向于使用UTF...

    Ajax传输中文乱码问题的解决办法

     我是在一个jsp页面有一个保存按钮,点击时会触发saveForm()的js函数,在saveForm()函数里经过校验后,会通过ajax发送数据请求,这样就不用通过提交表单来传输数据了,ajax估计就是这样的好处吧,目前对ajax还不太...

Global site tag (gtag.js) - Google Analytics