转自:http://blog.csdn.net/a9529lty/article/details/6454156
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
- }
- /**
- * Initialization of the servlet. <br>
- *
- * @throws ServletException if an error occurs
- */
- public void init() throws ServletException {
- // Put your code here
- }
- public void doGet(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException {
- //System.out.println("doGet");
- doPost(request,response);
- }
- public void doPost(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException {
- System.out.println("doPost");
- InputStream in = request.getInputStream();
- ObjectInputStream ois = new ObjectInputStream(in);
- try{
- Tick tick = (Tick)(ois.readObject());
- System.out.println(tick.getAskPrice());
- System.out.println(tick.getBidPrice());
- System.out.println(tick.getMidPrice());
- }catch(Exception e){}
- }
- public void push(String para){
- MessageBroker msgBroker = MessageBroker.getMessageBroker(null);
- String clientID = UUIDUtils.createUUID();
- // Tick tick = new Tick();
- // tick.setAskPrice(new BigDecimal("100"));
- // tick.setBidPrice(new BigDecimal("100"));
- // tick.setMidPrice(new BigDecimal("100"));
- // tick.setTickTime(new Date());
- //
- // tick.setSeqno(name);
- AsyncMessage msg = new AsyncMessage();
- msg.setDestination("tick-data-feed");
- msg.setHeader("DSSubtopic", "tick");
- msg.setClientId(clientID);
- msg.setMessageId(UUIDUtils.createUUID());
- msg.setTimestamp(System.currentTimeMillis());
- msg.setBody(para);
- msgBroker.routeMessageToService(msg, null);
- }
- }
Java代码
- package bean;
- import java.io.Serializable;
- import java.math.BigDecimal;
- import java.util.Date;
- public class Tick implements Serializable {
- private String askPrice = "aaaaaaaa";
- private String bidPrice = "bbbbbbbb";
- private String midPrice = "cccccccc";
- ..........
- }