estoy realizando una clase genérica para generar conectar por cualquier bd y generar reportes... aca esta
Código HTML:
package co.com.empresa.conectarReporte; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import net.sf.jasperreports.engine.JRExporterParameter; import net.sf.jasperreports.engine.JasperCompileManager; import net.sf.jasperreports.engine.JasperExportManager; import net.sf.jasperreports.engine.JasperFillManager; import net.sf.jasperreports.engine.JasperPrint; import net.sf.jasperreports.engine.JasperReport; import net.sf.jasperreports.engine.export.JRXlsExporter; import net.sf.jasperreports.view.JasperViewer; public class ConectarReporte { private static Connection conn; private static Statement stm; private static ResultSet rst; private static String JdbcDriver; private static String jdbcURL; private static String usuario; private static String password; public static Connection getConn() { return conn; } public static void setConn(Connection conn) { ConectarReporte.conn = conn; } public static Statement getStm() { return stm; } public static void setStm(Statement stm) { ConectarReporte.stm = stm; } public static ResultSet getRst() { return rst; } public static void setRst(ResultSet rst) { ConectarReporte.rst = rst; } public static String getJdbcURL() { return jdbcURL; } public static void setJdbcURL(String jdbcURL) { ConectarReporte.jdbcURL = jdbcURL; } public static String getUsuario() { return usuario; } public static void setUsuario(String usuario) { ConectarReporte.usuario = usuario; } public static String getPassword() { return password; } public static void setPassword(String password) { ConectarReporte.password = password; } public static String getJdbcDriver() { return JdbcDriver; } public static void setJdbcDriver(String JdbcDriver) { ConectarReporte.JdbcDriver = JdbcDriver; } public static void conectarSQLDB(String JdbcDriver, String jdbcURL, String usuario, String password) throws ClassNotFoundException, SQLException { try { Class.forName(JdbcDriver); conn = DriverManager.getConnection(jdbcURL, usuario, password); catch(ClassNotFoundException | SQLException e) { e.printStackTrace(); //JOptionPane.showMessageDialog(null, e.getMessage()); //log.warn("");ClassNotFoundException | } finally { // e.printStackTrace(); } } public static void desconectar() throws SQLException { conn.close(); } public static void mostrarReporte(String directorioUsr, String RutaReporte, String NombreReporte )throws Exception{ try { JasperReport reporte = JasperCompileManager.compileReport(System.getProperty(directorioUsr).concat(RutaReporte)); JasperPrint Imprima = JasperFillManager.fillReport(reporte, null, conn); JasperViewer view = new JasperViewer(Imprima, false); view.setTitle(NombreReporte); // view.setExtendedState(Frame.MAXIMIZED_BOTH); view.setVisible(true); JasperExportManager.exportReportToPdfFile(Imprima, "C://sample_report.pdf"); // 2- export to HTML JasperExportManager.exportReportToHtmlFile(Imprima, "C://sample_report.html" ); // 3- export to Excel sheet JRXlsExporter exporter = new JRXlsExporter(); exporter.setParameter(JRExporterParameter.JASPER_PRINT, Imprima); exporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME, "C://simple_report.xls" ); } catch (Exception e) { } // public void ExportarReporte() // { // // } } }
Gracias por la ayudaaaa!