<%@ page contentType="application/pdf;charset=UTF-8"%>
<%@ page import="net.sf.jasperreports.engine.*"%>
<%@ page import="java.io.*"%>
<%@ page import="java.util.*"%>
<%@ page import="java.sql.*"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>My JSP 'rpt.jsp' starting page</title>
</head>
<body>
<%
//报表编译之后生成的.jasper文件的存放位置
File reportFile = new File(this.getServletContext().getRealPath(
"/report/report2.jasper"));
Map parameters = new HashMap();
//"SQLSTR"是报表中定义的参数名称,其类型为String 型
//设置SQLSTR参数的内容,根据需要赋值sql语句
parameters.put("p_bk_money", 200d);
String sDBDriver = null;
String sConnection = null;
String sUser = null;
String sPassword = null;
Properties p = new Properties();
// db.properties放在cn.com.showd.struts包中
InputStream is = getClass().getResourceAsStream("/jdbc.properties");
p.load(is);
sDBDriver = p.getProperty("jtds.driverClassNamePvms");
sConnection = p.getProperty("jtds.url.dsPvms");
sUser = p.getProperty("jtds.uid");
sPassword = p.getProperty("jtds.pwd");
Properties pr = new Properties();
pr.put("user", sUser);
pr.put("password", sPassword);
pr.put("characterEncoding", "UTF-8");
pr.put("useUnicode", "true");
Class.forName(sDBDriver).newInstance();
Connection connection = DriverManager
.getConnection(sConnection, pr);
byte[] bytes = JasperRunManager.runReportToPdf(
reportFile.getPath(), parameters, connection);
response.setContentType("application/pdf");
response.setContentLength(bytes.length);
ServletOutputStream outStream = response.getOutputStream();
outStream.write(bytes, 0, bytes.length);
outStream.flush();
outStream.close();
out.clear();
out = pageContext.pushBody();
%>
</body>
</html>