2012-06-01 214 views
-2

这里是我的代码我有3个textfields和1个comboBox.I hava使用mysql数据库和休眠 我可以创建一个碧玉报告(/home/webwerks/gitpro/Swing/src/report5.jrxml“)给这样的路径没关系,但我已经设置了outfile(jasper report)的动态路径,你可以看到jButton5ActionPerformed代码,我可以给这样的outfile的静态路径(JasperExportManager.exportReportToPdfFile(jasperPrint,“/ home/webwerks/report在这个地方我可以给动态路径.PDF“)如何请帮我Swing应用程序桌面

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {           

    if (evt.getSource() == jButton1) { 
      String s = jTextField1.getText(); 
      String s1 = jTextField2.getText(); 
      String s2 = jTextField3.getText(); 
      String s4 = (String) jComboBox1.getSelectedItem(); 
      Session session = HibernateUtil.getSessionFactory().openSession(); 
      session.beginTransaction(); 
      Performance performance = new Performance(); 
      performance.setFirerating(s4); 
      performance.setSoundrating(s); 
      performance.setWidth(s1); 
      performance.setMaxheight(s2); 
      session.save(performance); 
      session.flush(); 
     } 
    }           

    private void jButton5ActionPerformed(java.awt.event.ActionEvent evt) {           
     // TODO add your handling code here: 
     if (evt.getSource() == jButton5) { 
      try { 
       Session session = HibernateUtil.getSessionFactory().openSession(); 
       List l = ((org.hibernate.classic.Session) session).find("from Hibernate.Performance"); 
       Map parameters = new HashMap(); 
       InputStream input = new FileInputStream("/home/webwerks/gitpro/Swing/src/report5.jrxml"); 
       JasperDesign jasperDesign = JRXmlLoader.load(input); 
       JasperReport jasperReport = JasperCompileManager.compileReport(jasperDesign); 
       JRBeanCollectionDataSource ds = new JRBeanCollectionDataSource(l); 
       JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, parameters, ds); 
       JasperExportManager.exportReportToPdfFile(jasperPrint, "/home/webwerks/report.pdf"); 
      } catch (Exception e) { 
      } 
     } 
    }          

回答

1

您需要使用JFileChooser的,就像在this tutorial

所示
final JFileChooser fc = new JFileChooser(); 
// configure file chooser if needed 
int returnVal = fc.showSaveDialog(jButton5); 
if (returnVal == JFileChooser.APPROVE_OPTION) { 
    String filename = fc.getSelectedFile().getAbsolutePath(); 
    // Put your code here to generate the report. 
} 
+0

非常感谢你.. – user1411799