WEB开发网
开发学院软件开发Java Struts 2.1.6 精简实例系列教程(6):重写用户登录... 阅读

Struts 2.1.6 精简实例系列教程(6):重写用户登录模块(整合Jquery+JSON)

 2009-09-23 00:00:00 来源:WEB开发网   
核心提示:网上有许多关于Struts2与JSON的文章,Google加百度,Struts 2.1.6 精简实例系列教程(6):重写用户登录模块(整合Jquery+JSON),查阅了许多,有各种各样的做法,我们先来重写登录模块中的loginform.jsp文件,原来的代码,其中,大部分的文章都说要加进一个叫 jsonplugin的

网上有许多关于Struts2与JSON的文章,Google加百度,查阅了许多,有各种各样的做法。其中,大部分的文章都说要加进一个叫 jsonplugin的插件,在Google Code可以下载。以前我有做过测试,也是用它,但着实麻烦,要让Struts2的package继承一个叫“json-default”的父 package。网上的文章,大部分都是说从Struts的Action如何把JSON数据发送回浏览器端(Ajax),而我想要一个跟它们相反的过程(即从Ajax端发送数据到服务器端的Action并解析出来),却找不到合适的答案。摸索了三个晚上,未果。今天终于让我找到了思路。

其中,不管是从浏览器端(JS,Ajax,Jquery等)发送给服务器端,还是从服务器端(Struts的Action,Servlet等)发送回客户端,都要识别一点:发送的都应该是JSON格式的字符串。

下面,我们先来重写登录模块中的loginform.jsp文件,原来的代码,请看Struts 2.1.6 精简实例系列教程(2):用户登录模块的实现,现在修改的代码如下:

<%@ 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-1.3.2.min.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("login!valid.action", {json: strUser}, callback, "json");
        });
        function callback(json){
            alert(json.msg);    //显示反馈信息
            if(json.suc == 1){    //如果返回"登录成功"
                window.location.href = "admin/index.action";    //跳转到后台主页
            }
        }
        
    });
</script>
</head>
<body>
<form action="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>

1 2 3 4 5  下一页

Tags:Struts 精简 实例

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接