在很多企业和系统中,经常会要用到报表,而报表的产生有时候是一个不好解决的问题。
现在我在这提供一种参考的方式,通过SQL语句查询数据库,然后结合XSL技术,来实现报表。这样做的好处十分的灵活,可以将报表的样式和具体做查询的程序员工作独立开。只要商量好一致的参数就可以协同开发。
1.首先在一个JSP页面将所要显示报表的SQL语句和所定义好的XSL样式文件传入到工具类中。
index.jsp
<%@ page language="java" import="java.util.*" pageEncoding="GB18030"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<%@page buffer="none"%>
<%@page import="com.util.XmlReport"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'index.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
<%
String strSQL="select ID,Name,Password from kindergarden_user";
XmlReport report=null;
report=new XmlReport(out,session,"mydb",strSQL,request.getRealPath("Index.xsl"));
report.Print();
%>
</body>
</html>
2.通过附件中的XmlFileGenerator类的getXMLString方法。得到一个XML文件类型的STRING返回值。
在这个方法中,如果你是SQLSERVER 数据库,那么你就可以调用一个存储过程,返回一个XML串,但是你如果是MYSQL数据库,那么你就只能进行XML文件的拼接了。
但是只要保证返回的是一个XML类型的字符串即可。
3.输出
现在我在这提供一种参考的方式,通过SQL语句查询数据库,然后结合XSL技术,来实现报表。这样做的好处十分的灵活,可以将报表的样式和具体做查询的程序员工作独立开。只要商量好一致的参数就可以协同开发。
1.首先在一个JSP页面将所要显示报表的SQL语句和所定义好的XSL样式文件传入到工具类中。
index.jsp
<%@ page language="java" import="java.util.*" pageEncoding="GB18030"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<%@page buffer="none"%>
<%@page import="com.util.XmlReport"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'index.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
<%
String strSQL="select ID,Name,Password from kindergarden_user";
XmlReport report=null;
report=new XmlReport(out,session,"mydb",strSQL,request.getRealPath("Index.xsl"));
report.Print();
%>
</body>
</html>
2.通过附件中的XmlFileGenerator类的getXMLString方法。得到一个XML文件类型的STRING返回值。
在这个方法中,如果你是SQLSERVER 数据库,那么你就可以调用一个存储过程,返回一个XML串,但是你如果是MYSQL数据库,那么你就只能进行XML文件的拼接了。
但是只要保证返回的是一个XML类型的字符串即可。
3.输出