1 0

struts端如何设置action的方法为post提交的方式提交5

android客户端在访问struts框架搭建的服务端方法时,在struts端如何设置action的方法为post提交的方式提交(在客户端访问时需要传递一些json参数,get方式提交的无法在android端提交);
在struts中配置的信息:
<package name="json" extends="json-default">
       <action name="selectById" class="UserAction" method="selectById">
         <result type="json"></result> <!--返回值类型设置为json,不设置返回页面-->
       </action>
</package>

该如何设置,求帮助

2012年7月03日 10:47

5个答案 按时间排序 按投票排序

0 0

采纳的答案

phone2Server方法里面有你要的

package cn.itcast.web.java.client;

import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.io.UnsupportedEncodingException;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLConnection;
import java.net.URLEncoder;

public class Phone {
	public static void main(String[] args) throws Exception {
		
		URL url = new URL("http://127.0.0.1:8080/xxx"); 
		
		URLConnection urlConnection = url.openConnection();
		
		HttpURLConnection httpURLConnection = (HttpURLConnection) urlConnection;
		
		phone2Server(httpURLConnection);
		
		serverTophone(httpURLConnection);
	}

	private static void phone2Server(HttpURLConnection httpURLConnection)
			throws IOException, UnsupportedEncodingException {
		
		httpURLConnection.setDoOutput(true);
		OutputStream os = httpURLConnection.getOutputStream();
		PrintWriter pw = new PrintWriter(os);
		String name = "杰克";
		name = URLEncoder.encode(name,"UTF-8");
		pw.write("username="+name+"&password=123");
		pw.flush();
		pw.close();
		
		//设置提交方法
		httpURLConnection.setRequestMethod("POST");
		
		//取得服务端响应的状态码
		int code = httpURLConnection.getResponseCode();
		System.out.println(code);
	}

	private static void serverTophone(HttpURLConnection httpURLConnection) throws Exception {
		//接收服务端的响应
		InputStream is = httpURLConnection.getInputStream();
		byte[] buf = new byte[1024];
		int len = 0;
		while((len=is.read(buf))>0){
			String msg = new String(buf,0,len);
			System.out.println(msg);
		}
		is.close();
	}
}



2012年7月04日 05:16
0 0

服务器端设置提交方式完全没有意义,是在Android客户端进行的,你可以参考下这篇文章http://liaokang-java.iteye.com/blog/1166083,也可以调用Android集成的HttpClient工具进行Post提交

2012年7月03日 13:25
0 0

你貌似搞反了吧,设置提交方式,是在客户端中设置,而非服务器端。而且Android也提供了如何配置参数为post方式提交呀,你可以google下。

2012年7月03日 13:17
0 0

页面中使用

method="post"

2012年7月03日 13:11
0 0

提交方式是由客户端决定的,你服务器端怎么设置貌似意义不大!

2012年7月03日 10:52

