e54bd42bc1c99d9f6360be03c17cfe3533049a47.svn-base 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. package UIB.UIB03;
  2. import java.io.ByteArrayInputStream;
  3. import java.io.ByteArrayOutputStream;
  4. import java.io.InputStream;
  5. import java.io.OutputStream;
  6. import java.sql.Connection;
  7. import java.sql.PreparedStatement;
  8. import java.sql.ResultSet;
  9. import org.springframework.jdbc.support.rowset.SqlRowSet;
  10. import jxl.Workbook;
  11. import jxl.write.Label;
  12. import jxl.write.WritableSheet;
  13. import jxl.write.WritableWorkbook;
  14. import UIB.COM.XmlSqlParsersFactory;
  15. import UIB.UIB03.ZBS.ExcelStyleSeter;
  16. import CoreFS.SA01.CoreIComponent;
  17. import CoreFS.SA06.CoreReturnObject;
  18. public class TestPrint extends CoreIComponent
  19. {
  20. Connection con = this.getDao("KgDao").getConnection();
  21. public CoreReturnObject print(String strExcel , String strCoilNo)throws Exception
  22. {
  23. CoreReturnObject cro = null;
  24. PreparedStatement pstm = con.prepareStatement(XmlSqlParsersFactory.getSql("UIB030310_03.SELECT"));
  25. pstm.setString(1, strExcel);
  26. ResultSet rs = pstm.executeQuery();
  27. if(rs.next())
  28. {
  29. SqlRowSet srs = null;
  30. cro = this.getDao("KgDao").ExecutequeryForRowSet(XmlSqlParsersFactory.getSql("UIL010020_04.SELECT") , new Object[]{ strCoilNo});
  31. srs = (SqlRowSet)cro.getResult();
  32. if(!srs.next())
  33. {
  34. return null;
  35. }
  36. InputStream is = new ByteArrayInputStream(this.dbproxy.getLobHandler().getBlobAsBytes(rs , "TMPL_EXCEL"));
  37. OutputStream os = new ByteArrayOutputStream();//建立输出流,填入数据的EXCEL形成该输出流
  38. Workbook wBook = Workbook.getWorkbook(is);//获取EXCEL对象,生成工作薄
  39. WritableWorkbook wwBook = Workbook.createWorkbook(os, wBook);//创建可操作副本
  40. WritableSheet wSheet = wwBook.getSheet(0);//获取第0个工作表
  41. /////////填充
  42. wSheet.addCell(new Label(1 , 5 , srs.getString("COIL_NO") ));
  43. wSheet.addCell(new Label(1 , 7 , srs.getString("CHARGE_NO") ));
  44. wwBook.write();
  45. ByteArrayOutputStream baos = (ByteArrayOutputStream)os;
  46. baos.close();
  47. os.close();
  48. wwBook.close();
  49. wBook.close();
  50. cro = new CoreReturnObject();
  51. cro.setResult(baos.toByteArray());
  52. }
  53. return cro;
  54. }
  55. }