http service 得到post請求對象

得到post object的方式

一。序列化數據

 

public String testPost2() throws IOException{
		System.out.println("得到POST傳遞過來的對象——doPost");
		InputStream in = ServletActionContext.getRequest().getInputStream();
		ObjectInputStream ois = new ObjectInputStream(in);
		try{
			LoginObj lo = (LoginObj)(ois.readObject());
			System.out.println(lo.ip);
			System.out.println(lo.port);
			System.out.println(lo.uin);
			TwoDimensionalCodeValidate tdcv = new TimeStampUUIDValidate();
			System.out.println("validate:"+tdcv.validate(lo.two_dim_code));
			if(tdcv.validate(lo.two_dim_code)){
				System.out.println("--");
				CacheOperation co = new MemCachedOperation();
				co.saveData(lo);
			}
		}catch(Exception e){
			e.printStackTrace();
		}
		return null;
	}
 

二。非序列化數據

 

                public String testPost() throws IOException{
		System.out.println("----得到POST傳遞過來的對象——doPost start----");
		InputStream in = ServletActionContext.getRequest().getInputStream();
		byte[] bytes = new byte[1024*4];
		int read = in.read(bytes);
		System.out.println("read:"+read);
		JSONObject returnjson = new JSONObject();
		
		
		LoginObj obj = new LoginObj();
		
		if( read > 0 )
		{
			String str = new String(bytes,0,read);
			System.out.println(str );
			
			try {
				JSONObject json = new JSONObject(str);		
				
				obj.getValue(json);
				TwoDimensionalCodeValidate tdcv = new TimeStampUUIDValidate();
				System.out.println("validate:"+tdcv.validate(obj.two_dim_code));
				if(tdcv.validate(obj.two_dim_code)){
					CacheOperation co = new MemCachedOperation();
					co.saveData(obj);
					returnjson.put("ret", 1);
				}else{
					returnjson.put("ret", 2);
				}
			} catch (JSONException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
			
			PrintWriter out;
			ServletOutputStream  ps ;
			ps = ServletActionContext.getResponse().getOutputStream();
			//ps.print(returnjson.toString().getBytes("UTF-8")); 
			byte[] out_bytes = returnjson.toString().getBytes("UTF-8");
			ps.write(out_bytes, 0, out_bytes.length);
			ps.flush();
			ps.close();
			return null;
			
		}else{
			try {
				returnjson.put("ret", 0);
			} catch (JSONException e) {
				e.printStackTrace();
			}
			PrintWriter out;
			out = ServletActionContext.getResponse().getWriter();
			out.print(returnjson);  
			
			return null;
		}
		
	}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章