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

struts2对ajax的内置支持

阅读更多

struts2本身对ajax技术提供了强有力的支持,用户只需一些简单的配置,就完成了异步交互。代码如下:

首先,任意的一个jsp页面,用于提交表单:

 

<s:form action="login" method="post">
	<div id="show"></div>
	<s:textfield name="name" label="用户名" id="name"></s:textfield>
	<s:textfield name="password" label="密码" id="password"></s:textfield>
	<input id="loginbt" type="button" value="提交"/>
</s:form>


接下来在项目web-root下新建js文件夹,加入:jquery.js文件,再新建ajax.js文件。代码如下:

 

$(document).ready(function()
		{
			
			$("#password").blur(function()
					{
					var name=$("#name").val();
					var password=$("#password").val();
						$.post("login.action", { name: name, password: password },
						   function(data){
							$("#show").html(data);
					});
				
				
					});
			
	
		});

Action类,代码:

 

package com.guang.action;

import java.io.ByteArrayInputStream;
import java.io.InputStream;

import com.opensymphony.xwork2.ActionSupport;

public class LoginAction extends ActionSupport{

	private String name;
	
	private String password;
	
	private InputStream inputStream;
	
	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getPassword() {
		return password;
	}

	public void setPassword(String password) {
		this.password = password;
	}

	public InputStream getResult(){
		
		return inputStream;
		
	}
	
	@Override
	public String execute() throws Exception {

		System.out.println(name+password);
		inputStream =name.equals("guangge") && password.equals("123456")
			? new ByteArrayInputStream("恭喜你登录成功!".getBytes("UTF-8"))
				: new ByteArrayInputStream("对不起用户名和密码不匹配!".getBytes("UTF-8"));
	
			return SUCCESS;
	
	
	}
	
}


上面的代码,与其他的action类不一样的,是

private InputStream inputStream;

 

public InputStream getResult(){

return inputStream;

}
其他的都差不多。

配置文件:struts.xml文件:

 

<package name="login" extends="struts-default">   
     
     	<action name="login" class="com.guang.action.LoginAction">
     		<result name="success" type="stream">
     			<param name="contentType">text/html</param>
     			<param name="inputName">result</param>
     		</result>
			<result name="login">/index.jsp</result>
     	</action>
    </package>


现在,一起都OK了/希望对你有帮助。

分享到:
评论

