1、添加struts-2.2.3 jar包
commons-fileupload-1.2.2.jar
commons-io-2.0.1.jar
commons-lang-2.5.jar
commons-logging-1.1.1.jar
freemarker-2.3.16.jar
javassist-3.7.ga.jar
ognl-3.0.1.jar
struts2-core-2.2.3.jar
struts2-json-plugin-2.2.3.jar
xwork-core-2.2.3.jar
2、在web.xml中添加struts2配置
<!-- struts2在web.xml中的配置 -->
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>*.action</url-pattern>
</filter-mapping>
3、struts.xml配置
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<constant name="struts.devMode" value="fasle" />
<constant name="struts.i18n.encoding" value="utf-8" />
<package name="default" extends="json-default" namespace="/test">
<action name="json" class="com.yjw.action.jsonAction" method="checkLogin">
<result name="success" type="json">/index.jsp</result>
</action>
</package>
</struts>
4、添加jQuery js包
WebRoot/scripts/jquery-1.6.1.js
5、src/com/yjw/action/jsonAction.java
package com.yjw.action;
import java.io.Serializable;
import com.opensymphony.xwork2.ActionSupport;
public class jsonAction extends ActionSupport implements Serializable {
private String userName;
private int isExist;
public int getIsExist() {
return isExist;
}
public void setIsExist(int isExist) {
this.isExist = isExist;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String checkLogin() {
if(this.userName.equals("admin")){
this.userName = "yjw";
this.isExist = 1;
}else{
this.setIsExist(0);
}
return SUCCESS;
}
}
6、WebRoot/index.jsp
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"+ request.getServerName() + ":" + request.getServerPort()+ path + "/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>用户名验证</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="Content-Type" content="text/html;charset=UTF-8">
<script type="text/javascript" src="scripts/jquery-1.6.1.js"></script>
<style type="text/css">
.userText {
/*控制文本框的边框是红色的实线*/
border: 1px solid red;
}
</style>
<script type="text/javascript">
$(document).ready(function() {
var userName = $("#userName");
//页面加载时清空text
userName.val("");
var userName_span = $("#userName_span");
var reg1 = /^[A-Za-z]{1}(\w){4,19}$/; //正则:5-20位字母、数字或下划线组合,首字符必须为字母
var userName_span1 = "<font style='color:red'>请输入用户名!</font>";
var userName_span2 = "<font style='color:red'>用户名已经存在!</font>";
var userName_span3 = "<font style='color:green'>用户名可用!</font>";
var userName_span4 = "<font style='color:red'>用户名格式不正确!</font>";
userName.change(function() {
//当userName文本框中没有数据时,设置文本框的border样式,做出提示
var userNameVal1 = $.trim(userName.val());
var userNameVal2 = userName.val();
if(userNameVal1 == ""){
userName.addClass("userText");
userName_span.html(userName_span1);
return false;
}else{
userName.removeClass("userText");
userName_span.html("");
if(!reg1.test(userNameVal2)){
userName.addClass("userText");
userName_span.html(userName_span4);
return false;
}else{
//到服务端判断用户名是否存在
$.post(
"test/json.action",
{"userName":userNameVal1},
function(result){
if(result.isExist == 1){
userName.removeClass("userText");
userName_span.html(userName_span2);
return false;
}else{
userName.removeClass("userText");
userName_span.html(userName_span3);
return true;
}
},
"json"
);
}
}
});
});
</script>
</head>
<body>
请输入用户名:
<input id="userName" type="text" />
<span id="userName_span"></span><br>
</body>
</html>
分享到:
相关推荐
在这个"struts2.1+json+jquery用户名校验"项目中,我们重点关注的是如何利用这些技术进行前端与后端的数据交互,特别是关于用户名的验证。 首先,Struts2.1是一个基于MVC(Model-View-Controller)设计模式的Java ...
Struts2.1、JSON和jQuery1.4是Web开发中的关键组件,它们结合使用可以构建出高效且用户友好的应用程序。在这个特定的场景中,我们看到的是一个利用这些技术进行用户名验证的实现。 首先,Struts2.1是Apache Struts...
struts2+json+jquery局部刷新实现注册验证,包括前台的用户名、密码、手机、身份证、邮箱(包含发邮件技术)、邮箱验证码、验证码的验证,用到的是json+jquery,后台则是用struts2+java类
【SSH2 + AJAX + jQuery + JSON 验证用户名是否存在】是一种常见的前端与后端交互技术,用于实现实时检查用户在注册或登录时输入的用户名是否已经被占用。在这个过程中,SSH2代表Secure Shell 2,通常用于服务器端的...
在SSH2(Apache Struts2)、Ajax、jQuery和JSON技术组合中,验证用户名是否存在的功能是一个典型的前后端交互示例。以下是这些技术如何协同工作的详细解释: **SSH2 (Struts2)**:SSH2是Struts2的简称,它是Apache的...
Struts2、jQuery、JSON和Ajax是Web开发中常见的技术栈,它们共同为构建动态、...通过Struts2处理业务逻辑和数据验证,jQuery和Ajax负责前后端的通信,JSON作为数据交换的载体,共同构建了一个高效、响应式的Web应用。
通过上述步骤,我们成功地实现了使用JSON、jQuery、Struts以及JavaScript技术来验证用户名是否存在的功能。这种实现方式不仅提高了用户体验,还极大地简化了开发过程。此外,由于采用了现代Web开发的最佳实践和技术...
在使用struts2+ajax时候,通常我们会返回json类型的数据,但是像上面的例子,我们只希望返回一个1和0有助于进行后续判断即可,没必要返回json类型,返回一个text字符串就可以了. regist.jsp(这里只提供[removed]部分): ...
总结来说,"struts2+easyUI+ajax+json用户登录验证"项目是Web开发中的典型应用场景,展示了如何利用这些技术实现前后端交互和动态页面更新,为初学者理解Web开发的基本流程和原理提供了很好的实例。
通过这种方式,我们可以利用Struts、jQuery和Ajax构建一个高效的、无刷新的用户名验证功能。这不仅提升了用户体验,还减轻了服务器的负担,因为只需要处理必要的数据交互,而不是完整的页面渲染。在实际项目中,这种...
总的来说,这个项目结合了Struts2的服务器端处理能力和jQuery的客户端交互能力,实现了高效且用户友好的用户名验证功能。这种无刷新验证技术在现代Web应用中非常常见,提高了用户体验,减少了无效的服务器请求,同时...
本文将围绕SSH2框架、Ajax、jQuery和JSON这些技术展开讨论,并结合给定的部分内容来深入分析如何利用这些技术进行用户名验证。 ### SSH2框架 SSH2框架是指Spring、Struts2和Hibernate三个开源框架的集成应用,它们...
在Struts2框架下,登录通常涉及一个Action类,处理用户提交的用户名和密码,然后通过Hibernate查询数据库验证用户身份。登录成功后,可能利用jQuery进行页面跳转或显示相应消息。 总之,这个项目是一个典型的Java ...
Struts2、Ajax 和 jQuery 是Web开发中常用的三大技术,它们在实现动态、无刷新的交互式用户体验方面发挥...通过这种方式,我们可以实现实时的用户名验证,提高用户体验,同时也学习了Struts2、Ajax和jQuery的核心概念。
Struts2是一个强大的MVC(模型-视图-控制器)框架,它在Java Web开发中被广泛使用。这个框架提供了一种结构化的方式来组织应用程序,使得业务逻辑、数据处理和用户界面之间的交互更加清晰。Ajax(异步JavaScript和...
- 使用jQuery的`$.ajax()`或`$.getJSON()`方法发送异步请求,参数包括URL(指向Struts2 Action)、数据(通常是用户名)、回调函数等。 2. **Struts2 Action配置**: - 创建一个Struts2 Action类,比如`...
**jQuery用户名验证例子** 在网页应用中,用户输入的验证是非常关键的一环,它能确保数据的正确性,提升用户体验,防止恶意攻击等。在这个"JQuer用户名验证例子"中,我们将探讨如何使用JavaScript库jQuery来实现...
标题 "S2SH+jQuery+JSON+Ajax注册--异步校验" 提及的技术栈主要包含四个关键部分:Struts2 (S2),Spring,Hibernate(SSH)这三大企业级开发框架,以及jQuery、JSON和Ajax这三者组成的前端交互技术。这篇博客文章...