设为首页 加入收藏

TOP

Java用POST传对象给Servlet
2014-11-16 14:00:37 来源: 作者: 【 】 浏览:26
Tags:Java POST 对象 Servlet

  为了实现BlazeDS的实时推送功能,找到了个用Servlet实现的例子。但是例子采用的是线程每秒推送,这样有些浪费资源。


  搜了很久,也没找到Java类里调用Servlet的例子,只好用Post方法传对象。


  发送POST的例子在 : http://lodachi.javaeye.com/ show_full=true


  Java代码


  package dbConn;


  import java.io.InputStream;


  import java.io.ObjectOutputStream;


  import java.io.OutputStream;


  import java.net.HttpURLConnection;


  import java.net.MalformedURLException;


  import java.net.URL;


  import bean.Tick;


  import flex.messaging.util.URLEncoder;


  public class TestAction {


  public static void main(String[] args) throws Exception{


  TestAction test = new TestAction();


  test.test();


  }


  public void test() throws Exception {


  URL url = new URL("http://localhost:8080/HRC/servlet/DataPushServlet");


  HttpURLConnection urlConn = (HttpURLConnection) url.openConnection();


  urlConn.setDoOutput(true);


  urlConn.setDoInput(true);


  urlConn.setUseCaches(false);


  urlConn.setRequestProperty("Content-type","application/x-java-serialized-object");


  urlConn.setRequestMethod("POST");


  urlConn.connect();


  OutputStream outStrm = urlConn.getOutputStream();


  ObjectOutputStream oos = new ObjectOutputStream(outStrm);


  Tick tick = new Tick();


  oos.writeObject(tick);


  oos.flush();


  oos.close();


  InputStream inStrm = urlConn.getInputStream();


  }


  }


  Java代码


  package servlet;


  import java.io.BufferedReader;


  import java.io.IOException;


  import java.io.InputStream;


  import java.io.InputStreamReader;


  import java.io.ObjectInputStream;


  import java.io.ObjectOutputStream;


  import java.io.OutputStream;


  import java.io.PrintWriter;


  import java.math.BigDecimal;


  import java.util.Date;


  import javax.servlet.ServletException;


  import javax.servlet.http.HttpServlet;


  import javax.servlet.http.HttpServletRequest;


  import javax.servlet.http.HttpServletResponse;


  import bean.Tick;


  import flex.messaging.MessageBroker;


  import flex.messaging.messages.AsyncMessage;


  import flex.messaging.util.UUIDUtils;


  public class DataPushServlet extends HttpServlet {


  public DataPushServlet() {


  super();


  }


  public void destroy() {


  super.destroy(); // Just puts "destroy" string in log


  // Put your code here


  }


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇怎样用Jvm处理Java数组 下一篇Java中的闭包与回调

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: