java post跳转页面_java通过模拟表单实现post跳转

今天在实现一个跳转功能时发现参数太长了,用redirect无法实现,想改成post提交参数。java自身的api貌似无法实现,最后查到可以用模拟一个表单提交参数的方式实现。

代码如下:

增加http请求工具类

import javax.servlet.http.HttpServletResponse;

import java.io.IOException;

import java.io.PrintWriter;

import java.util.HashMap;

import java.util.Iterator;

import java.util.Map;

/**

* Created by crimson.

*/

public class HttpClientUtil {

Map parameter=new HashMap<>();

HttpServletResponse response;

public HttpClientUtil(HttpServletResponse response)

{

this.response=response;

}

public void setParameter(String key,String value)

{

this.parameter.put(key, value);

}

public void sendByPost(String url) throws IOException

{

this.response.setContentType("text/html");

PrintWriter out = this.response.getWriter();

out.println(""-//W3C//DTD HTML 4.01 Transitional//EN\">");

out.println("");

out.println("

");

out.println("

");

out.println("

");

Iterator it=this.parameter.keySet().iterator();

while(it.hasNext())

{

String key=it.next();

out.println("");

}

out.println("");

out.println(" ");

out.println(" ");

out.println("");

out.flush();

out.close();

}

}

调用处:

HttpClientUtil http=new HttpClientUtil (response);

http.setParameter("key", "value");

http.sendByPost(url);


版权声明:本文为weixin_35502173原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。