我现在在做一个报表发布模块。由于报表是以Excel另存为xml文件的方式提供给我。我的处理方式是在服务器端通过jcom调用我自己编写的vb控件达到利用Excel控件的报表发布工具将报表发布成.htm文件。我在这里使用了单体模式,想法是想在服务器端的进程里只有一个Excel进程。 我的类的设计如下,但是没有达到我的目的。请大家指点,我该怎么设计才能达到预期的目的。
急切的等待你们的帮助!!谢谢
import jp.ne.so_net.ga2.no_ji.jcom.*;//这是jcom的冬冬 import java.util.*; public class UpdateReport { private UpdateReport(){}
private static final UpdateReport instance = new UpdateReport();
public static UpdateReport getInstance() { return instance; }
public boolean init(String rptName,String macroName,String phyWebPath,boolean bHasEx) { System.out.println("webpath:"+phyWebPath); boolean bUpdated = false; ReleaseManager rm = new ReleaseManager(); try { IDispatch vbcom = new IDispatch(rm, "GenerateWebReport.UpdateRpt"); //GenerateWebReport.UpdateRpt是我写的vb控件来调用Excel控件 String x =rptName; String y =phyWebPath; String z = macroName; Boolean w = new Boolean(bHasEx); Object[] param = new Object[] {x,y,z,w}; Boolean retcode= (Boolean)vbcom.method("GenRpt", param ); if(retcode.booleanValue()) bUpdated = true; } catch (Exception ex) { ex.printStackTrace(); rm.release(); } finally { rm.release(); } return bUpdated; } }
|
|