小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

WEB應(yīng)用中報表打印的實現(xiàn)...

 zjsxShenwx 2007-11-30

WEB應(yīng)用中報表打印的實現(xiàn)

  作者:網(wǎng)上整理 | 所屬類別:網(wǎng)絡(luò)編程 | 類型:轉(zhuǎn)載文章 | 頁碼: 第1頁/共1頁


WEB應(yīng)用中報表打印的實現(xiàn)

  隨著世界范圍內(nèi)Internet環(huán)境的形成,全球正進入一個以網(wǎng)絡(luò)為中心的計算時代。Web模型是在傳統(tǒng)的C/S模型的基礎(chǔ)上發(fā)展起來的一種新的Browser/Server計算模式。Browser/Server模型簡化了C/S中的客戶端,客戶端只需裝上操作系統(tǒng)、網(wǎng)絡(luò)協(xié)議軟件及瀏覽器;而服務(wù)器端則集中了所有的應(yīng)用邏輯,開發(fā)、維護等幾乎所有工作也都集中在服務(wù)器端。這時的客戶機被稱為瘦客戶機,服務(wù)器被稱為肥服務(wù)器。而WEB應(yīng)用中的客戶端的報表打印則沒有C/S模型那么容易實現(xiàn),如何在不使用ActiveX控件的情況下,實現(xiàn)打印字體、字體顏色、表格寬度、打印紙型等的設(shè)置。下面就以一個小例子來說明。

  一、 創(chuàng)建數(shù)據(jù)庫

  用 ACCESS創(chuàng)建一個名為user.mdb的數(shù)據(jù)庫,然后建一張名為user的表,表結(jié)構(gòu)如下:

字段名稱 數(shù)據(jù)類型

username 文本

name 文本

sex 文本

  二、 在asp中的實現(xiàn)

  創(chuàng)建一個名為aspreport.asp的文件,其源代碼如下:

<%

@#等到文本緩沖完才顯示

response.buffer = true

dim accessdb, cn, rs, sql

@#數(shù)據(jù)庫名

accessdb="user.mdb"

@#連接數(shù)據(jù)庫

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

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

@#創(chuàng)建記錄集

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

@#查詢語句

sql = "select * from user "

@#開始查詢

rs.Open sql, cn

%>

<%

@#告訴瀏覽器用word來顯示文檔內(nèi)容

Response.ContentType = "application/msword"

@#文檔設(shè)定

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 %>

<%

@#關(guān)閉記錄集

rs.close

set rs=nothing

response.flush

response.end

%>

</table>

</body>

</html>

  把上面的report.asp文件和user.mdb數(shù)據(jù)庫放在同一目錄下,再用iis或pws把他們所在的目錄發(fā)布,打開瀏覽器,只要客戶端機子上有裝word,就會自動調(diào)用word以內(nèi)嵌方式在瀏覽器上顯示,此時完全可以像使用word一樣來調(diào)整和打印。

  三、 在jsp中的實現(xiàn)

  創(chuàng)建一個名為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數(shù)據(jù)庫

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的服務(wù)器以TOMCAT為例,把上面的jspreport.jsp和user.mdb放在TOMCAT的root目錄下。在控制面板的ODBC中建立相應(yīng)的DSN,類型mdb數(shù)據(jù)庫,數(shù)據(jù)源名為user。啟動TOMCAT,輸入相應(yīng)的url,就可以看到和以上面asp一樣的效果。

  以上只是一個簡單的例子,在作報表時,可以先用word設(shè)計好,然后另存為網(wǎng)頁,再利用此網(wǎng)頁改編成相應(yīng)的腳本,就可以達到較好的效果。此方法有一個限制就是客戶端要有word軟件,但是會比使用ActiveX控件安全和方便,而且服務(wù)器端使用的平臺與WebServer是可以比較靈活的,特別適用于基于web的OA系統(tǒng)。

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多