当前位置:  技术问答>java相关

高分求解:WEB下打印有什么好办法?

    来源: 互联网  发布时间:2015-09-16

    本文导语:  做WEB编程也有好些年月了,但一真为WEB下打印的问题而苦恼,请问各位,在WEB下打印除了使用浏览器菜单、JavaScript或者用Applet,还有什么好的解决方案吗? | WEB应用中报表打印的实现    ...

做WEB编程也有好些年月了,但一真为WEB下打印的问题而苦恼,请问各位,在WEB下打印除了使用浏览器菜单、JavaScript或者用Applet,还有什么好的解决方案吗?

|
WEB应用中报表打印的实现  

  随着世界范围内Internet环境的形成,全球正进入一个以网络为中心的计算时代。Web模型是在传统的C/S模型的基础上发展起来的一种新的Browser/Server计算模式。Browser/Server模型简化了C/S中的客户端,客户端只需装上操作系统、网络协议软件及浏览器;而服务器端则集中了所有的应用逻辑,开发、维护等几乎所有工作也都集中在服务器端。这时的客户机被称为瘦客户机,服务器被称为肥服务器。而WEB应用中的客户端的报表打印则没有C/S模型那么容易实现,如何在不使用ActiveX控件的情况下,实现打印字体、字体颜色、表格宽度、打印纸型等的设置。下面就以一个小例子来说明。

  一、 创建数据库

  用 ACCESS创建一个名为user.mdb的数据库,然后建一张名为user的表,表结构如下:

字段名称 数据类型 

username  文本 

name 文本 

sex  文本 

  二、 在asp中的实现

  创建一个名为aspreport.asp的文件,其源代码如下:

<% 

'等到文本缓冲完才显示

response.buffer = true

dim accessdb, cn, rs, sql

'数据库名

accessdb="user.mdb" 

'连接数据库

cn="DRIVER={Microsoft Access Driver (*.mdb)};"

cn=cn & "DBQ=" & server.mappath(accessdb)

'创建记录集

Set rs = Server.CreateObject("ADODB.Recordset")

'查询语句

sql = "select * from user " 

'开始查询

rs.Open sql, cn

%>

<% 

'告诉浏览器用word来显示文档内容

Response.ContentType = "application/msword" 

'文档设定

response.AddHeader "content-disposition", "inline; filename=report.doc"

%>

<html>

<head>

<title>报表</title>

</head>

<body bgcolor="#FFFFFF">

<center><h1>报表</h1></center>

<table border=1 cellspacing=0 cellpadding=0 bordercolor=#000000 align=center>

<tr>

<td>用户名</td>

<td>真实姓名</td>

<td>性别</td>

</tr>

<%

'移到第一个记录

rs.movefirst

do while not rs.eof

%>

<tr>

<td><%= rs("username") %></td>

<td><%= rs("name") %></td>

<td><%= rs("sex") %></td>

</tr>

<%

'移到下一个记录

rs.movenext

loop %>

<%

'关闭记录集

rs.close

set rs=nothing

response.flush

response.end

%> 

</table>

</body>

</html> 

  把上面的report.asp文件和user.mdb数据库放在同一目录下,再用iis或pws把他们所在的目录发布,打开浏览器,只要客户端机子上有装word,就会自动调用word以内嵌方式在浏览器上显示,此时完全可以像使用word一样来调整和打印。

  三、 在jsp中的实现

  创建一个名为jspreport.jsp的文件,其源代码如下:

<%@ page contentType="application/msword;charset=gb2312" %>

<%@ page import="java.sql.*" %>

<html>

<head>

<title>报表</title>

</head>

<body bgcolor="#FFFFFF">

<center><h1>报表</h1></center>

<table border=1 cellspacing=0 cellpadding=0 bordercolor=#000000 align=center>

<tr>

<td>用户名</td>

<td>真实姓名</td>

<td>性别</td>

</tr>

<%

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 

String url="jdbc:odbc:user";

//连接user数据库

Connection con=DriverManager.getConnection (url, "", ""); 

Statement stmt=con.createStatement(); 

ResultSet rs=stmt.executeQuery("select * from user ");

