虽然什么后缀无所谓(html、shtml等),服务器端是完全可以进行自定义的处理后再返回html代码,我就想如果服务器端每次对客户端的请求都重新生成html页面,效率会怎么样,如果不是每次对客户端的请求都重新生成而是使用缓存,然后定时生成一次,效率又怎样?我想将页面以html呈现主要是考虑服务器资源,html页面也容易被google搜索到

解决方案 »

  1.   

    一、数据绑定技术  
       数据绑定技术可以使用在IE4.0以上版本的IE浏览器中,网页制作者可以灵活的改变页面风格而无需担心破坏数据显示代码,因为数据和页面是分离的,相关代码也很少。当数据更新时,只需要刷新中间显示数据的部分,而页面的其它部分不变,就好像没有刷新一样,显示效果更好;因为只下载了数据部分,网页的其它部分没有重复下载,浏览速度更快。如果灵活应用,还可以实现无刷新搜索和分页等功能。  
    二、XML数据岛              
       在HTML中,可以加入<XML>标签,从而在HTML嵌入XML格式的数据,或者引用外部的XML格式的文件。通过设置<XML>标签的ID属性,可以通过脚本访问这些数据,也可以把它与<TABLE>捆绑到一起;也可以设置<XML>的SRC属性,导入外部的XML格式数据。  
       例如,下面是一个新闻系统的XML示例:  
         1、内部嵌入  
    <HTML>  
    ...  
    <XML  id="XMLData1">  
    <?xml  version="1.0"  encoding="gb2312"?>  
    <root>  
    <news>  
               <title>你好</title>  
               <content>你好吗</content>  
               <date>2002-2-23</date>  
    </news>  
    <news>  
               <title>你好1</title>  
               <content>哈哈哈</content>  
               <date>2002-2-23</date>  
    </news>  
    <news>  
               <title>大家好哇</title>  
               <content>大家好哇1</content>  
               <date>2002-2-23</date>  
    </news>  
    </root>  
    </XML>  
    ...  
    <HTML>  
       2、外部文件  
    <HTML>  
    ...  
    <XML  id="XMLData1"  src="search.asp">  
    </XML>  
    ...  
    </HTML>  
    三、<Table>标签的属性设置  
       <TABLE>有一个DataSrc属性用于指定数据源。比如,有一个名为:XMLDS01的XML数据岛作为数据源,<TABLE>的写法就是:  
               <TABLE  DataSrc="#XMLDS01">  
               注意:要在引用的数据源名称前加#号。  
       规范的<TABLE>有三个部分:<THEAD>、<TBODY>、<TFOOT>。在数据捆绑技术中,通常把表头和表尾分别写在<THEAD>和<TFOOT>中,在其中写一些表格标题之类的文字。而<TBODY>可以对数据源提供的数据做循环显示。但是,<TD>标签不能和数据源捆绑在一起,所以需要在<TD>里加一个可捆绑的<DIV>标签作为数据的容器。例如,前面新闻系统数据捆绑的代码如下:  
    <table  datasrc="#XMLDS01"  name="tbNews">  
         <thead>    
           <tr>    
               <td>新闻标题</td>  
               <td>内容提示</td>  
               <td>日期</td>  
           </tr>  
         </thead>  
         <tbody>    
           <tr>    
               <td>  
                   <div  datafld="title"></div>  
               </td>  
               <td>  
                   <div  datafld="content"></div>  
               </td>  
               <td>  
                   <div  datafld="date"></div>  
               </td>  
           </tr>  
         </tbody>    
    </table>  
      

  2.   

    四、数据源的实现  
       上面的代码将一个HTML表格与一个名为XMLDS01的数据源绑定在一起。上面已经提到,XML数据岛引用的外部文件只要在格式上符合XML标准即可,扩展名不一定需要是.XML。所以,我们可以通过ASP产生XML格式的输出,然后通过HTML的<XML>标签与表格捆绑在一起:  
               <XML  id="XMLData1"  src="search.asp"></XML>  
               注意:XML的标签是区分大小写的!并且所有的标签都需要关闭,输出时一定要注意匹配;ASP默认的Content-Type是text/html,在这里需要通过Response.ContentType="text/xml"来设置一下,使浏览器把输出结果当xml处理。  
       示例代码:  
       在后台提供数据的search.asp文件:  
    <%  
    dbstr="Driver={Microsoft  Access  Driver  (*.mdb)};DBQ="&server.mappath("basicnews.mdb")  
    set  rs  =  Server.CreateObject("ADODB.Recordset")  
    rs.ActiveConnection  =  dbstr  
    rs.Source  =  "SELECT  *  from  tblNews1"  
    rs.CursorType  =  0  
    rs.CursorLocation  =  2  
    rs.LockType  =  3  
    rs.Open()  
     
    szXml="<?xml  version=""1.0""  encoding=""gb2312""?><root>"  
    do  while  not  rs.eof  
               szXml=szXml&"<news>"  
               szXml=szXml&"<title>"&rs("Title")&"</title>"  
               szXml=szXml&"<content>"&rs("content")&"</content>"  
               szXml=szXml&"<date>"&rs("CreaDate")&"</date>"  
               szXml=szXml&"</news>"  
               rs.movenext  
    loop  
    szXml=szXml&"</root>"  
    response.ContentType="text/xml"  
    response.write  szXml  
     
    set  rs=nothing  
    %>  
       在前台设置数据显示样式的list.html文件:  
    <HTML>  
    <HEAD>  
    <TITLE>  New  Document  </TITLE>  
    </HEAD>  
    <BODY>  
    <XML  id="XMLDS01"  src="search.asp"></XML>    
       <table  datasrc="#XMLDS01"  name="tbNews">  
           <thead>    
           <tr>    
               <td>新闻标题</td>  
               <td>内容提示</td>  
               <td>日期</td>  
           </tr>  
           </thead>  <tbody>    
           <tr>    
               <td>  
                   <div  datafld="title"></div>  
               </td>  
               <td>  
                   <div  datafld="content"></div>  
               </td>  
               <td>  
                   <div  datafld="date"></div>  
               </td>  
           </tr>  
           </tbody>    
       </table>  
    </BODY>  
    </HTML>  
       以上代码通过修改,可以实现搜索功能,只要传递搜索参数给search.asp文件,使asp文件只输出搜索后的数据。
      

  3.   

    像http://www.cnblogs.com上发表文章时候使用的freetext控件,上面的插入代码时自动改变颜色的功能有没有源码,或好的开发思路。是用javascript的正则表达式做替换吗?