相关推荐

    struts2实现ajax

    以下是对Struts2实现Ajax的详细解释: 1. **Ajax基础**: Ajax的核心是通过JavaScript异步发送HTTP请求到服务器,获取数据,然后在客户端更新DOM(Document Object Model)以实现局部刷新。这使得用户界面更加响应...

    struts2_ajax.rar_struts2 ajax

    1. **使用Struts2内置的AJAX插件**:Struts2提供了一个名为`struts2-jquery-plugin`或`struts2-convention-plugin`的插件,它包含了一系列预定义的JQuery动作和标签,可以直接在视图层使用。例如,`sj:a`标签可以...

    Jquery struts2 json 实现ajax

    Struts2提供了对JSON的支持,可以通过配置Action类或struts.xml文件来使Action返回JSON响应。 实现jQuery和Struts2结合处理JSON的步骤大致如下: 1. **前端准备**:在HTML页面中引入jQuery库,并编写Ajax请求代码...

    json2+jsonplugin struts2整合ajax时,使用json时需要的jar包

    在Struts2框架中整合Ajax以实现异步数据交互,JSON(JavaScript Object Notation)扮演了关键角色。JSON是一种轻量级的数据交换格式,它允许Web应用与服务器之间高效地传输数据,而无需进行繁琐的HTTP请求。在这个...

    AJAX和struts2传递JSON数组

    在本场景中,我们将探讨如何使用AJAX来传递JSON数组,并在Struts2的Action中接收和处理这些数据。 首先,JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它易于人阅读和编写,同时也易于机器解析...

    struts2-ajax

    Struts2提供了内置的Ajax支持,主要是通过JQuery插件来实现的。这个插件允许我们在不刷新整个页面的情况下更新部分网页内容,从而实现页面的局部刷新。在Struts2的配置文件(struts.xml)中,我们需要导入相关的Ajax...

    struts2与Ajax.pdf

    为了满足这一需求,Struts2框架提供了强大的AJAX支持,使得开发人员能够轻松地在应用程序中集成AJAX功能。Struts2通过其内置的AJAX标签库,使得添加交互性和灵活性如同使用标准的Struts标签一样简单。这不仅提高了...

    struts2 json Ajax 整合所需全部jar包.zip

    在Struts2中,可以使用Struts2内置的Ajax插件或者jQuery等库来简化Ajax请求的编写。例如,使用jQuery的`$.ajax()`函数,可以轻松地发起一个HTTP请求,获取JSON数据,并在回调函数中进行处理。 "struts2 json Ajax ...

    基于Struts 2 Ajax实现的Login应用

    Struts 2具有诸多优点,如易于集成其他技术(如Spring、Hibernate等)、内置拦截器机制、强大的表单处理能力等。 #### 二、Struts 2与Ajax结合的意义 在Web 2.0时代,用户对于Web应用的体验有了更高的要求,传统的...

    Struts 2整合Ajax开发

    为了实现Ajax请求,我们可以使用Struts 2的内置标签库,特别是`sj:a`(.struts2-jquery-tags)和`s:a`(.struts2-core-tags)这两个标签。`sj:a`是专门为Ajax请求设计的,而`s:a`可以通过设置属性来触发Ajax行为。 ...

    struts2 ajax json

    在Struts2框架中,我们可以利用内置的插件或自定义拦截器来实现Ajax请求。 接下来是`JSON`(JavaScript Object Notation),它是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。JSON能...

    Struts on Ajax-Retrofitting Struts with Ajax Taglibs

    S2JS允许开发者更方便地在Struts 2中使用Ajax技术,它提供了一种更为简洁的方式来处理Ajax请求,并且内置了对JSON的支持,使得数据传输更为高效。 #### 结论 通过使用Ajax Taglibs,我们可以在Struts应用程序中...

    struts2--ajax.docx

    2. Struts2对AJAX的支持 Struts2提供了内置的JSON支持,允许Action的响应以JSON格式返回。下面是一个使用jQuery进行AJAX请求的示例: ```javascript function getClick() { var params = {name : $("#xm").val(),...

    struts2-dojo-plugin-2.2.3.1.zip_key_可用struts的ajax支持插件

    描述中提到的"stuts不支持ajax是因为缺少此插件",这表明Struts2本身并没有内置的AJAX处理机制,需要通过安装额外的插件来实现。"换个高级版本好像会失败"可能是指升级到更新版本的Struts2时,某些旧版插件可能不再...

    stuts2+ajax

    5. **Struts2插件支持**:Struts2提供了对Ajax的插件支持,如struts2-jquery-plugin和struts2-json-plugin。这些插件简化了Ajax集成,提供了预定义的标签和功能,如`&lt;sj:a&gt;`标签用于创建Ajax链接,`&lt;sj:submit&gt;`用于...

    JQuery,JSON,Struts2实现Ajax异步请求

    Struts2提供了一个内置的JSON插件,使得我们可以方便地将Java对象转换为JSON格式并返回给客户端。在Struts2的配置文件`struts.xml`中,我们有以下配置: ```xml &lt;param name="root"&gt;obj&lt;/param&gt; // 设定json...

    Struts2 Ajax

    - **JsonResult**: Struts2提供了一个内置的结果类型`json`,可以直接将Action的返回对象转换为JSON格式,便于Ajax请求处理。 - **JQuery Plugin**: Struts2提供了JQuery插件,简化了与Ajax的交互,包括`struts2-...

    Struts 2中启用json ajax支持

    Struts 2框架提供了内置的支持来处理JSON和AJAX请求,使得开发者可以轻松地将这些技术整合到他们的应用中。 启用Struts 2中的JSON AJAX支持主要涉及以下几个步骤: 1. **配置Struts 2 JSON插件**: 首先,需要在...

    json struts2 ajax实例代码

    结合JSON、Struts2和Ajax,我们可以创建高效的Web应用程序,通过以下步骤: 1. **创建Struts2 Action类**:在Java中定义一个Action类,这个类将处理客户端的请求,执行相应的业务逻辑。Action类需要继承自Struts2...

    struts2 Ajax

    1. **使用Struts2的内置Ajax插件**:Struts2提供了一个名为Struts2 jQuery插件或Struts2 AJAX插件,它们提供了许多预定义的Ajax行为和标签,如`&lt;s:ajax&gt;`,可以直接在JSP页面中使用,简化Ajax的实现。例如: ```jsp...

Global site tag (gtag.js) - Google Analytics