`
独自等待戈多
  • 浏览: 35435 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

Java以Post方式访问spring的action

阅读更多

对方定义的Web接口,接收JSON对象,返回也是JSON对象。

在编码过程中遇到了一点小问题,以下是完整代码。

 

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.HttpURLConnection;
import java.net.URL;

import net.sf.json.JSONObject;

public class HttpPost {

	private JSONObject Send(String urlStr, JSONObject jObj) throws IOException {
		String retValue = null;

		URL url = new URL(urlStr);
		HttpURLConnection con = (HttpURLConnection) url.openConnection();
		// 以Post方式发送
		con.setRequestMethod("POST");
		con.setDoInput(true);
		con.setDoOutput(true);
		// 设置内容类型为文本或者html
		con.setRequestProperty("Content-type", "text/html");

		PrintWriter out = new PrintWriter(con.getOutputStream());
		// 对方接口要求带[]符号
		out.println("[" + jObj.toString() + "]");
		out.flush();
		out.close();

		BufferedReader l_reader = new BufferedReader(new InputStreamReader(
				con.getInputStream()));
		StringBuffer buff = new StringBuffer();
		String line;
		while ((line = l_reader.readLine()) != null) {
			buff.append(line + "\n");
		}
		l_reader.close();
		con.disconnect();

		retValue = buff.toString();
		if (retValue.length() > 2) {
			retValue = retValue.substring(1, retValue.length() - 2);
			return JSONObject.fromObject(retValue);
		} else
			return null;
	}

	public static void main(String[] args) throws IOException {
		HttpPost hp = new HttpPost();
		JSONObject jUser = new JSONObject();
		jUser.put("userName", "njupt");
		JSONObject jUserAcs = new JSONObject();
		jUserAcs.put("UserAccess", jUser);

		System.out
				.println(hp
						.Send("http://ip:port/smartHome/mobile/UserAccess.action",
								jUserAcs));
	}
}

 

JSON用到的jar包可以从这里下载:http://134.iteye.com/blog/231782

推荐一个http抓包工具HTTP Analyzer:http://www.ieinspector.com/httpanalyzer/download.html

用它来分析发送和接收的内容,之前一直调试不通过,因为request的contenttype不是text/html,是使用该抓包工具发现的。

 

以上

 

wuxiaochao@live.com

分享到:
评论

相关推荐

    Manning.Spring.in.Action.4th.Edition.2014.11.epub

    Praise for the Third Edition of Spring in Action Preface Acknowledgments About this Book 1. Core Spring Chapter 1. Springing into action 1.1. Simplifying Java development 1.1.1. Unleashing the power ...

    Myeclipse开发struts+hibernate+spring新手入门--环境配置---项目开发示例

    同加载struts方式类似,选择Myeclipse后在弹出的二级菜单中选择Add spring in action in action Capabilities…后提示如下图所示: 选择所需要的spring in action in action包,然后默认下一步,直到完成。 到此...

    spring_MVC源码

    弃用了struts,用spring mvc框架做了几个项目,感觉都不错,而且使用了注解方式,可以省掉一大堆配置文件。本文主要介绍使用注解方式配置的spring mvc,之前写的spring3.0 mvc和rest小例子没有介绍到数据层的内容,...

    java面试题

    请用java写二叉树算法,实现添加数据形成二叉树功能,并以先序的方式打印出来. 119 84.12. 请写一个java程序实现线程连接池功能? 122 84.13. 编一段代码,实现在控制台输入一组数字后,排序后在控制台输出; 122 ...

    galaxy-java 开源java框架。

    <form action="regesiterAction.jsp" method="post"> 用户名("username")%>" /> 密码("password")%>" name="password" /> 手机号: ("username")%>" /> <input type="hidden" name="action" value=...

    Java面试宝典-经典

    4、编程用JAVA解析XML的方式. 115 5、XML文档定义有几种形式?它们之间有何本质区别?解析XML文档有哪几种方式? 117 七. 流行的框架与新技术 117 1、谈谈你对Struts的理解。 117 2、谈谈你对Hibernate的理解。 118 ...

    Java面试宝典2010版

    4、编程用JAVA解析XML的方式. 115 5、XML文档定义有几种形式?它们之间有何本质区别?解析XML文档有哪几种方式? 117 七. 流行的框架与新技术 117 1、谈谈你对Struts的理解。 117 2、谈谈你对Hibernate的理解。 118 ...

    java面试题大全(2012版)

    4、编程用JAVA解析XML的方式. 115 5、XML文档定义有几种形式?它们之间有何本质区别?解析XML文档有哪几种方式? 117 七. 流行的框架与新技术 117 1、谈谈你对Struts的理解。 117 2、谈谈你对Hibernate的理解。 118 ...

    galaxy-java 开源java框架(2012年5月12号)

    form action="regesiterAction.jsp" method="post"> 用户名<input name="username" value="<%=obj.getString("username")%>" /> 密码<input type="password" value="<%=obj.getString("password...

    最新Java面试宝典pdf版

    4、编程用JAVA解析XML的方式. 115 5、XML文档定义有几种形式?它们之间有何本质区别?解析XML文档有哪几种方式? 117 七. 流行的框架与新技术 117 1、谈谈你对Struts的理解。 117 2、谈谈你对Hibernate的理解。 118 ...

    Javashop开发规范V2.2

    以Action结尾,如:UserAction 二、 业务类 1.接口: 以I开头,以Manager结尾,如:IUserManager 2.实现类 以Manager结尾,如:UserManager 三、 组件类 以Component结尾,如:ShopEmailComponent 四、 挂件类 以...

    java面试宝典2012

    4、编程用JAVA解析XML的方式. 125 5、XML文档定义有几种形式?它们之间有何本质区别?解析XML文档有哪几种方式? 127 七. 流行的框架与新技术 128 1、谈谈你对Struts的理解。 128 2、谈谈你对Hibernate的理解。 128 ...

    Java面试笔试资料大全

    4、编程用JAVA解析XML的方式. 115 5、XML文档定义有几种形式?它们之间有何本质区别?解析XML文档有哪几种方式? 117 七. 流行的框架与新技术 117 1、谈谈你对Struts的理解。 117 2、谈谈你对Hibernate的理解。 118 ...

    JAVA面试宝典2010

    4、编程用JAVA解析XML的方式. 115 5、XML文档定义有几种形式?它们之间有何本质区别?解析XML文档有哪几种方式? 117 七. 流行的框架与新技术 117 1、谈谈你对Struts的理解。 117 2、谈谈你对Hibernate的理解。 118 ...

    Java面试宝典2012新版

    4、编程用JAVA解析XML的方式. 115 5、XML文档定义有几种形式?它们之间有何本质区别?解析XML文档有哪几种方式? 117 七. 流行的框架与新技术 117 1、谈谈你对Struts的理解。 117 2、谈谈你对Hibernate的理解。 118 ...

    Java面试宝典2012版

    4、编程用JAVA解析XML的方式. 115 5、XML文档定义有几种形式?它们之间有何本质区别?解析XML文档有哪几种方式? 117 七. 流行的框架与新技术 117 1、谈谈你对Struts的理解。 117 2、谈谈你对Hibernate的理解。 ...

    recaptcha-spring-boot-starter:Google的reCAPTCHA的Spring Boot启动器

    reCAPTCHA Spring Boot入门 要使用启动程序,您将需要一个reCAPTCHA站点密钥和一个秘密密钥。 要获取它们,请转到并设置您的reCAPTCHA。... form action =" / " method =" post " > < div class

Global site tag (gtag.js) - Google Analytics