- 浏览: 787552 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (981)
- javascript (102)
- java (212)
- JQuery (81)
- 幽默笑话 (2)
- 只言片语 (6)
- 开发小记 (283)
- Hibernate (17)
- DWR (4)
- SQL (10)
- spring-ibatis (8)
- linux (24)
- Struts1 (8)
- Struts2 (16)
- spring (42)
- Mybatis (16)
- css (18)
- servlet (8)
- jdbc (4)
- jsp (1)
- spring-jdbc (2)
- FreeMarker (2)
- MySQL (24)
- JQuery-Grid (7)
- jstl (5)
- 正则表达式 (1)
- 面试集锦 (86)
- unix (18)
- 开发工具 (23)
- ajax (5)
- webservice (4)
- log4j (3)
- oracle (15)
- extjs (14)
- 其他 (9)
- 优秀技术参考地址 (1)
- 性能 (3)
- 数据库 (25)
- 算法 (15)
- 设计模式 (10)
- Python (3)
- AIX (5)
- weblogic (1)
- shell (14)
- quartz (5)
- 图形文件FusionCharts (1)
- Websphere (4)
- 转载 (5)
- hadoop (1)
- highchart (24)
- perl (22)
- DB2 (7)
- JBoss (1)
- JQuery Easy UI (9)
- SpringMVC (5)
- ant (5)
- echart (9)
- log4J配置 (3)
- 多线程 (10)
- 系统架构 (7)
- nginx (3)
- loadrunner1 (1)
- 分布式 (1)
- Dubbo (1)
- Redis (2)
- JMS (4)
- 自动化测试 (3)
- Spring循环依赖的三种方式 (1)
- spring-boot (2)
- 高级测试 (9)
- github (2)
- sonar (1)
- docker (6)
- web前端性能优化 (1)
- spring-aop (6)
- rabbit (1)
- ELK (1)
- maven (1)
- minio (1)
最新评论
-
zengshaotao:
jstl1point0 写道很好啊,如果有带Session会话 ...
Nginx+Tomcat搭建高性能负载均衡集群 -
jstl1point0:
很好啊,如果有带Session会话的怎么搞呢
Nginx+Tomcat搭建高性能负载均衡集群
要Struts2支持JSON,需要加进一个叫jsonplugin的插件,配置文件里让Struts2的package继承一个叫“json-default”的package。配置完毕之后,服务端与客户端之间的数据传递就可以使用同一的json格式,显得比较人性化。
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<!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>登录页</title>
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript">
$(function(){
$("#submit").click(function(){
var loginName1 = $("input[name='loginName']").val(); //获取账号
var password1 = $("input[name='password']").val(); //获取密码
var jsonUser = {loginName:loginName1, password:password1}; //JSON对象
//jsonUser.toString()这种方法错误,javaScript中的toString是用于布尔型变的,
var strUser = JSON.stringify(jsonUser); //将JSON对象转变成JSON格式的字符串,
$.post("user/login.action", {json: strUser}, callback, "json");
});
function callback(json){
alert(json.msg); //显示反馈信息
if(json.success == 1){ //如果返回"登录成功"
window.location.href = "admin/index.action"; //跳转到后台主页
}
}
});
</script>
</head>
<body>
<form action="user/login.action" method="post">
账号<input type="text" name="loginName"/><br/>
密码<input type="password" name="password"><br/>
<input type="button" id="submit" value="登录"/>
</form>
</body>
</html>
var jsonUser = {loginName:loginName1, password:password1}; (1)
var strUser = JSON.stringify(jsonUser); (2)
第(1)句是组装JSON对象,关于JSON对象的格式,建议大家到http://www.json.org/网站上学习一下,要验证你写的JSON对象是否正确,可在http://json.bloople.net/网站上验证。上面写的JSON对象其实是非常简单的一种,jsonUser对象里有两个属性,分别是loginName和password,而表示这两个属性,用key-value的形式,loginName1和password1分别是接收表单中的账号、密码的值。
第(2)句,相当重要,通过JavaScript内置对象JSON的stringify方法,将JSON对象转换成字符串。因为,我们传送给服务器端的要是JSON格式的字符串。
$.post("login!valid.action", {json: strUser}, callback, "json");
这一句,Jquery用POST方法向服务器端发送数据,login!valid.action是我们要发送到的目的URI,也即直达loginAction的valid方法。而{…}是我们要发送的数据(data),{json:strUser},其实也是一个JSON对象,Key:value的形式。在Action那里接收时,要接收“json”这个变量,这个变量的值就是我们发送的strUser字符串。
回调函数(callback)是指服务器端成功发回时,在JS端执行的函数。最后一个参数“json”是返回数据类型的一种,另外,还有”text”、“xml”等。
import java.io.IOException;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts2.ServletActionContext;
import org.json.JSONObject;
import cn.simple.pojo.User;
import com.opensymphony.xwork2.ActionSupport;
//@Results({ 注解的配制方式
// @Result(name="success", location="admin/index.action", type="redirect"),
// @Result(name="input", location="loginform.jsp", type="dispatcher")
//})
public class LoginAction extends ActionSupport {
private String json; //JSON字符串,JS与Action传递数据的载体
public String getJson() {
return json;
}
public void setJson(String json) {
this.json = json;
}
/**
* 登录验证
* 这里是void类型,不会发生调整,直接像servlet那样输出html代码,最终由客户端解析
* 调用原生Servlet的response来向浏览器端发送数据
* @throws Exception
*/
public void valid() throws Exception {
JSONObject jsonObj = new JSONObject(json); //将JSON格式的字符串构造成JSON对象
String loginName = jsonObj.getString("loginName"); //获取JSON对象中的loginName属性的值
String password = jsonObj.getString("password"); //获取JSON对象中的password属性的值
if(loginName=="admin"){
//此时的JSON对象,有两个属性success和msg,其中suc表示是否登录成功的状态
json = "{success:0, msg:'用户名不存在'}"; //构造JSON格式的字符串
} else if( ! password.equals("123")){
json = "{success:0, msg:'密码不正确!'}";
} else {
json = "{success:1, msg:'登录成功!'}";
}
sendMsg(json); //发送JSON格式的字符串回JS端
}
/** *//**
* 向客户端的JS发送字符串
* @param content 发送的内容
* @throws IOException
*/
public void sendMsg(String content) throws IOException{
HttpServletResponse response = ServletActionContext.getResponse();
response.setCharacterEncoding("UTF-8");
response.getWriter().write(content);
}
}
发表评论
-
struts2的result属性
2014-06-08 22:59 890在action的指定方法执行 ... -
struts2生成登陆验证码
2014-06-08 22:55 1735原文地址:http://www.cnblogs.com/do ... -
前台接收后台返回流
2014-06-08 22:49 2340很多时候,我们需要前台接收后台返回的流,比如图片。 当然, ... -
json格式依赖包
2014-06-07 22:26 745json是比较简单的数据交换格式,一般的,我们都会用到类似如 ... -
Struts2获取request三种方法
2014-06-04 00:23 1116Struts2获取request三种方法 strut ... -
Struts2标签
2013-08-28 22:33 585Struts2常用标签总结 一 介绍 1.Struts2的作用 ... -
Struts2标签
2013-08-28 22:20 606要在jsp中使用Struts2的标志,先要指明标志的引入。通过 ... -
Struts2标签
2013-08-28 22:16 584要使用Struts2的标签,只 ... -
增加提示
2013-08-13 22:12 755首先,我们先配置一个HelloWorld程序 环境的搭建和前面 ... -
Struts2.1.6启动报错
2013-07-23 21:57 847准备好好复习web开发技术,于是自己开发搭建环境,可是刚开 ... -
Struts2笔记
2013-07-19 21:39 849jre不包含调试,j ... -
Struts2特殊数据类型转换
2013-04-23 20:22 1035Struts2中会默认可以直接转化已有的数据类型,如int,S ... -
struts2详解
2013-03-27 12:18 976解决在断网环境下,配置文件无提示的问题我们可以看到Struts ... -
Struts2学习笔记
2012-11-17 10:50 8841.在实际操作中学习,效果更佳。struts1出现的比webw ... -
struts2支持json
2012-11-17 10:18 1047strut2要支持json的插件,必须继承json-defau ...
相关推荐
Struts2、Spring、Hibernate、jQuery 和 JSON 是五个在IT行业中极为重要的技术组件,它们各自在Web应用开发中扮演着不同的角色。这篇文章将详细介绍这些技术的整合使用以及它们的功能。 首先,Struts2 是一个基于 ...
Struts2、jQuery、JSON和Ajax是Web开发中常见的技术栈,它们共同为构建动态、...通过Struts2处理业务逻辑和数据验证,jQuery和Ajax负责前后端的通信,JSON作为数据交换的载体,共同构建了一个高效、响应式的Web应用。
通过Struts2处理业务逻辑和验证,JSON作为数据交换格式,JQuery在客户端进行交互和验证,可以构建出响应快速、用户体验良好的Web应用。理解并熟练掌握这三个技术,对于提升Web开发能力非常有帮助。
Struts2提供了强大的拦截器(Interceptor)机制,可以实现如权限验证、日志记录等功能。同时,它支持多种结果类型,包括JSP、FreeMarker、Velocity等模板语言,以及JSON和XML等数据格式。 Ajax,即Asynchronous ...
在这个"struts2+jquery+json"的小例子中,我们可能会看到以下几个关键知识点: 1. **Struts2框架**: - **Action和Result**:Struts2的核心组件,Action负责业务逻辑处理,Result负责控制页面跳转。 - **...
8. 实例演示:使用Struts2+Jquery+Ajax实现动态加载数据或表单验证 "struts2 jar"文件包含了Struts2框架的核心库,可能包括struts2-core、struts2-convention、struts2-json-plugin等依赖,这些是开发Struts2应用必...
struts2+json+jquery局部刷新实现注册验证,包括前台的用户名、密码、手机、身份证、邮箱(包含发邮件技术)、邮箱验证码、验证码的验证,用到的是json+jquery,后台则是用struts2+java类
根据提供的文件信息,本文将详细解析“ssh2+ajax+jquery+json 登陆验证”的实现原理及技术要点。本文将围绕SSH2框架、Ajax、jQuery和JSON这些技术展开讨论,并结合给定的部分内容来深入分析如何利用这些技术进行...
2. **解析与渲染**:jQuery的`$.parseJSON()`(现在已弃用,推荐使用`$.getJSON()`或`$.ajax()`的dataType设置为'json')方法用于解析JSON字符串为JavaScript对象,然后可以在前端动态更新DOM。 **Ajax级联操作** ...
在这个实例中,Flexigrid与Struts2、JSON和jQuery进行了集成,构建了一个功能丰富的Web应用。 Struts2是Apache软件基金会的一个开源MVC框架,用于构建Java Web应用程序。它提供了强大的动作调度、拦截器机制以及...
在tests2si目录下,可能包含的是测试相关的文件,这些文件可能包括单元测试、集成测试,用于验证Struts2、Spring、iBatis以及jQuery的整合是否正常工作。测试文件通常会模拟用户操作,调用后端接口,检查返回的数据...
总结来说,"struts2+easyUI+ajax+json用户登录验证"项目是Web开发中的典型应用场景,展示了如何利用这些技术实现前后端交互和动态页面更新,为初学者理解Web开发的基本流程和原理提供了很好的实例。
总结起来,这个项目结合了Struts2的Action和JSON支持,利用jQuery的Ajax功能,实现了客户端与服务器之间的数据交互,达到了动态更新页面的目的。对于Web开发者来说,了解这种技术组合有助于提高开发效率和用户体验。
在本教程中,我们将探讨如何结合使用Struts2和jQuery来实现一个使用Ajax发送请求并接收JSON类型数据的功能。 首先,我们需要在JSP页面中使用jQuery发起Ajax请求。jQuery的`$.ajax()`函数是实现这一功能的核心。例如...
Struts2.1、JSON和jQuery是Web开发中常见的技术栈,它们在构建动态、交互式的用户界面方面发挥着重要作用。在这个"struts2.1+json+jquery用户名校验"项目中,我们重点关注的是如何利用这些技术进行前端与后端的数据...
综上所述,这个例子展示了如何使用 Struts2 处理后端逻辑,通过 JSON 将数据传递给前端,然后利用 jQuery 和 AJAX 实现无刷新的交互体验。这种组合在现代 web 开发中非常常见,能够有效提升应用的性能和用户体验。
Struts2、jQuery、Ajax和Servlet是Web开发中常见的技术栈,它们共同构建了动态、交互式的用户界面。本文将详细解析这些技术及其在给定示例中的应用。 首先,Struts2是一个基于MVC(Model-View-Controller)设计模式...
总的来说,这个压缩包提供了一个全面的学习资源,帮助开发者深入理解并熟练运用JSON数据格式、Struts2框架和jQuery库。通过这些实例,你可以提高Web开发技能,尤其是处理动态交互和数据交换的能力。在实践中不断探索...
- 在Struts2框架中,配置一个名为`check`的Action,如`struts.xml`所示,这个Action负责处理前端的请求。 - Action类(如`checkBean`)应有一个`check`方法,该方法接收用户名参数,并查询数据库验证用户名是否已...