版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
Web.config配置詳解
一、認(rèn)識(shí)Web.config文件
Web.config文件是一個(gè)XML文本文件,它用來儲(chǔ)存ASP.NETWeb應(yīng)用程序的配置信息(如
最常用的設(shè)置ASP.NETWeb應(yīng)用程序的身份驗(yàn)證方式),它可以出現(xiàn)在應(yīng)用程序的每一個(gè)目錄中。
當(dāng)你通過.NET新建?個(gè)Web應(yīng)用程序后,默認(rèn)情況下會(huì)在根目錄自動(dòng)創(chuàng)建一個(gè)默認(rèn)的Web.config文
件,包括默認(rèn)的配置設(shè)置,所有的子目錄都繼承它的配置設(shè)置。如果你想修改子目錄的配置設(shè)置,你可以
在該子目錄下新建一個(gè)Web.config文件。它可以提供除從父目錄繼承的配置信息以外的配置信息,也
可以重寫或修改父目錄中定義的設(shè)置。
(-).Web.config是以XML文件規(guī)范存儲(chǔ),配置文件分為以下格式
1.配置行處理程序聲明
特點(diǎn):位于配置文件的頂部,包含在<confiqSections>標(biāo)志中。
2.特定應(yīng)用程序配置
特點(diǎn):位于<appSetting>中。可以定義應(yīng)用程序的全局常量設(shè)置等信息.
3.配置節(jié)設(shè)置
特點(diǎn):位于〈system.Web>節(jié)中,控制A運(yùn)行時(shí)的行為.
4.配置節(jié)組
特點(diǎn):用vsectionGroup>標(biāo)記,可以自定義分組,可以放到<configSections>內(nèi)部或其它<se
ctionGroup>標(biāo)記的內(nèi)部.
(二).配置節(jié)的每一節(jié)
1.<configuration>節(jié)
根元素,其它節(jié)都是在它的內(nèi)部.
2.<appSetting>節(jié)
此節(jié)用于定義應(yīng)用程序設(shè)置項(xiàng)。對(duì)一些不確定設(shè)置.,還可以讓用戶根據(jù)自己實(shí)際情況自己設(shè)置
用法:
I.
<appSettings>
<addkey="Conntction"value="server=192,168.85.66;userid=sa;password=;datab
ase=Info;7>
<appSettings>
定義了一個(gè)連接字符串常量,并且在實(shí)際應(yīng)用時(shí)可以修改連接字符串,不用修改程式代碼.
II.<appSettings>
<addkey="ErrPage"value="Error.aspx"/>
<appSettings>
定義了一個(gè)錯(cuò)誤重定向頁(yè)面.
3.<compilation>節(jié)
格式:
<compilation
defaultLanguage="c#"
debug="true"
/>
I.defaultlanguage:定義后臺(tái)代碼語言,可以選擇C#和VB.net兩種語言.
Ildebug:為true時(shí),后動(dòng)aspx調(diào)試;為false不啟動(dòng)aspx調(diào)試,因而可以提高應(yīng)用程斤運(yùn)行
時(shí)的性能。一股程序員在產(chǎn)發(fā)時(shí)設(shè)置為true,交給客戶時(shí)設(shè)置為false.
4.<customErrors>節(jié)
格式:
<customErrors
mode="RemoteOnly"
defaultRedirect="error.aspx"
<errorstatusCode='*440"redirect="err440page.aspx"/>
<errorstatusCode="500"redirect="errSOOPage.aspx"/>
/>
I.mode:具有OnQff,RemoteOnly3種狀態(tài)。On表示始終顯示自定義的信息;Off表示始終
顯示詳細(xì)的借誤信息;RemoteOnly表示只對(duì)不在本地Web服務(wù)器上運(yùn)行的用戶顯示自定義
信息.
II.defaultRedirect:用于出現(xiàn)錯(cuò)誤時(shí)重定向的URL地此罡可選的
Ill.statusCode:指明錯(cuò)誤狀態(tài)碼,表明一種特定的出錯(cuò)狀態(tài).
IV.redirect:錯(cuò)誤重定向的URL.
5.<globalization>節(jié)
格式:
<globalization
requestEncoding="utf"8"
responseEncoding="utf-8"
fileEncoding="utf-8"
/>
LrequestEncoding:它用來檢查每一個(gè)發(fā)來請(qǐng)求的編碼.
II.responseEncoding:用于檢查發(fā)回的響應(yīng)內(nèi)容編碼.
III.fileEncoding:用于檢查aspxzasax等文件解析的默認(rèn)編瑪.
6.<sessionState>節(jié)
格式:
<sessionstate
mode="InProc"
stateConnectionString="tcpip=:42424"
sqlConnectionString="datasource=127.0.0.l;Trusted_Connection=yes"
cookieless="false"
timeout="20"
/>
I.mode:分為off/nproc,StateServer,SqIServer幾種狀態(tài)
這里有詳細(xì)介紹此屬性:/chengking/archive/2005/10/27/518079.aspx
II.stateConnectionString:指定A應(yīng)用程序存儲(chǔ)遠(yuǎn)程會(huì)話狀態(tài)的服務(wù)器名,默認(rèn)為本機(jī)
Ill.sqlConnectionString:當(dāng)用會(huì)話狀態(tài)數(shù)據(jù)庫(kù)時(shí),在這里設(shè)置連接字符串
IV.Cookieless:設(shè)置為true時(shí),表示不使用cookie會(huì)話狀態(tài)來標(biāo)識(shí)客戶;否則,相反.
V.TimcOut:用來定義會(huì)話狀態(tài)存儲(chǔ)的時(shí)間,超過期限,將自動(dòng)烈止會(huì)話.
web.config配置文件(默認(rèn)的配置設(shè)置)以下所有的代碼都應(yīng)該位于
<configuration>
<system.web>
和
</system.web>
</configuration>
之間,出手學(xué)習(xí)的目的下面的示例都省略了這段XML標(biāo)記。
1、<authentication>節(jié)
作用:配置ASP.NET身份驗(yàn)證支持(為Windows、Forms.PassPort,None四種)。該元素只
能在計(jì)算機(jī)、站點(diǎn)或應(yīng)用程序級(jí)別聲明。vauthentication>元素必需與〈authorization〉節(jié)
配合使用。
示例:
以下示例為基于窗體(Forms)的身份驗(yàn)證配置站點(diǎn),當(dāng)沒有?登陸的用戶訪問需要身份驗(yàn)證的網(wǎng)頁(yè),網(wǎng)頁(yè)
自動(dòng)跳轉(zhuǎn)到登陸網(wǎng)頁(yè)。
<authenticationmode="Forms">
<formsloginUrl="logon.aspx"name=".FormsAuthCookie''/>
</authentication>
其中元素loginUrl表示登陸網(wǎng)頁(yè)的名稱,name表示Cookie名稱。
2,<authorization>節(jié)
作用:控制對(duì)URL資源的客戶端訪問(如允許匿名用戶訪問)。此元素可以在任何級(jí)別(計(jì)算機(jī)、
站點(diǎn)、應(yīng)用程序、子目錄或頁(yè))上聲明。必需與〈authentication〉節(jié)配合使用。
示例:以下示例禁止匿名用戶的訪問
<authorization>
<denyusers="?'/>
</authorization>
注:你可以使用user.identitymame米獲取已經(jīng)過驗(yàn)證的當(dāng)前的用戶名:可以使用web.Security.For
msAuthentication.RedirecFromLoginPage方法將已驗(yàn)證的用戶重定向到用戶剛才請(qǐng)求的頁(yè)面.具體
的
3、<compilation>節(jié)
作用:配置ASP.NET使用的所有編譯設(shè)置。默認(rèn)的debug屬性為''True".在程序編譯完成交付使用
之后應(yīng)將其設(shè)為False(Web.config文件中有詳細(xì)說明,此處省略示例)
4,<customErrors>
作用:為ASP.NET應(yīng)用程序提供有關(guān)自定義錯(cuò)誤信息的信息。它不適用于XMLWebservi
ces中發(fā)生的錯(cuò)誤。
示例:當(dāng)發(fā)生錯(cuò)誤時(shí),將網(wǎng)頁(yè)跳轉(zhuǎn)到自定義的錯(cuò)誤頁(yè)面。
<customErrorsdefaultRedirect="ErrorPage.aspx"mode="RemoteOnly">
</customErrors>
其中元素defaultRedirect表示自定義的錯(cuò)誤網(wǎng)頁(yè)的名稱。mode元素表示:對(duì)不在本地Web服務(wù)
器上運(yùn)行的用戶顯示自定義(友好的)信息。
5、<httpRuntime>節(jié)
作用:配置ASP.NETH-TP運(yùn)行庫(kù)設(shè)置。該節(jié)可以在計(jì)算機(jī)、站點(diǎn)、應(yīng)用程序和子目錄級(jí)別聲明。
示例:控制用戶上傳文件最大為4M,最長(zhǎng)時(shí)間為60秒,最多請(qǐng)求數(shù)為100
<httpRuntimemaxRequestLength="4096"executionTimeout="60"appRequestQ
ueueLimit="100"/>
Configurationsettings.AppSettings["scon"]
ASP.NET中使用web.config配置web應(yīng)用程
序中的數(shù)據(jù)庫(kù)連接
固你會(huì)經(jīng)常碰到這種情況:幾乎在網(wǎng)站的每個(gè)頁(yè)面上,存儲(chǔ)一些全局處理信息。理想的做法是將這些信息
一次性的集中存儲(chǔ)在資料檔案庫(kù)中,而不是在網(wǎng)站的每個(gè)頁(yè)面上都重梵這樣的操作。比如說數(shù)據(jù)庫(kù)連接串
就是這樣的信息,如果這些信息不是集中存儲(chǔ)在特定區(qū)域中,而是在網(wǎng)站的每個(gè)需要連接數(shù)據(jù)庫(kù)的頁(yè)面.上
手工輸入,可以設(shè)想:當(dāng)數(shù)據(jù)庫(kù)連接串改動(dòng)時(shí)將會(huì)令人頭痛,你必須遍歷網(wǎng)站中所有連接數(shù)據(jù)庫(kù)的頁(yè)面去
修改!
在ASP.NET中,通過Web.config,你可為使用<appSettings>標(biāo)記,在這個(gè)標(biāo)記中,你可用<ad
d.../>標(biāo)記定義0到多個(gè)設(shè)置.本文中我們主要討論了如何使用web.config來配置一個(gè)web應(yīng)用程
序中的數(shù)據(jù)庫(kù)連接。
web.config文件是標(biāo)準(zhǔn)的xml文件,我們可以使用它來為一臺(tái)機(jī)器下的每一個(gè)web應(yīng)用程序或某個(gè)應(yīng)
用程序或一個(gè)目錄下的頁(yè)面來進(jìn)行設(shè)置,當(dāng)然,它也可以為一個(gè)單獨(dú)的web頁(yè)面進(jìn)行設(shè)置。
如:網(wǎng)站的主目錄是\inetpub\wwwroot\,那么我們將web.config放置于其下,那么這個(gè)網(wǎng)站中的應(yīng)
用程序?qū)⒈粀eb.config中的設(shè)置所影響。
e.g.:
<?xmlversion="1.0"encoding="gb2312"?>
<configuration>
<system.web>
<compilationdefaultlanguage="vb"debug="true"/>
<customerrorsmode="remoteonly"defaultredirect="js/error.htm">
<errorstatuscode="404"redirect="js/filenotfound.aspx"/>
<errorstatuscode="500"redirect="js/error.htm"/>
</customerrors>
<authenticationmode="windows"/>
〈authorization〉
<allowusers="*"/>
</authorization>
<httpruntimemaxrequestlength="4000"usefu11yquaIifiedredirecturl="true"executionti
meout="45"/>
<traceenabled="false"requestlimit="10"pageoutput="false"tracemode="sortbytime"
localonly="true"/>
<sessionstatemode="inproc"stateconnectionstring="tcpip=:43444"cookieles
s="false"timeout="20"/>
<globalizationrequestencoding-"gb2312"responseencoding-"gb2312"fileencodinq-"g
b2312"/>
</system.web>
<appsettings>
oddkey="connstring"value="uid=flash;password=3.1415926;database=news;server
=(local)"/>
</appsettings>
</configuration>
這里我們討論一下如何在wcb.config中設(shè)置數(shù)據(jù)庫(kù)連接。
1、連接一個(gè)數(shù)據(jù)庫(kù):
在web.config中的〈configuration〉后加入
<appsettings>
<addkey="connstring"
value="uid=flash;password=3.1415926;database=news;server=(local)"/>
</appsettings>
在程序中,你可以使用以下代碼來使用web.config中的設(shè)置:
importssystem.configuration
dimmyvarasstring
myvar=configurationsettings.appsettings("connstring"
usingsystem.configuration;
stringmyvar;
myvar=configurationsettings.appsettings["connstring"];
2、連接多個(gè)數(shù)據(jù)庫(kù)
同理,那就是使用多個(gè)不同的key值來設(shè)置
3、設(shè)置不同子目錄下應(yīng)用程序的數(shù)據(jù)庫(kù)鏈接
這是一個(gè)很有意思的方法,在設(shè)置前,先說明一下它的用途:
如果在?個(gè)虛擬目錄下有多個(gè)子目錄,每?個(gè)子目錄下下的web應(yīng)用程序都需要連接不同的數(shù)據(jù)庫(kù),這
如何做呢??
一種方法是在每一個(gè)子目錄下分別建立一個(gè)web.config,用它來設(shè)置這個(gè)目錄下的數(shù)據(jù)庫(kù)連接。但這種
方法的問題是需要維護(hù)每一個(gè)了目錄下的web.config.
方法二,是只在虛擬目錄卜建立一個(gè)web.config,在它里面設(shè)置每一個(gè)子目錄卜的應(yīng)用程序的數(shù)據(jù)庫(kù)連
接。說到這里,你會(huì)想到上面的第二種方法,使用多個(gè)不同的key值來設(shè)置,這的確是一個(gè)辦法。
這里,我想說明的是另一種方法:在虛擬目錄下布置web.config,在其中使用location標(biāo)記,使用同一
個(gè)key值來連接數(shù)據(jù)庫(kù),這樣做的好處很明顯,因?yàn)橛猛粋€(gè)key值,將導(dǎo)致在所有目錄下的應(yīng)用程序
中,都可以使用共同的語句來連接數(shù)據(jù)庫(kù),這在程序以后發(fā)生位置遷移時(shí),并不用修改程序中連接數(shù)據(jù)庫(kù)
的語句。
具體設(shè)置如下:
<locationpath="news">
<appsettings>
<addkey="connstring"value="uid=flyangel;password=3.1415926;database=news;serv
er=(local)"/>
</appsettings>
</location>
<locationpath="bbs">
<appsettings>
oddkey="connstring"value="uid=flyangel;password=3.1415926;database=bbs;ssrve
r=(local)"/>
</appsettings>
</location>
<locationpath="soft">
<appsettings>
oddkey=,,connstring"value="uid=flyangel;password=3.1415926;database^soft;serve
r=(local)"/>
</appsettings>
</location>
注:上例中news、bbs、soft分別是虛擬目錄下的子目錄。
程序中使用連接時(shí),采用下而的方法:
publicfunctiongetconnectionstring()
configurationsettings.appsettings().item("connstring"
endsub
最后需要說明的一點(diǎn)是,為了有效地利用.config文件,你應(yīng)當(dāng)創(chuàng)建標(biāo)準(zhǔn)的鍵名和值定義供所有的應(yīng)用程
序開發(fā)人員所用。這樣就可以讓同?項(xiàng)目的開發(fā)人員采用公共的項(xiàng)目設(shè)置。這些標(biāo)準(zhǔn)在部署應(yīng)用程序和將
其轉(zhuǎn)化為產(chǎn)品的時(shí)候非常有用。
web.config中的session配置詳解
打開某個(gè)應(yīng)用程序的配置文件Web.config后,我們會(huì)發(fā)現(xiàn)以下這段:
<sessionstate
mode="InProc"
stateConnectionString="tcpip=:42424"
sqlConnectionString="datasource=;Trusted_Connection=yes"
cookieless="false"
timeout="20"
/>
這一段就是配置應(yīng)用程序是如何存儲(chǔ)Session信息的了。我們以下的各種操作主要是針對(duì)這一段配置
展開。讓我們先看看這一段配置中所包含的內(nèi)容的意思。sessionstate節(jié)點(diǎn)的語法岫這樣的:
<sessionstatemode="Off|InProc|StateServer|SQLServer"
cookieless="true|false"
timeout="numberofminutes"
stateConnectionString="tcpip=server:port"
sqlConnectionString="sqlconnectionstring"
stateNetworkTimeout="numberofseconds"
/>
必須有的屬性是
屬性選項(xiàng)描述
mode設(shè)置將Session信息存儲(chǔ)到哪里
Off設(shè)置為不使用Session功能
InProc設(shè)置為將Session存儲(chǔ)在進(jìn)程內(nèi),就是ASP中的存儲(chǔ)方式,這是默認(rèn)值。
StateServer設(shè)置為將Session存儲(chǔ)在獨(dú)立的狀態(tài)服務(wù)中。
SQLServer設(shè)置將Session存儲(chǔ)在SQLServer中。
可選的屬性是:
屬性選項(xiàng)描述
cookieless設(shè)置客戶端的session信息存儲(chǔ)到哪里.
ture使用Cookieless模式
false使用Cookie模式,這是默認(rèn)值。
timeout設(shè)置經(jīng)過多少分鐘后服務(wù)器自動(dòng)放棄Session信息。默認(rèn)為20分鐘
stateConnectionString設(shè)置將Session信息存儲(chǔ)在狀態(tài)服務(wù)中時(shí)使用的服務(wù)器名稱和端口號(hào),例如:
"tcpip=:42424"。當(dāng)mode的值是StateServerJt,這個(gè)屬性是必需的。
sqlConnectionString設(shè)置與SQLServer■連接時(shí)的連接字符串。例如"datasource=localhost;Inte
gratedSecurity=SSPI;InitialCatalog=northwind"o當(dāng)mode的值是SQLServer時(shí),這個(gè)屬性是
必需的。
stateNetworkTimeout設(shè)置當(dāng)使用StateServer■模式存儲(chǔ)Session狀態(tài)時(shí),經(jīng)過多少秒空閑后,斷開
Web服務(wù)器與存儲(chǔ)狀態(tài)信息的服務(wù)器的TCP/IP連接的。默認(rèn)值是10秒鐘。
ASP.NET中客戶端Session狀態(tài)的存儲(chǔ)
在我們上面的Session模型簡(jiǎn)介中,大家可以發(fā)現(xiàn)Session狀態(tài)應(yīng)該存儲(chǔ)在兩個(gè)地方,分別是客戶
端和服務(wù)器端??蛻舳酥回?fù)責(zé)保存相應(yīng)網(wǎng)站的SessionlD,而其他的Session信息則保存在服務(wù)器端。在
ASP中,客戶端的SessionlD實(shí)際是以Cookie的形式存儲(chǔ)的。如果用戶在瀏覽器的設(shè)置中選擇了禁用C
ookie,那末他也就無法享受Session的便利之處了,甚至造成不能訪問某些網(wǎng)站。為了解決以上問題,
在ASP.NET中客戶端的Session信息存儲(chǔ)方式分為:Cookie和Cookieless兩種。
ASP.NET中,默認(rèn)狀態(tài)下,在客戶端還是使用Cookie存儲(chǔ)Session信息的。如果我們想在客戶端
使用Cookieless的方式存儲(chǔ)Session信息的方法如卜.:
找到當(dāng)前Web應(yīng)用程序的根H錄,打開Web.Config文件,找到如下段落;
<sessionstate
mode="InProc"
stateConnectionString="tcpip=:42424"
sqlConnectionString="datasource=127.0.0.l;Trusted_Connection=yes"
cookieless="false"
timeout="20"
/>
這段話中的cookieless="false"改為:cookieless="true",這樣,客戶端的Session信息就不再
使用Cookie存儲(chǔ)而是將其通過URL存儲(chǔ)。關(guān)閉當(dāng)前的IE,打開?個(gè)新IE,重新訪問剛才的Web
應(yīng)用程序,就會(huì)看到類似下面的樣子:
其中,http://localhost/MyTestApplication/(ulqsek45heu3ic2a5zgdl245)/default.aspx中黑
體標(biāo)出的就是客戶端的SessionID。注意,這段信息是由HS自動(dòng)加上的,不會(huì)影響以前正常的連接。
ASP.NET中服務(wù)器端Session狀態(tài)的存儲(chǔ)
準(zhǔn)備工.作
為了您能更好的體驗(yàn)到實(shí)驗(yàn)現(xiàn)象,您可以建立一個(gè)叫做SessionState.aspx的頁(yè)面,然后把以下這
些代碼添加到vbodyx/body〉中。
<scriptrunat="server">
SubSession_Add(senderAsObject,eAsEventArgs)
Session("MySession")=textl.Value
spanl.InnerHtml="Sessiondataupdated!<P>Yoursessioncontains:<fontcolor
=red>"&Session("MySession").ToString()&"</font>"
EndSub
SubCheckSession(sendsrAsObject,eAsEventArgs)
If(Session("MySession")IsNothing)Then
spanl.InnerHtml="NOTHING,SESSIONDATALOST!"
Else
spanl.InnerHtml="Yoursessioncontains:<fontcolor=red>"&
Session("MySesson").ToString()&"</font>"
EndIf
EndSub
</script>
<formrunat="server"id="Form2">
<inputid="textl"type="text"runat="server"name="textl">
<inputtype="submit"runat="server"OnServerClick="Session_Add"
value="AddtoSessionState"id="Submitl"name="Submitl">
<inputtype="submit"runat="server"OnServerClick="CheckSession"
value="ViewSessionState"id="Submit2"name="Submit2">
</form>
<hrsize="l">
<fontsize="6"><spanid="spanl"runat="server"/></font>
這個(gè)SessionState.aspx的頁(yè)面可以用來測(cè)試在當(dāng)前的服務(wù)器上是否丟失了Session信息。
將服務(wù)器Session信息存儲(chǔ)在進(jìn)程中
讓我們來回到Web.config文件的剛才那段段落中:
<sessionstate
mode="InProc"
stateConnectionString="tcpip=:42424"
sqlConnectionString="datasource=127.0.0.l;Trusted_Connection=yes"
cookieless="false"
timeout="20"
/>
當(dāng)mode的值是InProc時(shí),說明服務(wù)器正在使用這種模式,
這種方式和以前ASP中的模式?樣,就是服務(wù)器將Session信息存儲(chǔ)在IIS進(jìn)程中。當(dāng)HS關(guān)閉、
再起后,這些信息都會(huì)丟失。但是這種模式也有自己最大好處,就是性能最高。應(yīng)為所有的Session信息
都存儲(chǔ)在了HS的進(jìn)程中,所以HS能夠很快的訪問到這些信息,這種模式的性能比進(jìn)程外存儲(chǔ)Session
信息或是在SQLServer中存儲(chǔ)Session信息都要快上很多。這種模式也是ASP.NET的默認(rèn)方式.
好了,現(xiàn)在讓我們做個(gè)試驗(yàn)。打開剛才的SessionState.aspx頁(yè)面,隨便輸入一些字符,使其存儲(chǔ)
在Session中。然后,讓我們讓HS重起。注意,并不是使當(dāng)前的站點(diǎn)停止再開始,而是在IIS中本機(jī)的
機(jī)淵名的節(jié)點(diǎn)上點(diǎn)擊鼠標(biāo)右犍,選擇重新啟動(dòng)(想當(dāng)初使用NT4時(shí),重新啟動(dòng)HS必須要重新啟動(dòng)
計(jì)算機(jī)才行,微軟真是@#$%人&)返回到Sessionstate.aspx頁(yè)面中,檢查剛才的Session信息,發(fā)現(xiàn)
信息已經(jīng)丟失了。
將服務(wù)器Session信息存儲(chǔ)在進(jìn)程外
首先,讓我們來打開管理工具->服務(wù),找到名為:ASP.NETStateService的服務(wù),啟動(dòng)它。實(shí)際
上,這個(gè)服務(wù)就是啟動(dòng)一個(gè)要保存Session信息的進(jìn)程。啟動(dòng)這個(gè)服務(wù)后,你可以從Windows任務(wù)管理
器?>進(jìn)程中看到一個(gè)名為aspnet_state.exe的進(jìn)程,這個(gè)就是我們保存Session信息的進(jìn)程。
然后,回到Web.config文件中上述的段落中,將mode的值改為StateServero保存文件后的重新
打開一個(gè)1匕打開sessionstate.aspx頁(yè)面,保住一些信息到Session中。這時(shí),讓我們重起US,再
回到SessionState.aspx頁(yè)面中查看剛才的Session信息,發(fā)現(xiàn)沒有丟失。
實(shí)際上,這種將Session信息存儲(chǔ)在進(jìn)程外的方式不光指"以將信息存儲(chǔ)在本機(jī)的進(jìn)程外,還可以將
Session信息存儲(chǔ)在其他的服務(wù)器的進(jìn)程中。這時(shí),不光需要將mode的值改為StateServer,還籥要在
stateConnectionString中配置相應(yīng)的參數(shù)。例如你的計(jì)算你是,你想把Session存儲(chǔ)在
IP為的it算機(jī)的進(jìn)程中,就帝要設(shè)置.成這樣:stateconnectionstrlng="tcpip=192.16
8.0.2:42424"。當(dāng)然,不要忘記在的計(jì)算機(jī)中裝上.NETFramework,并且啟動(dòng)ASP.N
ETStateServices服務(wù)。
將服務(wù)器Session信息存儲(chǔ)在SQLServer中
首先,還是讓我們來做一些準(zhǔn)備工作。啟動(dòng)SQLServer和SQLServer代理服務(wù)。在SQLServer
中執(zhí)行一個(gè)叫做InstalISqIState.sql的腳本文件。這個(gè)腳本文件將在SQLServer中創(chuàng)建一個(gè)用來專門
存儲(chǔ)Session信息的數(shù)據(jù)電及一個(gè)維護(hù)Session信息數(shù)據(jù)庫(kù)的SQLServer代理作業(yè)。我們可以在以
下路徑中找到那個(gè)文件:
[systemdrive]\winnt\Microsoft.NET\Framework\[version]\
然后打開查詢分析器,連接到SQLServe「服務(wù)器,打開剛才的那個(gè)文件并且執(zhí)行。稍等片刻,數(shù)據(jù)
庫(kù)及作業(yè)就建立好了。這時(shí),你可以打開企業(yè)管理器,看到新增了一個(gè)叫ASPState的數(shù)據(jù)庫(kù)。但是這個(gè)
數(shù)據(jù)庫(kù)中只是些存儲(chǔ)過程,沒有用戶表。實(shí)際上Session信息是存儲(chǔ)在了tempdb數(shù)據(jù)庫(kù)的ASPSrateT
empSessions表中的,另外一個(gè)ASPStateTempApplications表存儲(chǔ)了ASP中Application對(duì)象信息。
這兩個(gè)表也是剛才的那個(gè)腳本建立的。另外查看管理->SQLServer代理。作業(yè),發(fā)現(xiàn)也多了一個(gè)叫做A
SPState_Job_DeleteExpiredSessions的作業(yè),這個(gè)作業(yè)實(shí)際上就是每分鐘去ASPStateTempSessi
ons表中刪除過期的Session信息的。
接著,我們返回到Web.config文件,修改mode的值改為SQLServer。注意,還要同時(shí)修改sql
Connectionstring的值,格式為:
sqlConncctionString-"datosource-localhost;IntegratedSccurity-SSPI;"
其中datasource是指SQLServed艮務(wù)器的IP地址,如果SQLServer與US是一臺(tái)機(jī)子,寫1
就行了。IntegratedSecurity=SSPI的意思是使用Windows集成身份驗(yàn)證,這樣,訪問數(shù)
據(jù)庫(kù)將以ASP.NET的身份進(jìn)行,通過如此配置,能夠獲得比使用userid=sa;password=口令的SQLS
erver驗(yàn)證方式更好的安全性。當(dāng)然,如果SQLServer運(yùn)行于另一臺(tái)計(jì)算機(jī)上,你可能會(huì)需要通過Acti
veDirectory域的方式來維護(hù)兩邊驗(yàn)證的一致性。
同樣,讓我們做個(gè)試驗(yàn)。句SessionState.aspx中添加Session信息,這時(shí)發(fā)現(xiàn)Session信息已經(jīng)
存在SQLServer中了,即使你重起計(jì)算機(jī),剛才的Session信息也不會(huì)丟失?,F(xiàn)在,你已經(jīng)完全看見了
Session信息到底是什么樣子的了,而且又是存儲(chǔ)在SQLServer中的,能干什么就看你的發(fā)揮了,哈哈。
總結(jié)
通過這篇文章,你可以看到在Session的管理和維護(hù)上,ASP.NET比ASP有了很大的進(jìn)步,我們可
以更加隨意的挑選適合的方法廣。對(duì)于企業(yè)級(jí)的應(yīng)用來說,這無疑對(duì)于服務(wù)器的同步、服務(wù)器的穩(wěn)定性、
可靠性都是有利的。相信在強(qiáng)大的微軟支持下,新一代的電子商務(wù)平臺(tái)耨會(huì)搭建的更好!
同時(shí).,大家也會(huì)發(fā)現(xiàn),在這個(gè)整個(gè)技術(shù)中包括了操作系統(tǒng)、Web服務(wù)及數(shù)據(jù)庫(kù)多種技術(shù)的整合。我相
信,也許Windows沒有Unix穩(wěn)定,HS沒有Apache穩(wěn)定,SQLServer也沒有Oracle強(qiáng)大,但是,
誰可以將他們?nèi)绱送昝赖穆?lián)動(dòng)到一起呢?所以說,雖然微軟每一方面都不是太強(qiáng),但是如果把微軟的東西
都整合到一起,誰敢說他不強(qiáng)大呢?微軟就是微軟!
javascript事件列表解說
javascript事件列表解說
事件瀏覽器支持解說
—onclickIE3、N2鼠標(biāo)點(diǎn)擊時(shí)觸發(fā)此事件
般ondblclickIE4、N4鼠標(biāo)雙擊時(shí)觸發(fā)此事件
事
onmousedownIE4、N4按下鼠標(biāo)時(shí)觸發(fā)此事件
件
onmouseupIE4、N4鼠標(biāo)按下后松開鼠標(biāo)時(shí)觸發(fā)此事件
onmouseoverIE3、N2當(dāng)鼠標(biāo)移動(dòng)到某對(duì)象范圍的上方時(shí)觸發(fā)此事件
onmousemoveIE4、N4鼠標(biāo)移動(dòng)時(shí)觸發(fā)此事件
onmouseoutIE4、N3當(dāng)鼠標(biāo)離開某對(duì)象范圍時(shí)觸發(fā)此事件
onkeypressIE4、N4當(dāng)鍵盤上的某個(gè)鍵被按下并且釋放時(shí)觸發(fā)此事件.
onkeydownIE4、N4當(dāng)鍵盤上某個(gè)按鍵被按下時(shí)觸發(fā)此事件
onkeyupIE4、N4當(dāng)鍵盤上某個(gè)按鍵被投放開時(shí)觸發(fā)此事件
onabortIE4、N3圖片在下載時(shí)被用戶中斷
onbeforeunloadIE4、N當(dāng)前頁(yè)面的內(nèi)容將要被改變時(shí)觸發(fā)此事件
onerrorIE4、N3出現(xiàn)錯(cuò)誤時(shí)觸發(fā)此事件
夫
、頁(yè)面內(nèi)容完成時(shí)觸發(fā)此事件
面onloadIE3N2
相onmoveIE、N4瀏覽器的窗口被移動(dòng)時(shí)觸發(fā)此事件
美
onresizeIE4、N4當(dāng)瀏覽器的窗口大小被改變時(shí)觸發(fā)此事件
事
onscrollIE4、N瀏覽器的滾動(dòng)條位置發(fā)生變化時(shí)觸發(fā)此事件
件
瀏覽器的停止按鈕被按下時(shí)觸發(fā)此事件或者正在下載的文件被
onstopIE5、N
中斷
onunloadIE3、N2當(dāng)前頁(yè)面將被改變時(shí)觸發(fā)此事件
1
友onblurIE3、N2當(dāng)前元素失去焦點(diǎn)時(shí)觸發(fā)此事件
單.
onchangeIE3、N2當(dāng)前元素失去焦點(diǎn)并且元素的內(nèi)容發(fā)生改變而觸發(fā)此事件
相
onfocusIE3N2當(dāng)某個(gè)元素獲得焦點(diǎn)時(shí)觸發(fā)此事件
關(guān)
onresetIE4N3當(dāng)表單中RESET的屬性被激發(fā)時(shí)觸發(fā)此事件
Ji
件onsubmitIE3N2一個(gè)表單被遞交時(shí)觸發(fā)此事件
滾onbounceIE4、N在Marquee內(nèi)的內(nèi)容移動(dòng)至Marquee顯示范國(guó)之外時(shí)觸發(fā)此
事件
字
onfinishIE4、N當(dāng)Marquee元素完成需要顯示的內(nèi)容后觸發(fā)此事件
‘幕
onstartIE4、N
1;當(dāng)Marquee元素開始顯示內(nèi)容時(shí)觸發(fā)此事件
件
1
onbeforecopyIE5、N當(dāng)頁(yè)而當(dāng)前的被選擇內(nèi)容將要豆制到瀏覽者系統(tǒng)的剪貼板前觸
發(fā)此事件
onbeforecutIE5,N當(dāng)頁(yè)面中的一部分或者全部的內(nèi)容將被移離當(dāng)前頁(yè)面[剪貼]并
移動(dòng)到瀏覽者的系統(tǒng)剪貼板時(shí)觸發(fā)此事件
onbeforeeditfocusIE5、N當(dāng)前元素將要進(jìn)入編輯狀態(tài)
onbeforepasteIE5,N內(nèi)容將要從瀏覽者的系統(tǒng)剪貼板傳送[粘貼]到頁(yè)面中時(shí)觸發(fā)此
事件
onbeforeupdateIE5、N當(dāng)瀏覽者粘貼系統(tǒng)剪貼板中的內(nèi)容時(shí)通知目標(biāo)對(duì)象
oncontextmenuIE5、N當(dāng)瀏覽者按下鼠標(biāo)右鍵出現(xiàn)菜單時(shí)或者通過鍵盤的按鍵斛發(fā)頁(yè)
編
面菜單時(shí)觸發(fā)的事件
輯
oncopyIE5、N當(dāng)頁(yè)面當(dāng)前的被選擇內(nèi)容被復(fù)制后觸發(fā)此事件
事
件oncutIE5、N當(dāng)頁(yè)面當(dāng)前的被選擇內(nèi)容被剪切時(shí)觸發(fā)此事件
ondragIE5、N當(dāng)某個(gè)對(duì)象被拖動(dòng)時(shí)觸發(fā)此事件[活動(dòng)事件]
ondragdropIE、N4?個(gè)外部對(duì)象被鼠標(biāo)拖進(jìn)當(dāng)前窗口或者幀
ondragendIE5,N當(dāng)鼠標(biāo)拖動(dòng)結(jié)束時(shí)觸發(fā)此事件,即鼠標(biāo)的按鈕被釋放了
ondragenterIE5、N當(dāng)對(duì)象被鼠標(biāo)拖動(dòng)的對(duì)象進(jìn)入其容器范圍內(nèi)時(shí)觸發(fā)此事件
ondragleaveIE5、N當(dāng)對(duì)象被鼠標(biāo)拖動(dòng)的對(duì)象離開其容器范圍內(nèi)時(shí)觸發(fā)此事件
ondragoverIE5、N當(dāng)某被拖動(dòng)的對(duì)象在另?對(duì)象容器范闈內(nèi)拖動(dòng)時(shí)觸發(fā)此事件
ondragstartIE4、N當(dāng)某對(duì)象將被拖動(dòng)時(shí)觸發(fā)此事件
ondropIE5、N在一個(gè)拖動(dòng)過程中,釋放鼠標(biāo)鍵時(shí)觸發(fā)此事件
onlosecaptureIE5、N當(dāng)元素失去鼠標(biāo)移動(dòng)所形成的選擇焦點(diǎn)時(shí)觸發(fā)此事件
onpasteIE5、N當(dāng)內(nèi)容被粘貼時(shí)觸發(fā)此事件
onselectIE4、N當(dāng)文本內(nèi)容被選擇時(shí)的事件
onselectstartIE4、N當(dāng)文本內(nèi)容選擇將開妗發(fā)生時(shí)觸發(fā)的事件
onafterupdateIE4、N當(dāng)數(shù)據(jù)完成由數(shù)據(jù)源到對(duì)象的傳送時(shí)觸發(fā)此事件
oncellchangeIE5、N當(dāng)數(shù)據(jù)來源發(fā)生變化時(shí)
ondataavailableIE4、N當(dāng)數(shù)據(jù)接收完成時(shí)觸發(fā)事件
ondatasetchangedIE4、N數(shù)據(jù)在數(shù)據(jù)源發(fā)生變化時(shí)觸發(fā)的事件
數(shù)
ondatasetcompleteIE4、N當(dāng)來子數(shù)據(jù)源的全部有效數(shù)據(jù)讀取完畢時(shí)觸發(fā)此事件
,據(jù)
onerrorupdateIE4、N當(dāng)使用onBeforeUpdate事件觸發(fā)取消了數(shù)據(jù)傳送時(shí).,代替o
邢
nAfterUpdate事件
定
onrowenterIE5、N當(dāng)前數(shù)據(jù)源的數(shù)據(jù)發(fā)生變化并且有新的有效數(shù)據(jù)時(shí)觸發(fā)的事件
onrowexitIE5sN當(dāng)前數(shù)據(jù)源的數(shù)據(jù)將耍發(fā)生變化時(shí)觸發(fā)的事件
onrowsdeleteIE5、N當(dāng)前數(shù)據(jù)記錄將被刪除時(shí)觸發(fā)此事件
onrowsinsertedIE5sN當(dāng)前數(shù)據(jù)源將要插入新數(shù)據(jù)記錄時(shí)觸發(fā)此事件
onafterprintIE5、N當(dāng)文檔被打印后觸發(fā)此事件
onbeforeprintIE5、N當(dāng)文檔即將打印時(shí)觸發(fā)此事件
外
onfilterchangeIE4、N當(dāng)某個(gè)對(duì)象的濾鏡效果發(fā)生變化時(shí)觸發(fā)的事件
品
onhelpIE4、N當(dāng)瀏覽者按下F1或者瀏覽器的幫助選擇時(shí)觸發(fā)此事件
■11
當(dāng)對(duì)象的屬性之一發(fā)生變化時(shí)觸發(fā)此事件
件onpropertychangeIE5,N
onreadystatechangIE4、N
當(dāng)對(duì)象的初始化屬性值發(fā)生變化時(shí)觸發(fā)此事件
e
附錄資料:
Ehcache緩存配置
簡(jiǎn)介
Cache的配置很靈活,官方提供的Cache配置方式有好幾種。你可以
通過聲明配置、在xml中配置、在程序里配置或者調(diào)用構(gòu)造方法時(shí)傳
入不同的參數(shù)。
你可以將Cache的配置從代碼中剝離出來,也可以在使用運(yùn)行時(shí)配
置,所謂的運(yùn)行時(shí)配置無非也就是在代碼中配置。以下是運(yùn)行時(shí)配置
的好處:
?在同一個(gè)地方配置所有的Cache,這樣很容易管理Cache的
內(nèi)存和磁盤消耗。
?發(fā)布時(shí)可更改Cache配置。
?可再安裝階段就檢查出配置錯(cuò)誤信息,而避免了運(yùn)行時(shí)錯(cuò)誤。
本文將會(huì)對(duì)ehcache.xml配置文件進(jìn)行詳細(xì)的闡述。在配置的時(shí)可以
拷貝一個(gè)現(xiàn)有的ehcache.xml,如果沒有請(qǐng)點(diǎn)擊這里去下載。
ehcache-failsafe.xml
如果你調(diào)用了CacheManager默認(rèn)構(gòu)造方法去創(chuàng)建CacheManager的實(shí)
例,此方法會(huì)到classpath中找ehcache.xml文件,否則它會(huì)到類路
徑下找ehcache-failsafe.xml文件。而ehcache-failsafe.xml被包
含在jar包中,所有它肯定能找的到。
ehcache-failsafe.xml提供了一個(gè)非常簡(jiǎn)單的默認(rèn)配置,這樣可以
使用戶在沒有創(chuàng)建ehcache.xml的情況下使用Ehcache。
不過這樣做Ehcache會(huì)提醒用戶創(chuàng)建一個(gè)正確的Ehcache配置。
ehcache.xml片'段:
<ehcache>
<diskStorepath二〃java.io.tmpdir〃/>
<defaultCache
maxElementsInMemory=〃10000〃
eternal二〃false”
tinieToTdleSeconds=,/120,/
timeToLiveSeconds=/,l20〃
overflowToDisk=/,truez,
maxElementsOnDisk=”10000000〃
diskPersistem二〃false”
diskExpiryThreadIntervalSeconds=,/120
〃
memoryStoreEvictionPolicy=,,LRU,z
/>
</ehcache>
ehcache.xml和其他配置文件
在Ehcache-1.6之前的版本,只支持ASCII編碼的ehcache.xml配置
文件。在Ehcach-1.6之后版本中,支持UTF8編碼的ehcache.xml配
置文件。因?yàn)橄蚝蠹嫒?,所有采用ASCII編碼的配置文件完全沒有必
要轉(zhuǎn)換為UTF8。
一個(gè)CacheManager必須要有一個(gè)XML配置。由于磁盤路徑或是監(jiān)聽
端口,多個(gè)CacheManager使用同一個(gè)配置文件時(shí)會(huì)出現(xiàn)錯(cuò)誤。
下面是ehcache.xml具體實(shí)例以及配置指南
<ehcache
xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance
?CacheManager配置
Dmu11icastGroupPort=4446,這樣可以配置監(jiān)聽端口。
?DiskStore配置
如果你使用的DiskStore(磁盤緩存),你必須要配置DiskStore配
置項(xiàng)。如果不配置,Ehcache將會(huì)使用java.io.tmpdiro
diskStroe的“pata”屬性是用來配置磁盤緩存使用的物理路徑的,
Ehcache磁盤緩存使用的文件后綴名是.data和.index。
<disStorepalh="java.io.tmpdir”/>
?CacheManagerEventListener酉己置
我們通過CacheManagerEventListenerFactory可以實(shí)例化一個(gè)
CacheManagerPeerProvider,當(dāng)我們從CacheManager中added和
removedCache時(shí)、將通知CacheManagerPeerProvider,這樣一來,
我們就可以很方面的對(duì)CacheManager中的Cache做一些統(tǒng)計(jì)。
注冊(cè)到CacheManager的事件監(jiān)聽類名有:addingaCache和
removingaCache
<cacheManagerEventListenerFacotoryclass二"“
properties="”/>
?CacheManagerPeerProvider酉己置
在集群中CacheManager配置CacheManagerPeerProviderFactory創(chuàng)
建CacheManagerPeerProvidero具體的實(shí)例如下:
<cacheManagerPeerProviderFactoryclass=,,net.sf.ehcache.distr
ibution.
RMTCacheManagerPeerProviderFactory,z
properties=z/peerDiscovery=manual,
rmiUrls=//server1:40000/sampleCachel//server2:40000/seimple
Cache1
//serveri:40000/sampleCache21//server2:40000/sampleCache2,,
propertySeparator=〃,〃/>
?CacheManagerPeerListener配置
CacheManagerPeerListener配置是用來監(jiān)聽集群中緩存消息的分發(fā)
的。
<cacheManagerPeerListenerFactory
class=〃net?sf.ehcache.distribution.RMICacheManagerPe
erListenerFactory,/
properties=/zhostName=fully_qualifieci_hostname_or_ip,
port=40001,
socketTimeoutMiHis=120000"
propertySeparator="/>
?Cache配置
?name:Cache的唯一標(biāo)識(shí)
?maxE1ementsInMemory:內(nèi)存中最大緩存對(duì)
象數(shù)。
?maxElementsOnDisk:磁盤中最大緩存對(duì)象
數(shù),若是0表示無窮大。
?eternal:Element是否永久有效,一但設(shè)
置了,timeout將不起作用。
?overflowToDisk:配置此屬性,當(dāng)內(nèi)存中
Element數(shù)量達(dá)到maxElementsInMemory時(shí),Ehcache將會(huì)Element
寫到磁盤中。
?timoToTdleSeconds:設(shè)置Element在失效
前的允許閑置時(shí)間。僅當(dāng)element不是永久有效時(shí)使用,可選屬性,
默認(rèn)值是0,也就是可閑置時(shí)間無窮大。
timeToLiveSeconds:設(shè)置Element在失效
前允許存活時(shí)間。最大時(shí)間介于創(chuàng)建時(shí)間和失效時(shí)間之間。僅當(dāng)
element不是永久有效時(shí)使用,默認(rèn)是0.,也就是element存活時(shí)間
無窮大。
?diskPersistent:是否緩存虛擬機(jī)重啟期
數(shù)據(jù)。(這個(gè)虛擬機(jī)是指什么虛擬機(jī)一直沒看明白是什么,有高人還
希望能指點(diǎn)一二)。
?diskExpiryThreadlntervalSeconds:磁盤
失效線程運(yùn)行時(shí)間間隔,默認(rèn)是120秒。
?diskSpoolBufferSizeMB:這個(gè)參數(shù)設(shè)置
DiskStore(磁盤緩存)的緩存區(qū)大小。默認(rèn)是30MB。每個(gè)Cache都
應(yīng)該有自己的一個(gè)緩沖區(qū)。
?memoryStoreEvictionPo1icy:當(dāng)達(dá)至U
maxElementsInMemory限制時(shí),Ehcache將會(huì)根據(jù)指定的策略去清理
內(nèi)存。默認(rèn)策略是LRU(最近最少使用)。你可以設(shè)置為FIFO(先進(jìn)
先出)或是LFU(較少使用)。這里比較遺憾,Ehcache并沒有提供
一個(gè)用戶定制策略的接口,僅僅支持三種指定策略,感覺做的不夠理
想。
?CacheExceptionHandlingRfi
<cacheExceptionIIcndlerFactory
class=〃com.example.ExampleExceptionHandlerFactory/z
proper
ties二〃logLevel=FINE〃/>
總結(jié)
這里只對(duì)通用緩存的配置做了詳細(xì)的闡述:至于RMI緩存和集群緩存
可以參考這里。
下面給出幾個(gè)配置示例:
?Ehcache默認(rèn)Cache配置
<defaultCache
m£xElementsInMemory=z,10000z,
eternal=〃false”
timeToIdleSeconds=/,120//
timeToLiveSeconds=,,120//
overflowToDisk二〃true”
diskSpoo1BufferSizeMB=z/30
niaxElementsOnDisk=〃10000000〃
diskPorsistent二〃false”
diskExpiryThreadTntervalSeconds="120〃
memoryStoreEvictionPolicy二〃LRU〃
/>
Samp1eCache1配置
簡(jiǎn)單配置,在ehcache.xml文件中有此配置,在使用Ehcache前最好
將其刪除掉,自己配置。
緩存名sampleCachel,內(nèi)存中最多可緩存10000個(gè)Element,其中的
element會(huì)在閑置5分鐘或是存活10分鐘之后失效。
超過lOOOOelement時(shí),element將會(huì)輸出到磁盤中,輸出路徑是
java.io.tmpdir。
<cachename二〃sampleCachel”
maxElementsInMemory=",10000/,
maxElements0nDisk=zz1000/,
eternal二〃false”
overf1owToDisk=//1rue〃
diskSpoolBufferSizeMB=,,20,z
timeToIdleSeconds=/,300//
timeToLiveSeconds=〃600〃
memoryStoreEvictionPo1icy二〃LFU〃
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年滄州醫(yī)學(xué)高等專科學(xué)校高職單招職業(yè)適應(yīng)性考試備考題庫(kù)有答案解析
- 2026年湖南藝術(shù)職業(yè)學(xué)院?jiǎn)握芯C合素質(zhì)考試備考題庫(kù)帶答案解析
- 2026年撫州職業(yè)技術(shù)學(xué)院?jiǎn)握芯C合素質(zhì)考試備考試題帶答案解析
- 2026年貴陽幼兒師范高等??茖W(xué)校高職單招職業(yè)適應(yīng)性測(cè)試參考題庫(kù)帶答案解析
- 2026年黑龍江信息技術(shù)職業(yè)學(xué)院?jiǎn)握新殬I(yè)技能筆試備考題庫(kù)帶答案解析
- 2026年河源職業(yè)技術(shù)學(xué)院高職單招職業(yè)適應(yīng)性測(cè)試模擬試題有答案解析
- 投資融資合作協(xié)議2025年規(guī)范
- 2026年哈爾濱傳媒職業(yè)學(xué)院?jiǎn)握新殬I(yè)技能考試模擬試題帶答案解析
- 停車場(chǎng)租賃補(bǔ)充合同協(xié)議2025年標(biāo)準(zhǔn)版
- 2026年湖北生態(tài)工程職業(yè)技術(shù)學(xué)院?jiǎn)握芯C合素質(zhì)筆試模擬試題帶答案解析
- 認(rèn)識(shí)“千古第一才女”:李清照 課件
- 五年級(jí)上冊(cè)1-8單元語文園地復(fù)習(xí)知識(shí)點(diǎn)
- 娛樂場(chǎng)所安全風(fēng)險(xiǎn)分級(jí)管控表
- 啟動(dòng)子在農(nóng)業(yè)生產(chǎn)中的應(yīng)用
- 五年級(jí)上冊(cè)小數(shù)除法豎式計(jì)算練習(xí)練習(xí)300題及答案
- 礦山項(xiàng)目的投資與融資策略
- 2024年內(nèi)蒙古能源集團(tuán)有限公司招聘筆試參考題庫(kù)含答案解析
- 《半導(dǎo)體器件物理》復(fù)習(xí)題2012
- 眾辰變頻器z2400t-15gy-1說明書
- 非電量保護(hù)裝置技術(shù)說明書
- 全國(guó)行政區(qū)劃代碼
評(píng)論
0/150
提交評(píng)論