import java.io.IOException;
import java.io.PrintWriter;
import java.util.HashMap;
import java.util.Map;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperManager;
import net.sf.jasperreports.engine.JasperPrint;
public class GerarPDF extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
}
//Você pode chamar esse método no DoGet ou DoPost!
public void GerarPDF(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
try{
RelConexao rc = new RelConexao();
rc.conexaorel();
String pathJasper = getServletContext().getRealPath("/relatorios") + "/";
String path = getServletContext().getRealPath("/");
Map parametros = new HashMap();
parametros.put("", pathJasper + "Relatorio.jasper");
try {
// Aqui ele cria o relatório
JasperPrint impressao = JasperFillManager.fillReport(
pathJasper + "Relatorio.jasper", parametros, rc.con);
// Grava o relatório em disco em pdf
JasperManager.printReportToPdfFile(impressao, path + "Relatorio.pdf");
// Redireciona para o pdf gerado
response.sendRedirect("Relatorio.pdf");
} catch (Exception e) {
response.getWriter().println("Erro ao gerar o relatório :"+ e);
}
}catch(Exception e){
System.out.println("Erro: "+ e);
}
}
}
Classe de Conexão com o banco de dados!
import java.sql.*;
public class RelConexao {
public void conexaorel() {
try {
if (con == null || con.isClosed()) {
Class.forName("org.postgresql.Driver");
con = DriverManager.getConnection("jdbc:postgresql://localhost:5432/Nome_do_Banco","login_bd","senha_bd");
}
} catch (Exception e) {
System.out.println("Erro ao conectar com o Banco de dados! " +e);
}
}
}
Obs: É precisso usar algumas bibliotecas para poder gerar em PDF!
Nenhum comentário:
Postar um comentário