//查询user表

while(rs.next()){

%>

<tr>

<td><%= rs.getString("username") %></td>

<td><%= rs.getString("name") %></td>

<td><%= rs.getString("sex") %></td>

</tr>

<%

}

%>

<%

rs.close();

stmt.close();

con.close();

%> 

</table> 

  jsp的服务器以TOMCAT为例,把上面的jspreport.jsp和user.mdb放在TOMCAT的root目录下。在控制面板的ODBC中建立相应的DSN,类型mdb数据库,数据源名为user。启动TOMCAT,输入相应的url,就可以看到和以上面asp一样的效果。

  以上只是一个简单的例子,在作报表时,可以先用word设计好,然后另存为网页,再利用此网页改编成相应的脚本,就可以达到较好的效果。此方法有一个限制就是客户端要有word软件,但是会比使用ActiveX控件安全和方便,而且服务器端使用的平台与WebServer是可以比较灵活的,特别适用于基于web的OA系统。


|
可以存为EXCEL进行打印

|
web + crystal reports

    
 
 

您可能感兴趣的文章:

  • 高分求解---如何在DOS下查杀欢乐时光病毒?用哪种杀毒软件?Windows98没法进入了!
  • 简单问题,高分求解
  • 各位大侠,高分求解
  • 操作系统 iis7站长之家
  • 高分求解jbuilder5 运行自带的jsp范例出错的问题?
  • 高分求解,不够再加
  • ################高分求解!!!!,关注有分!!!!
  • 哪里能够下载到针对InterBase的第三类的JDBC驱动程序InterClient?高分求解......
  • jsp 里面的 特殊字符“单引号”“双引号”的替换??(高分求解)
  • linux上的媒体播放(高分在线求解)
  • 调试JSP遇到的问题,高分求解
  • 高分求解:win2000访问linux
  • 高分求解 - TOMCAT中的内存泄漏问题……
  • 通讯行业里的OSS(网管)系统是什么样系统啊?干什么用的?高分求解
  • 急急急!!!高分求解linux 2.6 内核安装网卡的问题
  • 【NFS问题暴高分求解】如何知道Server端有哪些目录共享?
  • 高分求解,信号捕获
  • 三个容易bash脚本,高分求解
  • 高分求解?????一定给分
  • 从交换机分出来的机器的ip地址问题(高分求解)
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 部署Linux打印服务器的问题(高分求解)
  • 关于分页显示,分页打印的问题 高分相赠
  • 急!高分求助:水晶报表在Web上的打印问题
  • 高分求解,在线等待!如何将Jsp页面的内容转换成word文档打印出来或像word一样打印出来?
  • 怎么样在jbuilder中实现报表的预览打印功能??高分急问!!
  • 高分求救JTable打印预览程序
  • 高分求助高分求助高分求助高分求助高分求助高分求助
  • 谁参加过weblogic的证书考试,是否有经验可供参考?高分高分高高分
  • 哪里有JB6下载啊,高分相送,救命
  • 高分求救!我在uclinux上运行应用程序时出现内存分配错误,不知如何解决,解决者高分!!
  • 哪里去找中文的EJB文章?高分悬赏!
  • 有jsp的upload和download 代码么,高分相报!
  • (高分求助)请问,那里有软件开发的<设计文档>
  • 高分寻求jsp代码(网上调查系统,新闻发布系统)就这点分了
  • 高分求购做饼图、线形图的源吗?
  • 关于linu下的中文输入.(高分:300)
  • 一个简单的问题,高分求助!!!
  • 高分求购jbulider6得注册码,企业版本,个人版本都要
  • Linux远程访问的问题,高分求教:)
  • 请问哪儿有Solaris8的光盘映像文件下载???高分相赠!!!
  • 高分求“Ration Rose”&"JBuilder6.0"&"VisualCafe"
  • VJ的一个问题,高分求助,熟悉VJ得请进!
  • 高分求购:linux和unix命令大全电子文档
  • 急救:关于BLOB数据类型---在线等待,高分相送!
  • 求UNIXWARE7.11的原版下载,高分相赠,在线等待!!!
  • 关于java?高分相送!


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3