GET
Hình 5.1 chỉ ra đoạn code chương trình xử lý vấn để GET khi người dùng yêu cầu từ URI: http://localhost:8080/RFMOReceiver/restful/todos/MT?user_id=84932347686, sau khi dispatcher xử xý sẽ triệu gọi phương thức phù hợp với yêu cầu là GetMTByID() và trả về kết quả là một danh sách MT nếu thành công, danh sách rỗng nếu thất bại.
@GET
@Path("MT")
@Produces(MediaType.APPLICATION_XML)
public static List<ServiceData> GetMTByID(@QueryParam("user_id") String user_id)throws Exception{
return DBTool.getMTByID(user_id); }
Hình 5.3 chỉ ra đoạn code chương trình xử lý vấn đề GET khi mà ứng dụng yêu cầu trả lại kết quả là kiểu dữ liệu JSON.
Và kết quả trả về dạng dữ liệu JSON như trong hình 5.4:
@GET
@Path("MT")
@Produces(MediaType.APPLICATION_JSON)
public static List<ServiceData> GetMTByID(@QueryParam("user_id") String user_id)throws Exception{
return DBTool.getMTByID(user_id); }
public static List<ServiceData> getMTByID(String user_id) throws Exception { Connection conn = null;
PreparedStatement preStt = null; ResultSet rs = null;
List<ServiceData> vt=new ArrayList<ServiceData>(); try {
conn = getConnection();
String sql ="SELECT * FROM SEND_LOG WHERE user_id='"+user_id+"'";
preStt = conn.prepareStatement(sql); rs=preStt.executeQuery();
ServiceData data =null; while (rs.next()){
data = new ServiceData();
data.setUserId(rs.getString("user_id")); data.setMessage(rs.getString("message")); data.setServiceId(rs.getString("service_id")); data.setCommandCode(rs.getString("command_code")); data.setMsgType(rs.getString("message_type")); data.setRequestId(rs.getString("request_id")); data.setTotalMsg(rs.getString("total_msg")); data.setMsgIndex(rs.getString("msg_index")); data.setIsMore(rs.getString("is_more")); data.setContentType(rs.getString("content_type")); vt.add(data); } return vt;
} catch (Exception ex) { throw ex;
} finally {
closeConnection(conn, preStt);
} }
POST
Hình 5.5 chỉ ra đoạn code chương trình xử lý vấn đề POST khi người dùng yêu cầu từ form dữ liệu, sau khi dispatcher xử lý sẽ triệu gọi phương thức phù hợp với yêu cầu là
messageReceiver() và trả về kết quả là 1 nếu thành công, -1 nếu thất bại.
@POST
@Path("form")
@Produces(MediaType.TEXT_HTML)
@Consumes(MediaType.APPLICATION_FORM_URLENCODED)
public String messageReceiver(@FormParam("User_ID") String
User_ID,@FormParam("Service_ID") String Service_ID,@FormParam("Command_Code") String Command_Code,@FormParam("Message") String
Message,@FormParam("Request_ID") String Request_ID){ String MobileOperator=Util.getMobileOper(User_ID); String retvalue="-1";
ServiceData serviceData = new ServiceData(); serviceData.setRequestId(Request_ID); serviceData.setMobileOper(MobileOperator); serviceData.setUserId(User_ID); serviceData.setServiceId(Service_ID); serviceData.setCommandCode(Command_Code); serviceData.setMessage(Message); serviceData.setTimeStamp(Util.createTimestampFull()); try {
DBTool.createReceiveQueue(serviceData); retvalue="1"; } catch (Exception e) { retvalue="-1"; e.printStackTrace(); } finally { } return retvalue; }
Hình 5.5: Chức năng POST dữ liệu
{"serviceData":[{"commandCode":"LA","contentType":"0","isMore":"0","message":" Day la chuong trình spam thu cua dau so 6x66 - dang
pro","msgIndex":"1","msgType":"0","requestId":"111111111","serviceId":"6766"," totalMsg":"1","userId":"84932347686"},{"commandCode":"LA","contentType":"0","i sMore":"0","message":"Day la chuong trình spam thu cua dau so 6x66 - dang pro","msgIndex":"1","msgType":"0","requestId":"111111111","serviceId":"6766"," totalMsg":"1","userId":"84932347686"},