变态重口极致另类在线-波多久久夜色精品国产-波多野结衣在线观看一区-波多野结衣在线观看一区二区-污污的网站免费阅读-污污视频网址

當前位置:首頁文章首頁 IT學院 IT技術

非數據庫實現數據對象的實例及說明

作者:  來源:  發布時間:2011-6-15 15:23:37  點擊:

本文提供給大家學習分享的是關于ASP中非數據庫實現數據對象的實例及說明,希望能給大家帶來幫助或啟發。

有些時候,在資源有限及功能簡單的情況下,利用文件管理本身就能很好的實現一個系統,又何必非用數據庫不可呢?

  好的,開說ASP程序,ASP程序強大的原因主要在于COM對象的擴展,所以在一陣的頭腦風暴后,打起了一套組合拳:Scripting.FileSystemObject,Scripting.Dictionary以及Msxml2.DOMDocument.4.0。

  下面就以文件管理程序為例,對實現做簡要說明:

  首先,是構思。

  1. 管理的數據對象是文件對象,而文件對象可以對應到XML中的某個結點

  2. 文件對象的結構,可以自行定義

  3. 文件對象的增加、刪除、修改以及查詢

  XML中充分利用Xpath,實現查詢比較簡單,所以構思后問題主要應該歸結為XML結點的增刪改的問題,以及對象結構的定義。增刪改不必多說,關鍵是對象結構的自定義(在面向對象中就是類的聲明)。

  接下來,是實現。

  一是結構文件

  這里結構包括:英文名字,中文顯示名,類型,顯示模版(或參照),默認值等

  其實就是類似schema的東西,然后把這些結構保存在一個文件中,很多操作時就可以在循環中自動處理了,比如顯示一個文件時,就可以按照這個結構來顯示所有屬性字段。

  如下為一個結構文件documentx.dna的示范內容:

*/DOCS=文件

*/DOCS/@VERSION=版本%%STRING%%[NUM].[NUM].[NUM].[NUM]%%1.0.0.0

*/DOCS/DOC=文件

+/DOCS/DOC/@ID=標識%%STRING%%%%=UniqueID()

+/DOCS/DOC/@HOT=人氣%%NUM%%%%0

/DOCS/DOC/TITLE=標題

/DOCS/DOC/DEPARTFROM=來文單位%%DICTIONARY%%department%%

/DOCS/DOC/@DONE=是否處理完畢%%BOOL%%%%

需要說明的是英文名稱采用Xpath的方式,是為了方便XML處理。

英文名稱前加*號表示為系統字段,同時也是非文件對象的屬性字段

英文名稱前加+表示該字段對用戶來說是只讀的,其值由系統指定。

另外前加*或者加+號也好,也有防止誤刪的原因,因為*號或+號是不會顯示給用戶的。

用=號分隔英文名稱與其他部分,而其他部分中用%%分隔,依次為中文顯示名,該項類型,顯示模版(或參照),默認值。

  需要說明的是類型,如果類型為DICTIONARY的話,顯示模版(或參照)或參照的為具體的DICTIONARY文件,DICTIONARY的保存形式,形同Delphi中TstringList的保存形式,用=號把關鍵字與值分隔:

CS1=測試單位1

CS2=測試單位2

  二是利用新建一個文件,說明顯示的問題

先看示范文件:

<% @LANGUAGE=VBSCRIPT %>

<%

Dim sKey, sValue, Sign, Pos, AttrID, Values, F, FName, Count

%>

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=gb2312">

<meta http-equiv="Content-Language" content="zh-cn">

</head>

<body>

<form method="POST" action="Documents!Save.asp">

<table border="0" width="100%" cellpadding="0" style="border-collapse: collapse">

       <tr>

              <td bgcolor="#C0C0C0"><b>新建</b></td>

       </tr>

       <tr>

              <td>

              <table border="1" width="100%" cellspacing="0" cellpadding="0" style="border-collapse: collapse" bordercolor="#000000">

                     <tr>

                            <td width="10%">項</td>

                            <td>值</td>

                     </tr>

<%

'Count = 0

'DOCUMENTX為Scripting.Dictionary對象,為documentx.dna的內容

For Each sKey In DOCUMENTX       

  Sign = Left(sKey, 1)

  If Sign<>"*" Then

    sValue = DOCUMENTX.Item(sKey)

    Values = Split(sValue & "%%%%%%", "%%")

    Pos = InStrRev(sKey, "/")

    AttrID = Right(sKey, Len(sKey) - Pos)

    If Left(AttrID,1)="@" Then

      AttrID = Mid(AttrID, 2) & "_INLINE"     '也就是說@為一般為內置屬性

    End If

    AttrID = "ATTR_" & AttrID

%>

                     <tr>

                            <td width="10%"><%=Values(0)%></td>

                            <td>

首頁 上一頁 [1] [2] [3] [4]  下一頁 尾頁

相關軟件

相關文章

文章評論

軟件按字母排列: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
主站蜘蛛池模板: 日韩免费视频播放 | free性日本| 中文字幕一区二区在线播放 | 成人高清视频在线观看大全 | 亚洲欧美日韩精品久久亚洲区色播 | 亚洲一区2区三区4区5区 | 91香蕉| 色视频免费观看 | 色婷婷影院在线视频免费播放 | 日日狠狠久久偷偷四色综合免费 | 欧美日韩在线播放成人 | 欧美成人视屏 | 日韩欧美一区二区三区不卡视频 | 深夜一级毛片 | 国产黄色a | 黄色网址视频免费 | 亚洲精品美女视频 | 国产播放啪视频免费视频 | 日韩黄色大全 | 天天操婷婷 | 亚洲欧美日韩中文不卡 | 一级特黄录像绵费播放 | 国产激情久久久久影 | 久久国产高清 | 国产高清视频在线观看不卡v | 日韩精品一区二区三区中文3d | 亚洲成人中文 | 欧美变态口味重另类牲 | 一区二区福利 | 国产精品2023 | 国产免费一区2区3区4区 | 精品国产欧美一区二区三区成人 | 国产视频一区二区在线播放 | 欧美日韩国产高清 | 人人看人人干 | 色站网 | 免费成年人视频 | 日韩精品视频美在线精品视频 | 超薄全透明无内肉色丝袜 | 青青草国产精品视频 | 在线免费观看日韩视频 |