XLLoop 是一个开源的框架用来实现集中式(通过一个中央服务器)的Excel处理服务。支持包括 Java、Python、Ruby、JavaScript、ErLang 等语言。
服务器端 Java 示例代码:
package org.boris.xlloop.util; import org.boris.xlloop.FunctionServer; import org.boris.xlloop.handler.*; import org.boris.xlloop.reflect.*; public class ServerExample { private static final boolean LOAD_BALANCE = false; public static void main(String[] args) throws Exception { // Create function server on the default port FunctionServer fs = new FunctionServer(); // Create a reflection function handler and add the Math methods ReflectFunctionHandler rfh = new ReflectFunctionHandler(); rfh.addMethods("Math.", Math.class); rfh.addMethods("Math.", Maths.class); rfh.addMethods("CSV.", CSV.class); rfh.addMethods("Reflect.", Reflect.class); // Create a function information handler to register our functions FunctionInformationFunctionHandler firh = new FunctionInformationFunctionHandler(); firh.add(rfh.getFunctions()); // Create a function handler to demonstrate the "load balancing" // capability GetLoadServerFunctionHandler glsfh = new GetLoadServerFunctionHandler(); // Set the handlers CompositeFunctionHandler cfh = new CompositeFunctionHandler(); cfh.add(rfh); cfh.add(firh); if (LOAD_BALANCE) cfh.add(glsfh); fs.setFunctionHandler(new DebugFunctionHandler(cfh)); // Run the engine System.out.println("Listening on port " + fs.getPort() + "..."); fs.run(); } }