在很多企业和系统中,经常会要用到报表,而报表的产生有时候是一个不好解决的问题。
现在我在这提供一种参考的方式,通过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.输出

企业内部报表生成思路相关推荐

  1. 企业内部信息化项目管理之我所见

    最近3年多时间一直在做企业的内部信息化项目,其中经历和感慨颇多,今天有点时间来整理下自己到思路,也说说自己到见解. 公司内部到信息化项目到工期如果是内部员工做开发的话不会一般压得很紧张,但是并不代表没 ...

  2. 谈谈我在企业内部的创业经历

    谈谈企业内部的创业经历 3段内部创业经历 压力不同 现在的互联网公司都是融资,也就是说不是拿自己的钱来创业,面临的压力和拿自有资金创业自然不同,永远不至于到绝处. 而在企业内部创业,或者是新业务,或者 ...

  3. IT企业内部系统运营推广的六种方法

    说到企业内部系统的推广,一般会认为无需推广,直接下一个通知大家都得用.说到推广的方法,很多人可能直接就想到一种方法--培训.是的,企业内部系统有其特殊性,因为用户就是自己的员工,他在这里工作就得使用企 ...

  4. 公司内部计算机网络培训,企业内部培训常用的方法

    企业内部培训常用的方法 企业培训的效果在很大程度上取决于培训方法的选择,当前,企业培训的方法有很多种,不同的培训方法具有不同的特点,其自身也是各有优劣.要选择到合适有效的培训方法,需要考虑到培训的目的 ...

  5. “小而美”企业的战略规划思路解读

    战略的梳理.明晰.规划是公司的经营发展和业务模式的提升的核心,组织.薪酬.绩效等的管理优化必须基于明确的战略上才可以锦上添花.一个化工小众领域的典型"小而美"生产制造型企业如何在行 ...

  6. 如何快速搭建企业内部社区知识库?来说一说搭建企业内部知识库的作用!

    企业内部知识库的作用 1.鼓励分享 分享是互联网的精神,问答知识库能将互帮互助融入到企业文化之中.除了工作上的成就,让员工在工作之余,能够体会到帮助他人的成就和快乐. 2.提升员工个人能力 很多难懂深 ...

  7. 钉钉企业内部机器人开发——绑定群聊信息到机器人

    开发机器人的过程中,需要将用户添加的机器人存储在数据库中,对于企业内部机器人,官方只提供一个token,其他的机器人信息都没有提供. 对于自定义webhook机器人,还多了一个secret,其实,一个 ...

  8. 企业内部培训和外部培训的区分

    导读:在企业培训预算投入中,常见的有两种模式--内部培训和外部培训. 内部培训是指企业为了提升人员素质或技能.促进员工绩效改进,凭借自身的资源和力量来实施的培训和学习活动. 一般而言,内部培训是企业培 ...

  9. 企业内部应用与钉钉的集成

    前言:废话不多说,上手就干 1.这里使用的是钉钉的h5微应用,pc端应用,至于在钉钉内怎么创建h5微应用,这里就不在一一述说了,百度也行,看钉钉官方文档也行,主要是我不想截屏了,太麻烦了,哈哈: 2. ...

  10. 用python实现钉钉Outgoing机器人(企业内部机器人)全过程

    不多说,先上最终效果图 [Python钉钉Outgoing机器人初步研究 再上一段连接,后续所有过程都是在大佬的思路下进行的,代码也是从大佬这里复制的,只是稍微改动的一部分,大家可以在联调通过能实现交 ...

最新文章

  1. SSL/TLS原理详解
  2. 项目开发过程中遇到的一些问题和解决办法(逐渐添加)
  3. 福州大学2013java期末试卷_2020-11-04:java里,总体说一下集合框架。
  4. 主成分分析 PCA算法
  5. 软件级负载均衡器(LVS/HAProxy/Nginx)的特点简介和对比
  6. python 正则表达式 re.findall()方法
  7. 一、【用django2.0来开发】 环境部署和初始化项目
  8. 第14、15教学周作业
  9. cf1556B B. Take Your Places!
  10. innodb下的mvcc_从InnoDB了解MVCC
  11. arduino 休眠 节能_优化arduino程序存储空间
  12. php中的echo单引号_PHP 邮件漏洞小结
  13. 计算机里一共录入多少个汉字,计算机操作员之汉字输入方法
  14. 【Vue报错】This is probably not a problem with npm. There is likely additional logging output above
  15. STM32F103ZG单片机解密确保成功 ST芯片解密
  16. 易企秀如何生成图片_易企秀如何制作圆形照片
  17. Celus 使用 AI 实现电路板设计的自动化
  18. 怎么查看笔记本内存条型号_内存条,详细教您怎么查看内存条的型号
  19. jenkins插件管理提示_jenkins插件管理及安装
  20. 3Dmax基础:游戏建模渲染小技巧

热门文章

  1. c语言 word转pdf,超简单的Word转换成PDF技巧,可惜很多人还不会
  2. 1、Linux软件源配置操作
  3. IDEA 2020 配置Emmylua插件仍无法调试Lua代码问题
  4. java解压zip和rar并解决乱码问题
  5. Matlab吴恩达机器学习编程练习ex5:正则化线性回归和偏差v.s. 方差Regularized Linear Regression and Bias v.s. Variance
  6. 安装pdf虚拟打印机驱动失败的解决办法(addprinterdriver找不到指定模块)
  7. Jetson Nano python中文语音播报数字距离 基于pyttsx3
  8. 软件定义数据中心:双态IT的基石
  9. LM1875官方电路图元件作用解释说明以及电路调校
  10. 关于如何查找和利用PCL库学习资源的一些心得