⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 wapreceive.java

📁 联通provsion接口程序,用于联通wap订购关系同步
💻 JAVA
字号:


import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;
import org.jdom.input.SAXBuilder;
import org.jdom.Document;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.jdom.Element;

import org.jdom.Attribute;
import org.jdom.output.XMLOutputter;
import org.jdom.output.Format;

public class wapreceive extends HttpServlet {
	
	public static void main(String args[]){
		  //System.out.println("aaaaaaaaaaaaaaaaa");
	}
   /**
	 * 
	 */
	private static final long serialVersionUID = 1L;
private static Log log = null;
   private static final String CONTENT_TYPE = "text/xml";
   private int resultstatus = 1;//返回状态值
   SAXBuilder sb = new SAXBuilder();//用到Jdom
   private Document doc=null;

   //Initialize global variables
   public void init() throws ServletException {
   }

   //Process the HTTP Get request
   public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
       response.setContentType(CONTENT_TYPE);
       PrintWriter out = response.getWriter();
       Format format = Format.getPrettyFormat();
       XMLOutputter outputter = new XMLOutputter(format.setIndent("  "));
       String flag = "service_order_to_cp";

       if(request.getContentLength() <= 0){//没有数据
           resultstatus = 1;
           log.error("接收数据为空");
           outputter.output(setReturnStatus(resultstatus,flag), out);
           return;
       }

       try{
           DataInputStream din = new DataInputStream(request.getInputStream());//输入流
           
           doc = sb.build(din);//绑定输入流
           din.close();

           wapuser user = new wapuser();   
           //定义一个bean,
           //里面有相应字段变量及数据库操作方法
           //得到根元素
           Element root = doc.getRootElement();
           flag = root.getAttributeValue("id");//根元素的属性id的值

           //得到根元素所有子元素的集合
           List message = root.getChildren();
           //叠代显示所有元素
           Iterator it = message.iterator();
           while (it.hasNext())
           {
               Element e = (Element) it.next();
               if(e.getName().equals("cpcode")){
                   user.setCpcode(e.getAttributeValue("value"));//设置cpcode=属性value的值
               }
               else if(e.getName().equals("userid")){
                   user.setUserid(e.getAttributeValue("value"));
               }
               else if(e.getName().equals("encryptflag")){
                   user.setEncryptflag(e.getAttributeValue("value"));
               }
               else if(e.getName().equals("serviceid")){
                   user.setServiceid(e.getAttributeValue("value"));
               }
               else if(e.getName().equals("ispack")){
                   user.setIspack(e.getAttributeValue("value"));
               }
               else if(e.getName().equals("sub_type")){
                   user.setSub_type(e.getAttributeValue("value"));
               }
               else if(e.getName().equals("orderdate")){
                   user.setOrderdate(e.getAttributeValue("value"));
               }
               else if(e.getName().equals("disorderdate")){
                   user.setOrderdate(e.getAttributeValue("value"));
               }
           }
           int updatenum = user.setWapUser();//设置值后,此方法把值存入数据库,当然有相关的逻辑判断,包括是否已存在,是否更新退定等
           if(updatenum>0){//updatenum大于零说明操作数据库成功
               resultstatus = 0;//接收成功
               log.info(flag+"用户信息"+user.getUserid()+"成功");//是个log的操作
           }

//导出xml格式,输出到out流中,setreturnStatus()为设置xml格式
               outputter.output(setReturnStatus(resultstatus, flag), out);
       }catch(Exception e){
           log.error("接收数据有误",e);//log操作
       }

   }

   /**
    * 设置返回信息
    * @param resultstatus int
    * @return Document
    */
   private Document setReturnStatus(int resultstatus,String flag){
       Element webelement = new Element("webmethod");//根
       Document retdoc = new Document(webelement);
       webelement.setAttribute(new Attribute("id",flag));//根属性
       webelement.addContent(new Element("result").setAttribute(new Attribute("status",String.valueOf(resultstatus))));//添加元素及属性
       return retdoc;
   }

   //Process the HTTP Post request
   public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
       doGet(request, response);
   }

   //Clean up resources
   public void destroy() {
   }

   static
   {
       log = LogFactory.getLog(wapreceive.class.getName());//设置log
   }

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -