使用集算器(esProc)可以很方便的从http数据源读取数据进行处理。

本例子中有一个servlet,对外提供json格式的雇员信息查询。Servlet访问数据库的员工表,保存了员工的信息,如下:

EID   NAME       SURNAME        GENDER  STATE        BIRTHDAY        HIREDATE         DEPT         SALARY

1       Rebecca   Moore      F       California 1974-11-20       2005-03-11       R&D          7000

2       Ashley      Wilson      F       New York 1980-07-19       2008-03-16       Finance    11000

3       Rachel      Johnson   F       New Mexico     1970-12-17       2010-12-01       Sales         9000

4       Emily         Smith        F       Texas        1985-03-07       2006-08-15       HR    7000

5       Ashley      Smith        F       Texas        1975-05-13       2004-07-30       R&D          16000

6       Matthew Johnson   M     California 1984-07-07       2005-07-07       Sales         11000

7       Alexis        Smith        F       Illinois       1972-08-16       2002-08-16       Sales         9000

8       Megan     Wilson      F       California 1979-04-19       1984-04-19       Marketing        11000

9       Victoria    Davis        F       Texas        1983-12-07       2009-12-07       HR    3000

ServletdoGet函数,接收json格式的雇员id字符串,通过数据库查询对应的雇员信息,形成json格式的雇员信息清单返回。下面的代码省略了读取数据库,生成雇员清单的过程:

protected void doGet(HttpServletRequestreq,HttpServletResponseresp) throws ServletException, IOException {

         //TODO Auto-generated method stub

         StringinputString=(String) req.getParameter("input");

         //inputString输入值是:"[{EID:8},{EID:32},{EID:44}]";

         if(inputString==null) inputString="";

         StringoutputString ="";

        

         {...}//此处省略通过inputString查询数据库生成outputString的代码

            //outputString生成结果是

//"[{EID:8,NAME:"Megan",SURNAME:"Wilson",GENDER:"F",STATE:\...";

         resp.getOutputStream().println(outputString);

         resp.setContentType("text/json;charset=GBK"); 

}

集算器如果要访问这个http servlet,可以采用如下的代码:

wKiom1PsV4nxROlxAAIco3Av-fk999.jpg

A1:定义了要传给servlet的输入参数,也就是json格式的员工id列表。

A2:定义了httpfile对象,url

http://localhost:8080/demo/testServlet?input=[{EID:8},{EID:32},{EID:44}],字符集是GBK

A3:导入A2这个httpfile对象返回的结果。

A4:逐行解析每个员工的json格式的信息,整理成一个序列。

A5:对于A4中的序列做计算,将姓和名合并成全名字段。

A6:将A5中的结果导出到文本文件中。