ajax_servlet数据交互实例(一)

java代码

package action;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
* Servlet implementation class getAjaxServlet
*/
public class getAjaxServlet extends HttpServlet {
private static final long serialVersionUID = 1L;

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

response.setContentType("text/html");
response.setCharacterEncoding("utf-8");
String name=request.getParameter("name");
String age=request.getParameter("age");
System.out.println("name:"+name+","+"age:"+age);
PrintWriter out=response.getWriter();
out.println("成功从Servlet拿到数据");
out.flush();
out.close();

}

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doGet(request, response);
}

}

jsp页面:

<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Insert title here</title>
</head>
<body>
<div style="text-align: center;">
<br/>
<br/>
<div>
<a href="javascript:alert(getAjax());">获取ajax对象</a><br/>
<input type="button" value="ajax获取数据get" onclick="loadNameGet();"/>
<input type="button" value="ajax获取数据post" onclick="loadNamePost();"/>
<input type="text" value="" id="name" name="name"></input>
<a id="ajax"></a>
</div>
</div>
</body>
<script type="text/javascript">
function getAjax() {//封装获取创建ajax对象的方法
var xhr = null;
if (window.XMLHttpRequest) {
// 非ie浏览器
xhr = new XMLHttpRequest();
} else {
// ie浏览器
xhr = new ActiveXObject(‘MicroSoft.XMLHttp‘);
}
return xhr;
}
function loadNameGet(){

var xhr=getAjax();
alert("readyState"+xhr.readyState+";"+"status"+xhr.status);
xhr.onreadystatechange = function(){
alert("readyState"+xhr.readyState+";"+"status"+xhr.status);
//处理服务器返回数据
if(xhr.readyState == 4 &&
xhr.status == 200){
var txt = xhr.responseText;
alert(txt);
document.getElementById("name").value=txt;
}
};
xhr.open("get",
"ajax.do?name=jack&age=20",//请求地址(web中配置地址),get可以拼接参数
true);//true异步
xhr.send(null);
}
function loadNamePost(){
var xhr=getAjax();
xhr.open("post","ajax.do",true);
xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xhr.onreadystatechange = function(){
//处理服务器返回数据
if(xhr.readyState == 4 &&
xhr.status == 200){
var txt = xhr.responseText;
alert(txt);
document.getElementById("ajax").innerHTML=txt;
}
};
xhr.send("name=jack&age=10");//post请求参数
}
</script>
</html>

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
<display-name>ajax02</display-name>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>ajax.jsp</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>AjaxServlet</servlet-name>
<servlet-class>action.getAjaxServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>AjaxServlet</servlet-name>
<url-pattern>/ajax.do</url-pattern>
</servlet-mapping>
</web-app>

时间: 2025-01-09 19:25:55

ajax_servlet数据交互实例(一)的相关文章

springmvc与前端数据交互实例

一.从页面接收参数 Spring MVC接收请求提交的参数值的几种方法: 使用HttpServletRequest获取. @RequestMapping("/login.do") public String login(HttpServletRequest request){ String name = request.getParameter("name") String pass = request.getParameter("pass")

JSONP -- 跨域数据交互协议

一.概念 ①传统Ajax:交互的数据格式——自定义字符串或XML描述: 跨域——通过服务器端代理解决. ②如今最优方案:使用JSON格式来传输数据,使用JSONP来跨域. ③JSON:一种数据交换格式.基于纯文本.被原生JS支持.    格式:两种数据类型描述符:大括号{ }.方括号[ ].分隔符逗号.映射符冒号.定义符双引好. ④JSONP:一种跨域数据交互协议,非官方. 1.Web页面调用js文件,可跨域.扩展:但凡有src属性的标签都具有跨域能力. 2.跨域服务器 动态生成数据 并存入js

Php与mssql数据交互

Php在5.3版本之后与mssql交互发生变化,原先的mssql函数系统不再支持,改用微软提供的sqlsrv函数,使用sqlsrv函数需要用到微软提供的动态函数库SQL Server Driver for PHP. 从微软官方网站下载函数库,然后在php.ini文件中加载函数库,即可使用此函数库的api 目前官方提供的函数库版本只支持php5.4及以下版本,暂不支持php5.5,若需要php5.5版本可使用非官方编译版本. 以下是php使用sqlsrv函数与mssql进行数据交互的使用实例: <

Python脚本调用C#代码数据交互示例(hello world)

原地址: http://www.djangochina.cn/forum.php?mod=viewthread&tid=247 随着项目的逐渐收尾, 对IronPython脚本也越来越熟悉,这里为IronPython脚本感兴趣但不入门的朋友写几篇使用心得,这是第一个:最简单的hello world程序.        首先,我们必须有一个IronPython脚本引擎库(IronPython.dll),我用的版本是V1.0,你可以在网上直接下到相关源码,编译后即生成IronPython.dll.1

【Scala】使用Option、Either和Try处理数据交互

Scala数据交互 Scala使用一种函数式的方式来处理数据交互,包括入参及返回值. Option: 解决null(空指针)问题 Either: 解决返回值不确定(返回两个值的其中一个)问题 Try: 解决函数可能会抛出异常问题 Option/Some/None的使用 Option实际上有3个类型:Option.Some和None,Some和None都是Option的子类型,Some和None.Option表示可选的值,它的返回类型是scala.Some或scala.None.Some代表返回有

linux 共享内存shm_open实现进程间大数据交互

linux 共享内存shm_open实现进程间大数据交互 read.c #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> #include <stdio.h> #include <sys/mman.h> #include <string.h> #include <errno.h> #include <unistd.h> /* int

C# 移动端与PC端的数据交互

小记:针对目前功能越来越强大的智能手机来说,在PC端支持对手机中的用户数据作同步.备份以及恢复等保护措施的应用已经急需完善.不仅要对数据作保护,而且用户更希望自己的手机跟PC能够一体化,以及和远程服务器的一体化.用户希望在手机端的操作能够转移到PC端,对于PC端大屏幕的电脑来说,完成同样的操作可以大量的节省用户的时间.对于功能强大的手机来说,有近1/2的应用可以在PC端同步.所以对PC端应用的规划要以系统的角度来对待.同时要保证手机端和PC端的主流交互模式应保持一致.个人观点:数据的一体化和管理

Vue2.0子同级组件之间数据交互

接着我们进入Demo,首先我们可以删除掉模板项目中src/components/Hello.vue,然后在App.vue中删除对于Hello子组件的注册和使用还有一些其他无关紧要的东西,此时的App.vue应为这样 一 .我们先来创建中央事件总线,在src/assets/下创建一个eventBus.js,内容如下(eventBus中我们只创建了一个新的Vue实例,以后它就承担起了组件之间通信的桥梁了,也就是中央事件总线.) 二 . 创建一个firstChild组件,引入eventBus这个事件总

MUI框架-09-MUI 与后台数据交互

MUI框架-09-MUI 与后台数据交互 本篇介绍使用 art-template 和原生 MUI 的数据交互 mui.ajax 来实现 我们大家都知道,想要数据交互就要有数据,每次当我们发送请求,我们要清楚,怎么发,发给谁,返回的数据是什么内容,格式 先放一张图,给大家学习的动力: 然后今天呢,介绍的是调用 API,API 是什么呢,就是一个接口,比如知乎日报的API ,我们可以通过这个 API 获取到知乎上最新的消息,并且是 json 格式,我们就不用再去找数据了,其他类型 API 还有 百度