`
liss
  • 浏览: 827119 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

一个ajax的经典测试用例 (jsp)

    博客分类:
  • Ajax
阅读更多

写index.jsp文件
<%@ page contentType="text/html;charset=gb2312"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>

<title>My JSP 'index.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="description" content="This is my page">
<link rel="stylesheet" type="text/css" href="styles.css">
</head>

<body>
<script type="text/javascript">
var req;

function validate() {
var idField = document.getElementById("userid");
var url = "servlet/ValidateServlet?id=" + escape(idField.value);
if (window.XMLHttpRequest) {
alert("0");
req = new XMLHttpRequest();
}else if (window.ActiveXObject) {
alert("1");
req = new ActiveXObject("Microsoft.XMLHTTP");
}
if(req){
req.open("GET", url, true);
req.onreadystatechange = callback;
req.send(null);
}
}
function callback() {
if (req.readyState == 4) {
if (req.status == 200) {
parseMessage();
// update the HTML DOM based on whether or not message is valid
}else{
alert ("Not able to retrieve description" + req.statusText);
}
}
}
function parseMessage() {
var message = req.responseXML.getElementsByTagName("message")[0];
var name = req.responseXML.getElementsByTagName("name")[0];
setMessage(message.firstChild.data,name.firstChild.data);
}
function setMessage(message,name) {
var userMessageElement = document.getElementById("userIdMessage");
userMessageElement.innerHTML = "<font color=\"red\">" + message + " you "+name+"</font>";
}
</script>
<div id="userIdMessage"></div>
<input type="text"
size="20"
id="userid"
name="id"
onkeyup="validate();">
</body>
</html>
[2] 写servlet/ValidateServlet.java类
/*
* 创建日期 2005-8-3
*
* TODO 要更改此生成的文件的模板,请转至
* 窗口 - 首选项 - Java - 代码样式 - 代码模板
*/
package com;//com包需要自己创建.

import java.io.IOException;
import java.io.PrintWriter;
import java.util.HashMap;

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

/**
* @author Administrator
*
* TODO 要更改此生成的类型注释的模板,请转至
* 窗口 - 首选项 - Java - 代码样式 - 代码模板
*/
public class ValidateServlet extends HttpServlet {

/**
* Constructor of the object.
*/

private ServletContext context;
private HashMap users = new HashMap();

public ValidateServlet() {
super();
}

/**
* Destruction of the servlet. <br>
*/
public void destroy() {
super.destroy(); // Just puts "destroy" string in log
// Put your code here
}

/**
* The doGet method of the servlet. <br>
*
* This method is called when a form has its tag value method equals to get.
*
* @param request the request send by the client to the server
* @param response the response send by the server to the client
* @throws ServletException if an error occurred
* @throws IOException if an error occurred
*/
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/xml");
response.setHeader("Cache-Control", "no-cache");

String targetId = request.getParameter("id");
System.out.println(targetId.trim());

if ((targetId != null) && users.containsKey(targetId.trim())) {

response.getWriter().write("<info><message>welcome</message><name>sdl</name></info>");
} else {

response.getWriter().write("<info><message>kill</message><name>bush</name></info>");
System.out.print("invalid");
}


}
/**
* Initialization of the servlet. <br>
*
* @throws ServletException if an error occure
*/
public void init(ServletConfig config) throws ServletException {
this.context = config.getServletContext();
users.put("greg","account data");
users.put("duke","account data");

}

}
[3]写web.xml文件<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<servlet>
<description>This is the description of my J2EE component</description>
<display-name>This is the display name of my J2EE component</display-name>
<servlet-name>ValidateServlet</servlet-name>
<servlet-class>com.ValidateServlet</servlet-class>
</servlet>

<servlet-mapping>
<servlet-name>ValidateServlet</servlet-name>
<url-pattern>/servlet/ValidateServlet</url-pattern>
</servlet-mapping>

</web-app>
[4]说明:
你可以在IE或FireFox里测试,在文本输入框里输入,当按键抬起,会在层中显示”kill you bush”。其中index.htm中的styles.css只是美化页面,没有列出来源代码。如果在servlet向客户端输出中文,需要编码转换。
Trackback:
http://tb.blog.csdn.net/TrackBack.aspx?PostId=453440

分享到:
评论

相关推荐

    软件测试中一个ajax的经典测试用例

    ajax经典软件测试中一个ajax的经典测试用例和大家分享一个ajax的经典测试用例,希望能帮助到大家[1]写index.jsp文件%@pagecontentType="text/html;charset=gb2312"%!DOCTYPEHTMLPUBLIC"-//W3C//DTD...

    软件测试中的一个ajax的经典测试用例

    ajax经典软件测试中的一个ajax的经典测试用例[1]写index.jsp文件%@pagecontentType="text/html;charset=gb2312"%!DOCTYPEHTMLPUBLIC"-//W3C//DTD...

    JAVA实战项目源码-计算机毕业设计java专业-(jsp+servlet+javabean-信息办公系统-学校教务管理系统

    运用JUnit工具进行编写测试用例,进行单元测试和集成测试。在界面上运用Ajax技术来实现XML文件存放数据,并以人性化的控件完成复杂的业务流程。考虑到排课任务的繁重,设计了自动排课算法,可以完成特定需求的排课。...

    jsp,html,ajax .javascript 平时积累

    jsp,html,ajax .javascript 很多有用的素材和用例 对初学者有帮组

    信息办公学校教务管理系统(jsp+servlet+javabean).zip

    [摘要] 本系统运用J2EE中的JSP MODEL2的MVC (MODEL+VIEW+CONTROL)模型,运用Eclipse3.1.8 + Tomcat5.0 + JDK5.0 + MSSQL 的组合开发平台开发测试。B/S架构,在系统设计、实施上运用软件工程的思想,完全依照瀑布...

    信息办公学校教务管理系统(jsp+servlet+javabean)-school

    本系统运用J2EE中的JSP MODEL2的MVC (MODEL+VIEW+CONTROL)模型,运用Eclipse3.1.8 + Tomcat5.0 + JDK5.0 + MSSQL 的组合开发平台开发测试。B/S架构,在系统设计、实施上运用软件工程的思想,完全依照瀑布模型来...

    学校教务管理系统(jsp+servlet+javabean).zip

    在电子化教学中将网络技术与传统教学相结合,为学院提供远程教育技术解决方案,将高质量的教育服务延伸到社会的每一个角落。本系统正是为了实现教学管理电子化这一需求而开发。系统开发中运用到了Eclip

    基于Java+Mssql的学校教务管理系统源码

    运用JUnit工具进行编写测试用例,进行单元测试和集成测试。在界面上运用Ajax技术来实现XML文件存放数据,并以人性化的控件完成复杂的业务流程。考虑到排课任务的繁重,设计了自动排课算法,可以完成特定需求的排课。...

    毕业设计论文-基于struts2的银行储蓄系统的设计与实现

    1 系统简介 1 1.1 系统概述 1 1.2 相关概念及技术介绍 1 1.2.1 JSP简介 1 1.2.2 Struts2 简介 2 1.2.3 Hibernate 简介 3 ...5.2 软件测试用例 45 5.3 软件测试结论 45 6 结论 46 参考文献 47 致 谢 48

    JAVA 学生管理系统-版本1(servlet3.0+bootstrap3.3.7+jsp)

    使用到的容器及框架有Servlet3.0+Boostrap3.3.7+Jquery2.2+Ajax。只有基础用例CRUD。

    毕业设计(教务管理系统)

    本系统运用J2EE中的JSP MODEL2的MVC (MODEL+VIEW+CONTROL)模型,运用Eclipse3.1.8 + Tomcat5.0 + JDK5.0 + MSSQL 的组合开发平台开发测试。B/S架构,在系统设计、实施上运用软件工程的思想,完全依照瀑布模型来...

    教务管理系统java源码MVC附PPT

    本系统运用J2EE中的JSP MODEL2的MVC (MODEL+VIEW+CONTROL)模型,运用Eclipse + Tomcat + JDK+ MSQL 的组合开发平台开发测试。B/S架构,在系统设计、实施上运用软件工程的思想,完全依照瀑布模型来编写设计文档。...

    Jsp AjaxTags组件的使用

    其中的一些用例包括: * 基于第一个下拉框中所做的选择来修改第二个下拉框的内容 * 基于单击或鼠标悬浮事件从服务器发起对额外信息的请求,而且无需刷新用户所查看的页面 * 基于用户输入的数据在服务器...

    dangdang和smartstruts2.rar

    8、写一个struts.xml 包含use.xml 1)跳转到 /user/register_form.jsp &lt;result name="form"&gt;/user/register_form.jsp 完善action。 &lt;param name="inputName"&gt;image ...

    网上商城需求报告

    8、写一个struts.xml 包含use.xml 1)跳转到 /user/register_form.jsp &lt;result name="form"&gt;/user/register_form.jsp 完善action。 &lt;param name="inputName"&gt;image ...

    软件专业调研报告(2).docx

    要想了解企业对人才的要求,最好的方式我认为就是看招聘启示,一个企业的硬性需求都写在招聘启示中了。所以我首先上网查询本行业相关的大型企业的招聘要求,了解行业所需的前沿知识。 2.由于计算机学科的特殊性,...

    Java项目:校园二手市场系统(java+SSM+mysql+maven+tomcat)

    一、项目简述( +文档) 功能:本系统分用户前台和管理员后台。 本系统用例模型有三种,分别是游客、...项目技术: JSP +Spring + SpringMVC + MyBatis + html+ css + JavaScript + JQuery + Ajax + layui+ maven等等。

    Java项目:校园二手市场系统(java+SSM+mysql+maven+tomcat+LW)

    一、项目简述( +IW文档) 功能:本系统分用户前台和管理员后台。 本系统用例模型有三种,分别是游客...项目技术: JSP +Spring + SpringMVC + MyBatis + html+ css + JavaScript + JQuery + Ajax + layui+ maven等等。

Global site tag (gtag.js) - Google Analytics