相关推荐

    struts2 使用action属性接收中文参数(post提交)

    这篇名为“Struts2 使用action属性接收中文参数(post提交)”的博文可能讲述了如何在Struts2框架中正确处理中文POST请求。在处理中文参数时,主要涉及以下几个关键知识点: 1. **字符编码设置**: - 请求编码:...

    Struts2动态方法调用

    在struts.xml文件中,需要正确设置Action和方法的映射规则,确保请求能够正确地映射到Action方法。 综上所述,Struts2的动态方法调用是一种强大的特性,它提供了更灵活的请求处理方式,同时也需要注意安全性和性能...

    解决在struts 中可以通过token 来重复提交的问题

    ### 解决Struts中通过Token防止重复提交的问题 在Web应用程序开发中,特别是基于MVC架构的框架如Apache Struts中,确保用户操作的安全性是非常重要的。其中一项常见且重要的安全措施是防止表单的重复提交。本文将...

    struts2 result转向到action

    这里定义了一个名为 `login` 的 Action,当表单提交到 `/login.action` 时,Struts2 将会调用 `action.LoginAction` 类来处理这个请求。如果 `LoginAction` 返回 `"success"`,那么根据配置的 `redirect-action` ...

    struts2中action接收参数的方式

    本篇文章将深入探讨Struts2中Action接收参数的多种方式,以及相关源码解析。 首先,最常见的接收参数方式是通过方法签名直接接收。例如,如果在JSP页面上有这样一个表单: ```jsp &lt;form action="submit.action" ...

    struts2批量提交数据

    3. **配置Struts2**:在Struts2的配置文件(struts.xml)中,我们需要为批量提交的Action定义一个映射。 ```xml &lt;action name="batchSave" class="com.example.BatchSaveAction"&gt; &lt;result name="success"&gt;/success...

    Struts2文件上传下载和表单重复提交问题

    首先,要在`struts.xml`配置文件中启用文件上传支持,设置`struts.multipart.parser`为`jakarta`或`native2ascii`。然后,在Action类中创建一个`java.io.File`或者`org.apache.struts2.dispatcher.multipart....

    struts2_token控制刷新重复提交

    3. **验证Token:** 在处理表单提交的Action方法中,Struts2的Token拦截器会自动进行Token验证。如果验证失败(比如因为用户刷新页面),拦截器会抛出一个`TokenException`,你可以捕获这个异常并处理。 ```java ...

    struts2中防止重复提交的方法

    总之,防止重复提交是Web应用开发中的重要一环,可以通过Struts2提供的 `&lt;s:token&gt;` 标签结合拦截器,或者结合客户端验证和服务器端状态管理等多种方式来实现。正确实施这些措施,可以有效避免数据的不一致性,提高...

    整合jquery+json+struts2异步提交实例

    综上所述,"整合jquery+json+struts2异步提交实例"是一个实用的Web开发教程,它演示了如何利用jQuery的Ajax功能和Struts2框架处理JSON数据,实现前后端之间的高效异步通信。这个实例可以帮助开发者更好地理解和掌握...

    struts2返回JSON数据的两种方式

    在Action方法中,填充`jsonData`,然后返回该属性的名称(默认为`execute`方法返回`SUCCESS`)。 ```java private String jsonData; public String getJsonData() { return jsonData; } public void ...

    通过表单提交实现调用不同的action方法

    "通过表单提交实现调用不同的action方法"这个主题主要涉及了如何利用HTTP表单提交数据,并根据提交的信息调用后台Java Servlet或者Struts、Spring MVC等框架中的不同Action方法。下面将详细讲解这一过程。 首先,...

    Struts2 防重复提交Demo

    Struts2是一个流行的Java Web框架,它为开发者提供了一种构建MVC(Model-View-Controller)架构的应用程序的方式。在Web开发中,防止重复提交是一个重要的问题,尤其是在处理敏感数据时,比如银行转账或用户注册。...

    struts2中token限制表单多次提交

    &lt;form action="myAction" method="post"&gt; &lt;!-- 表单内容 --&gt; &lt;input type="hidden" name="struts.token.name" value="token"/&gt; 提交"/&gt; ``` 这里的`s:token`标签会自动生成一个隐藏的Token字段,其值与服务器...

    AJAX和struts2传递JSON数组

    总结来说,通过这种方式,我们可以利用AJAX向Struts2 Action传递JSON数组,实现异步数据交互。这在动态更新页面内容、处理表单提交等场景下非常有用。同时,使用JSON作为数据交换格式,使得前后端的数据交换变得更加...

    J2EE以GET和POST方式提交表单的乱码解决(受教了)

    下面我们将深入探讨如何解决J2EE环境下GET和POST方式提交表单时出现的乱码问题。 首先,我们要理解GET和POST的区别。GET方式会将表单数据附加到URL后面,而POST方式则将数据放在请求体中。由于GET方式的限制,它...

    struts的令牌机制,防止重复提交

    3. **避免使用GET方式提交**:虽然Struts支持通过GET方式传递令牌,但推荐使用POST方式,以增强安全性。 4. **定期更新令牌**:在某些情况下,可能需要在用户进行某些特定操作后更新令牌,以防止令牌被滥用。 5. **...

    Struts-Action核心代码

    Action类继承自`org.apache.struts.action.Action`,并重写`execute()`方法。 2. **struts-config.xml**:这是Struts的配置文件,定义了Action的映射、Form Bean、数据源等信息。例如: ```xml &lt;action path="/...

    Struts2上传和下载Action配置

    在Struts2中,我们可以创建一个Action方法返回一个`InputStream`,Struts2会自动将其包装成HTTP响应,并设置合适的Content-Type和Content-Disposition头,使浏览器能够正确处理这个响应。以下是一个简单的下载Action...

    提交多行数据到Struts的ActionForm的List属性中

    注意,你需要确保在ActionForm类中提供相应的getter和setter方法,以便Struts框架能够正确地设置和获取List属性。 提交表单后,Action类接收到ActionForm实例,可以通过items属性访问并处理这些数据。例如,你可能...

Global site tag (gtag.js) - Google Analytics