// error1 :java.io.FileNotFoundException:jrxml \ Blank_A4.jrxml(The 系统//找不到指定的路径)
// error2 :连接失败!!! //com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: 通讯//链接失败
//我的编码`输入代码
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.sql.Connection;
import java.util.HashMap;
import java.util.Map;
import net.sf.jasperreports.engine.JasperCompileManager;
import net.sf.jasperreports.engine.JasperExportManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.design.JasperDesign;
import net.sf.jasperreports.engine.xml.JRXmlLoader;
import net.sf.jasperreports.engine.JasperPrint;
import com.seerock.utils.DBConnection;
public class JasperReport {
static Connection conn;
public static void main(String[] args) throws FileNotFoundException {
try{
DBConnection db = new DBConnection();
conn=db.getConnection();
System.out.println("Loading Report Designs");
// InputStream input=new FileInputStream(new File("/jrxml/Blank_A4.jrxml"));
InputStream input=new FileInputStream(new File("jrxml/Blank_A4.jrxml"));
JasperDesign jasperDesign= JRXmlLoader.load(input);
System.out.println("Compiling Report Designs");
net.sf.jasperreports.engine.JasperReport jasperReport=JasperCompileManager.compileReport(jasperDesign);
System.out.println("Creating JasperPrint Object");
Map<String, String> parameters=new HashMap<String, String>();
parameters.put("ReportTitle", "PDF JasperReport");
JasperPrint jasperPrint=JasperFillManager.fillReport(jasperReport, null, conn);
//Exporting the report
OutputStream output=new FileOutputStream(new File("report/Blank_A4.pdf"));
JasperExportManager.exportReportToPdfStream(jasperPrint, output);
System.out.println("Report Generation Complete");
conn.close();
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
答案 0 :(得分:0)
<强> ERROR1 强>
文件需要存在,你需要指向它,文件在哪里,我指向的是什么?
试试这个......
File f = new File("report/Blank_A4.pdf");
System.out.println(f.getAbsolutePath());
<强>误差2。强>
连接faliure,你没有设法连接到你的数据库,url,密码,用户名,端口可能是错误的,你没有包含DBConnection的代码所以它不可能说你做错了什么
请检查一下如何连接数据库JDBC Sample example