C#基于正则表达式实现获取网页中所有信息的网页抓取类实例

本文实例讲述了C#基于正则表达式实现获取网页中所有信息的网页抓取类。分享给大家供大家参考,具体如下:

类的代码:

using System;
using System.Data;
using System.Configuration;
using System.Net;
using System.IO;
using System.Text;
using System.Collections.Generic;
using System.Text.RegularExpressions;
using System.Threading;
using System.Web;
using System.Web.UI.MobileControls;
/// 
/// 网页类
/// 
public class WebPage
{
    #region 私有成员
    private Uri m_uri;  //url
    private List m_links;  //此网页上的链接
    private string m_title;    //标题
    private string m_html;     //HTML代码
    private string m_outstr;    //网页可输出的纯文本
    private bool m_good;      //网页是否可用
    private int m_pagesize;    //网页的大小
    private static Dictionary webcookies = new Dictionary();//存放所有网页的Cookie
    #endregion
    #region 属性
    /// 
    /// 通过此属性可获得本网页的网址,只读
    /// 
    public string URL
    {
      get
      {
        return m_uri.AbsoluteUri;
      }
    }
    /// 
    /// 通过此属性可获得本网页的标题,只读
    /// 
    public string Title
    {
      get
      {
        if (m_title == "")
        {
          Regex reg = new Regex(@"(?m)]*>(?(?:\w|\W)*?)</title[^>]*>", RegexOptions.Multiline | RegexOptions.IgnoreCase);
          Match mc = reg.Match(m_html);
          if (mc.Success)
            m_title = mc.Groups["title"].Value.Trim();
        }
        return m_title;
      }
    }
    public string M_html
    {
      get
      {
        if (m_html == null)
        {
          m_html = "";
        }
        return m_html;
      }
    }
    /// <summary>
    /// 此属性获得本网页的所有链接信息,只读
    /// </summary>
    public List<Link> Links
    {
      get
      {
        if (m_links.Count == 0) getLinks();
        return m_links;
      }
    }
    /// <summary>
    /// 此属性返回本网页的全部纯文本信息,只读
    /// </summary>
    public string Context
    {
      get
      {
        if (m_outstr == "") getContext(Int16.MaxValue);
        return m_outstr;
      }
    }
    /// <summary>
    /// 此属性获得本网页的大小
    /// </summary>
    public int PageSize
    {
      get
      {
        return m_pagesize;
      }
    }
    /// <summary>
    /// 此属性获得本网页的所有站内链接
    /// </summary>
    public List<Link> InsiteLinks
    {
      get
      {
        return getSpecialLinksByUrl("^http://" + m_uri.Host, Int16.MaxValue);
      }
    }
    /// <summary>
    /// 此属性表示本网页是否可用
    /// </summary>
    public bool IsGood
    {
      get
      {
        return m_good;
      }
    }
    /// <summary>
    /// 此属性表示网页的所在的网站
    /// </summary>
    public string Host
    {
      get
      {
        return m_uri.Host;
      }
    }
    #endregion
    /// <summary>
    /// 从HTML代码中分析出链接信息
    /// </summary>
    /// <returns>List<Link></returns>
    private List<Link> getLinks()
    {
      if (m_links.Count == 0)
      {
        Regex[] regex = new Regex[2];
        regex[0] = new Regex(@"<a\shref\s*=""(?<URL>[^""]*).*?>(?<title>[^<]*)</a>", RegexOptions.IgnoreCase | RegexOptions.Singleline);
        regex[1] = new Regex("<[i]*frame[^><]+src=(\"|')?(?<url>([^>\"'\\s)])+)(\"|')?[^>]*>", RegexOptions.IgnoreCase);
        for (int i = 0; i < 2; i++)
        {
          Match match = regex[i].Match(m_html);
          while (match.Success)
          {
            try
            {
              string url = HttpUtility.UrlDecode(new Uri(m_uri, match.Groups["URL"].Value).AbsoluteUri);
              string text = "";
              if (i == 0) text = new Regex("(<[^>]+>)|(\\s)|( )|&|\"", RegexOptions.Multiline | RegexOptions.IgnoreCase).Replace(match.Groups["text"].Value, "");
              Link link = new Link();
              link.Text = text;
              link.NavigateUrl = url;
              m_links.Add(link);
            }
            catch (Exception ex) { Console.WriteLine(ex.Message); };
            match = match.NextMatch();
          }
        }
      }
      return m_links;
    }
    /// <summary>
    /// 此私有方法从一段HTML文本中提取出一定字数的纯文本
    /// </summary>
    /// <param name="instr">HTML代码</param>
    /// <param name="firstN">提取从头数多少个字</param>
    /// <param name="withLink">是否要链接里面的字</param>
    /// <returns>纯文本</returns>
    private string getFirstNchar(string instr, int firstN, bool withLink)
    {
      if (m_outstr == "")
      {
        m_outstr = instr.Clone() as string;
        m_outstr = new Regex(@"(?m)<script[^>]*>(\w|\W)*?</script[^>]*>", RegexOptions.Multiline | RegexOptions.IgnoreCase).Replace(m_outstr, "");
        m_outstr = new Regex(@"(?m)<style[^>]*>(\w|\W)*?</style[^>]*>", RegexOptions.Multiline | RegexOptions.IgnoreCase).Replace(m_outstr, "");
        m_outstr = new Regex(@"(?m)<select[^>]*>(\w|\W)*?</select[^>]*>", RegexOptions.Multiline | RegexOptions.IgnoreCase).Replace(m_outstr, "");
        if (!withLink) m_outstr = new Regex(@"(?m)<a[^>]*>(\w|\W)*?</a[^>]*>", RegexOptions.Multiline | RegexOptions.IgnoreCase).Replace(m_outstr, "");
        Regex objReg = new System.Text.RegularExpressions.Regex("(<[^>]+?>)| ", RegexOptions.Multiline | RegexOptions.IgnoreCase);
        m_outstr = objReg.Replace(m_outstr, "");
        Regex objReg2 = new System.Text.RegularExpressions.Regex("(\\s)+", RegexOptions.Multiline | RegexOptions.IgnoreCase);
        m_outstr = objReg2.Replace(m_outstr, " ");
      }
      return m_outstr.Length > firstN ? m_outstr.Substring(0, firstN) : m_outstr;
    }
    #region 公有文法
    /// <summary>
    /// 此公有方法提取网页中一定字数的纯文本,包括链接文字
    /// </summary>
    /// <param name="firstN">字数</param>
    /// <returns></returns>
    public string getContext(int firstN)
    {
      return getFirstNchar(m_html, firstN, true);
    }
    /// <summary>
    /// 此公有方法从本网页的链接中提取一定数量的链接,该链接的URL满足某正则式
    /// </summary>
    /// <param name="pattern">正则式</param>
    /// <param name="count">返回的链接的个数</param>
    /// <returns>List<Link></returns>
    public List<Link> getSpecialLinksByUrl(string pattern, int count)
    {
      if (m_links.Count == 0) getLinks();
      List<Link> SpecialLinks = new List<Link>();
      List<Link>.Enumerator i;
      i = m_links.GetEnumerator();
      int cnt = 0;
      while (i.MoveNext() && cnt < count)
      {
        if (new Regex(pattern, RegexOptions.Multiline | RegexOptions.IgnoreCase).Match(i.Current.NavigateUrl).Success)
        {
          SpecialLinks.Add(i.Current);
          cnt++;
        }
      }
      return SpecialLinks;
    }
    /// <summary>
    /// 此公有方法从本网页的链接中提取一定数量的链接,该链接的文字满足某正则式
    /// </summary>
    /// <param name="pattern">正则式</param>
    /// <param name="count">返回的链接的个数</param>
    /// <returns>List<Link></returns>
    public List<Link> getSpecialLinksByText(string pattern, int count)
    {
      if (m_links.Count == 0) getLinks();
      List<Link> SpecialLinks = new List<Link>();
      List<Link>.Enumerator i;
      i = m_links.GetEnumerator();
      int cnt = 0;
      while (i.MoveNext() && cnt < count)
      {
        if (new Regex(pattern, RegexOptions.Multiline | RegexOptions.IgnoreCase).Match(i.Current.Text).Success)
        {
          SpecialLinks.Add(i.Current);
          cnt++;
        }
      }
      return SpecialLinks;
    }
    /// <summary>
    /// 这公有方法提取本网页的纯文本中满足某正则式的文字 by 何问起
    /// </summary>
    /// <param name="pattern">正则式</param>
    /// <returns>返回文字</returns>
    public string getSpecialWords(string pattern)
    {
      if (m_outstr == "") getContext(Int16.MaxValue);
      Regex regex = new Regex(pattern, RegexOptions.Multiline | RegexOptions.IgnoreCase);
      Match mc = regex.Match(m_outstr);
      if (mc.Success)
        return mc.Groups[1].Value;
      return string.Empty;
    }
    #endregion
    #region 构造函数
    private void Init(string _url)
    {
      try
      {
        m_uri = new Uri(_url);
        m_links = new List<Link>();
        m_html = "";
        m_outstr = "";
        m_title = "";
        m_good = true;
        if (_url.EndsWith(".rar") || _url.EndsWith(".dat") || _url.EndsWith(".msi"))
        {
          m_good = false;
          return;
        }
        HttpWebRequest rqst = (HttpWebRequest)WebRequest.Create(m_uri);
        rqst.AllowAutoRedirect = true;
        rqst.MaximumAutomaticRedirections = 3;
        rqst.UserAgent = "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)";
        rqst.KeepAlive = true;
        rqst.Timeout = 10000;
        lock (WebPage.webcookies)
        {
          if (WebPage.webcookies.ContainsKey(m_uri.Host))
            rqst.CookieContainer = WebPage.webcookies[m_uri.Host];
          else
          {
            CookieContainer cc = new CookieContainer();
            WebPage.webcookies[m_uri.Host] = cc;
            rqst.CookieContainer = cc;
          }
        }
        HttpWebResponse rsps = (HttpWebResponse)rqst.GetResponse();
        Stream sm = rsps.GetResponseStream();
        if (!rsps.ContentType.ToLower().StartsWith("text/") || rsps.ContentLength > 1 << 22)
        {
          rsps.Close();
          m_good = false;
          return;
        }
        Encoding cding = System.Text.Encoding.Default;
        string contenttype = rsps.ContentType.ToLower();
        int ix = contenttype.IndexOf("charset=");
        if (ix != -1)
        {
          try
          {
            cding = System.Text.Encoding.GetEncoding(rsps.ContentType.Substring(ix + "charset".Length + 1));
          }
          catch
          {
            cding = Encoding.Default;
          }
          //该处视情况而定 有的需要解码
          //m_html = HttpUtility.HtmlDecode(new StreamReader(sm, cding).ReadToEnd());
          m_html = new StreamReader(sm, cding).ReadToEnd();
        }
        else
        {
         //该处视情况而定 有的需要解码
          //m_html = HttpUtility.HtmlDecode(new StreamReader(sm, cding).ReadToEnd());
          m_html = new StreamReader(sm, cding).ReadToEnd();
          Regex regex = new Regex("charset=(?<cding>[^=]+)?\"", RegexOptions.IgnoreCase);
          string strcding = regex.Match(m_html).Groups["cding"].Value;
          try
          {
            cding = Encoding.GetEncoding(strcding);
          }
          catch
          {
            cding = Encoding.Default;
          }
          byte[] bytes = Encoding.Default.GetBytes(m_html.ToCharArray());
          m_html = cding.GetString(bytes);
          if (m_html.Split('?').Length > 100)
          {
            m_html = Encoding.Default.GetString(bytes);
          }
        }
        m_pagesize = m_html.Length;
        m_uri = rsps.ResponseUri;
        rsps.Close();
      }
      catch (Exception ex)
      {
      }
    }
    public WebPage(string _url)
    {
      string uurl = "";
      try
      {
        uurl = Uri.UnescapeDataString(_url);
        _url = uurl;
      }
      catch { };
      Init(_url);
    }
    #endregion
}

</pre> 
 </div> 
 <p>调用:</p> 
 <div class="jb51code"> 
  <pre class="brush:csharp;">
WebPage webInfo = new WebPage("http://hovertree.net/");
webInfo.Context;//不包含html标签的所有内容
webInfo.M_html;//包含html标签的内容 by 何问起

</pre> 
 </div> 
 <p><span style="color: #800000"><strong>PS:这里再为大家提供2款非常方便的正则表达式工具供大家参考使用:</strong></span></p> 
 <p><span style="color: #ff6600"><strong>JavaScript正则表达式在线测试工具:<br> </strong></span>http://tools.jb51.net/regex/javascript</p> 
 <p><span style="color: #ff6600"><strong>正则表达式在线生成工具:<br> </strong></span>http://tools.jb51.net/regex/create_reg</p> 
 <p>更多关于C#相关内容感兴趣的读者可查看本站专题:《C#正则表达式用法总结》、《C#编码操作技巧总结》、《C#中XML文件操作技巧汇总》、《C#常见控件用法教程》、《WinForm控件用法总结》、《C#数据结构与算法教程》、《C#面向对象程序设计入门教程》及《C#程序设计之线程使用技巧总结》</p> 
 <p>希望本文所述对大家C#程序设计有所帮助。</p> 
 <div class="clearfix"> 
  <span id="art_bot" class="jbTestPos"></span> 
 </div> 
</div>
                            </div>
                        </div>
                    </div>
                    <!--PC和WAP自适应版-->
                    <div id="SOHUCS" sid="1175764283766681600"></div>
                    <script type="text/javascript" src="/views/front/js/chanyan.js"></script>
                    <!-- 文章页-底部 动态广告位 -->
                    <div class="youdao-fixed-ad" id="detail_ad_bottom"></div>
                </div>
                <div class="col-md-3">
                    <div class="row" id="ad">
                        <!-- 文章页-右侧1 动态广告位 -->
                        <div id="right-1" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad">
                            <div class="youdao-fixed-ad" id="detail_ad_1"> </div>
                        </div>
                        <!-- 文章页-右侧2 动态广告位 -->
                        <div id="right-2" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad">
                            <div class="youdao-fixed-ad" id="detail_ad_2"></div>
                        </div>
                        <!-- 文章页-右侧3 动态广告位 -->
                        <div id="right-3" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad">
                            <div class="youdao-fixed-ad" id="detail_ad_3"></div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
    <div class="container">
        <h4 class="pt20 mb15 mt0 border-top">你可能感兴趣的:(C#基于正则表达式实现获取网页中所有信息的网页抓取类实例)</h4>
        <div id="paradigm-article-related">
            <div class="recommend-post mb30">
                <ul class="widget-links">
                    <li><a href="/article/1902441121934536704.htm"
                           title="Docker" target="_blank">Docker</a>
                        <span class="text-muted">DRUN_K</span>
<a class="tag" taget="_blank" href="/search/docker/1.htm">docker</a><a class="tag" taget="_blank" href="/search/%E5%AE%B9%E5%99%A8/1.htm">容器</a>
                        <div>DockerDocker架构的工作流程构建镜像:通过编写dockerfile来进行构建推送镜像到仓库:将镜像上传到DockerHub或私有注册表中拉取镜像:通过dockerpull从从仓库中拉取镜像运行容器:使用镜像创建并启动容器管理容器:使用Docker客户端命令管理正在运行的容器,如查看日志、停止容器、查看资源使用情况等网络与存储:容器之间通过Docker网络连接,数据通过Docker卷或绑定</div>
                    </li>
                    <li><a href="/article/1902440240413470720.htm"
                           title="求解一次最佳平方逼近多项式" target="_blank">求解一次最佳平方逼近多项式</a>
                        <span class="text-muted">F_D_Z</span>
<a class="tag" taget="_blank" href="/search/%E6%95%B0%E7%90%86/1.htm">数理</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E5%80%BC%E5%88%86%E6%9E%90/1.htm">数值分析</a><a class="tag" taget="_blank" href="/search/%E4%B8%80%E6%AC%A1%E6%9C%80%E4%BD%B3%E5%B9%B3%E6%96%B9%E9%80%BC%E8%BF%91%E5%A4%9A%E9%A1%B9%E5%BC%8F/1.htm">一次最佳平方逼近多项式</a>
                        <div>例设f(x)=1+x2f(x)=\sqrt{1+x^2}f(x)=1+x2,求[0,1][0,1][0,1]上的一个一次最佳平方逼近多项式。解:d0=∫011+x2dx=12ln⁡(1+2)+22≈1.147d_0=\int_{0}^{1}\sqrt{1+x^2}dx=\frac{1}{2}\ln(1+\sqrt{2})+\frac{\sqrt{2}}{2}\approx1.147d0=∫011+</div>
                    </li>
                    <li><a href="/article/1902440239432003584.htm"
                           title="勒让德多项式" target="_blank">勒让德多项式</a>
                        <span class="text-muted">F_D_Z</span>
<a class="tag" taget="_blank" href="/search/%E6%95%B0%E7%90%86/1.htm">数理</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E5%80%BC%E5%88%86%E6%9E%90/1.htm">数值分析</a><a class="tag" taget="_blank" href="/search/%E5%8B%92%E8%AE%A9%E5%BE%B7%E5%A4%9A%E9%A1%B9%E5%BC%8F/1.htm">勒让德多项式</a><a class="tag" taget="_blank" href="/search/Legendre/1.htm">Legendre</a>
                        <div>勒让德多项式(Legendre)当区间为[−1,1][-1,1][−1,1],权函数ρ(x)=1ρ(x)=1ρ(x)=1时,由1,x,...,xn,...{1,x,...,x^n,...}1,x,...,xn,...正交化得到的多项式称为勒让德多项式,并用P0(x),P1(x),...,Pn(x),...P_0(x),P_1(x),...,P_n(x),...P0(x),P1(x),...,Pn(</div>
                    </li>
                    <li><a href="/article/1902439987417247744.htm"
                           title="蓝桥杯练习day1:统计能整除数字的位数" target="_blank">蓝桥杯练习day1:统计能整除数字的位数</a>
                        <span class="text-muted">你今天刷题了吗?</span>
<a class="tag" taget="_blank" href="/search/%E8%93%9D%E6%A1%A5%E6%9D%AF/1.htm">蓝桥杯</a><a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a><a class="tag" taget="_blank" href="/search/%E8%81%8C%E5%9C%BA%E5%92%8C%E5%8F%91%E5%B1%95/1.htm">职场和发展</a>
                        <div>前言给你一个整数num,返回num中能整除num的数位的数目。如果满足nums%val==0,则认为整数val可以整除nums。示例1:输入:num=7输出:1解释:7被自己整除,因此答案是1。示例2:输入:num=121输出:2解释:121可以被1整除,但无法被2整除。由于1出现两次,所以返回2。示例3:输入:num=1248输出:4解释:1248可以被它每一位上的数字整除,因此答案是4。代码1</div>
                    </li>
                    <li><a href="/article/1902439735096307712.htm"
                           title="python类方法和类的实例化" target="_blank">python类方法和类的实例化</a>
                        <span class="text-muted">Cachel wood</span>
<a class="tag" taget="_blank" href="/search/%E7%A8%8B%E5%BA%8F%E8%AE%BE%E8%AE%A1%E6%9D%82%E4%BA%8B/1.htm">程序设计杂事</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/mysql/1.htm">mysql</a><a class="tag" taget="_blank" href="/search/hive/1.htm">hive</a><a class="tag" taget="_blank" href="/search/sql/1.htm">sql</a><a class="tag" taget="_blank" href="/search/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/1.htm">机器学习</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a>
                        <div>文章目录类方法实例方法类方法静态方法特殊方法私有方法Python类的实例化1.调用`__new__`方法2.调用`__init__`方法3.返回实例对象总结类方法在Python里,类的自定义方法是类中用户自行定义的函数,这些方法能够实现特定的功能,并且可以访问和操作类的属性。下面详细介绍Python类中常见的自定义方法。实例方法定义:实例方法是类中最常见的方法,它的第一个参数通常是self,代表类</div>
                    </li>
                    <li><a href="/article/1902439608860340224.htm"
                           title="图论并查集小结" target="_blank">图论并查集小结</a>
                        <span class="text-muted">_C9</span>
<a class="tag" taget="_blank" href="/search/%E5%B9%B6%E6%9F%A5%E9%9B%86/1.htm">并查集</a>
                        <div>这周学习了并查集的有关内容,简单说一下并查集并查集主要用于处理一些不相交集合的合并问题。。使用并查集时,第一步会存在一组不相交的动态集合,一般都会使用一个整数表示集合中的一个元素。每个集合可能包含一个或多个元素,并选出集合中的某个元素作为代表。每个集合中具体包含了哪些元素是不关心的,具体选择哪个元素作为代表一般也是不关心的。我们关心的是,对于给定的元素,可以很快的找到这个元素所在的集合(的代表),</div>
                    </li>
                    <li><a href="/article/1902439230878052352.htm"
                           title="机器视觉工程师必须知道读码器如何选型" target="_blank">机器视觉工程师必须知道读码器如何选型</a>
                        <span class="text-muted">视觉人机器视觉</span>
<a class="tag" taget="_blank" href="/search/%E6%9D%82%E8%AF%B4/1.htm">杂说</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E7%A0%81%E7%9B%B8%E6%9C%BA/1.htm">数码相机</a><a class="tag" taget="_blank" href="/search/3d/1.htm">3d</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a><a class="tag" taget="_blank" href="/search/c%23/1.htm">c#</a>
                        <div>一、明确核心需求应用场景工业场景(产线、仓储):需高防护等级(IP65+)、抗震动/冲击、宽温工作(-20℃~50℃)。商业场景(零售、物流):注重扫描速度、多码兼容性(一维/二维码混合)。移动场景(手持设备、AGV):选择无线连接(蓝牙/Wi-Fi)、轻便设计。特殊环境(高粉尘、强光):需配备强光源补偿、高帧率图像传感器。码的类型一维码:传统激光扫描器(成本低)或线性图像式扫描器(破损码容错)。</div>
                    </li>
                    <li><a href="/article/1902438852803489792.htm"
                           title="2024年六大勒索攻击事件大盘点,“反勒索”思维助企业提前破局" target="_blank">2024年六大勒索攻击事件大盘点,“反勒索”思维助企业提前破局</a>
                        <span class="text-muted">科技云报道</span>
<a class="tag" taget="_blank" href="/search/%E5%8F%8D%E5%8B%92%E7%B4%A2/1.htm">反勒索</a>
                        <div>超20亿美元,这是2024年一场勒索攻击企业带来的直接经济损失。然而,这场攻击的“代价”远不止于此。这是真实发生在美国的事件。据安全内参消息,去年2月,美国医疗IT公司ChangeHealthcare遭受了勒索攻击,导致数字服务中断整整9个月,直至2024年12月,仍然有少量业务功能未恢复。作为美国最大的医疗支付处理公司之一,ChangeHealthcare每年处理约150亿笔交易,此次攻击不仅对</div>
                    </li>
                    <li><a href="/article/1902438474787647488.htm"
                           title="vue3 element plus 双击文字复制文字并提示复制文字成功" target="_blank">vue3 element plus 双击文字复制文字并提示复制文字成功</a>
                        <span class="text-muted">weixin_42220130</span>
<a class="tag" taget="_blank" href="/search/Element/1.htm">Element</a><a class="tag" taget="_blank" href="/search/plus/1.htm">plus</a><a class="tag" taget="_blank" href="/search/vue/1.htm">vue</a><a class="tag" taget="_blank" href="/search/%E5%A4%8D%E5%88%B6/1.htm">复制</a><a class="tag" taget="_blank" href="/search/%E5%A4%8D%E5%88%B6/1.htm">复制</a><a class="tag" taget="_blank" href="/search/element/1.htm">element</a><a class="tag" taget="_blank" href="/search/plus/1.htm">plus</a><a class="tag" taget="_blank" href="/search/vue3/1.htm">vue3</a><a class="tag" taget="_blank" href="/search/%E6%8B%B7%E8%B4%9D/1.htm">拷贝</a><a class="tag" taget="_blank" href="/search/%E6%96%87%E5%AD%97/1.htm">文字</a>
                        <div>vue3elementplus双击文字复制文字并提示复制文字成功步骤分析具体实现代码解释运行项目下面将详细介绍如何在Vue3结合ElementPlus实现双击文字复制文字并提示复制成功的功能。步骤分析创建Vue3项目:使用Vite或VueCLI创建一个新的Vue3项目。安装ElementPlus:在项目中安装ElementPlus组件库。实现双击复制功能:在组件中监听文字的双击事件,当双击时将文字</div>
                    </li>
                    <li><a href="/article/1902437844945793024.htm"
                           title="python 输入一行字符串 删除其中所有大写字母后输出_Python练习题3.17删除字符" target="_blank">python 输入一行字符串 删除其中所有大写字母后输出_Python练习题3.17删除字符</a>
                        <span class="text-muted">weixin_39624873</span>
<a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E8%BE%93%E5%85%A5%E4%B8%80%E8%A1%8C%E5%AD%97%E7%AC%A6%E4%B8%B2/1.htm">输入一行字符串</a><a class="tag" taget="_blank" href="/search/%E5%88%A0%E9%99%A4%E5%85%B6%E4%B8%AD%E6%89%80%E6%9C%89%E5%A4%A7%E5%86%99%E5%AD%97%E6%AF%8D%E5%90%8E%E8%BE%93%E5%87%BA/1.htm">删除其中所有大写字母后输出</a>
                        <div>输入一个字符串str,再输入要删除字符c,大小写不区分,将字符串str中出现的所有字符c删除。输入格式:在第一行中输入一行字符在第二行输入待删除的字符输出格式:在一行中输出删除后的字符串输入样例:在这里给出一组输入。例如:beee输出样例:在这里给出相应的输出。例如:result:b代码如下:#!/usr/bin/python#-*-coding:utf-8-*-s=input().strip()</div>
                    </li>
                    <li><a href="/article/1902437709029371904.htm"
                           title="AI人工智能代理工作流AI Agent WorkFlow:设计智能任务处理流程" target="_blank">AI人工智能代理工作流AI Agent WorkFlow:设计智能任务处理流程</a>
                        <span class="text-muted">AI天才研究院</span>
<a class="tag" taget="_blank" href="/search/%E8%AE%A1%E7%AE%97/1.htm">计算</a><a class="tag" taget="_blank" href="/search/AI%E5%A4%A7%E6%A8%A1%E5%9E%8B%E4%BC%81%E4%B8%9A%E7%BA%A7%E5%BA%94%E7%94%A8%E5%BC%80%E5%8F%91%E5%AE%9E%E6%88%98/1.htm">AI大模型企业级应用开发实战</a><a class="tag" taget="_blank" href="/search/DeepSeek/1.htm">DeepSeek</a><a class="tag" taget="_blank" href="/search/R1/1.htm">R1</a><a class="tag" taget="_blank" href="/search/%26amp%3B/1.htm">&</a><a class="tag" taget="_blank" href="/search/%E5%A4%A7%E6%95%B0%E6%8D%AEAI%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD%E5%A4%A7%E6%A8%A1%E5%9E%8B/1.htm">大数据AI人工智能大模型</a><a class="tag" taget="_blank" href="/search/%E8%AE%A1%E7%AE%97%E7%A7%91%E5%AD%A6/1.htm">计算科学</a><a class="tag" taget="_blank" href="/search/%E7%A5%9E%E7%BB%8F%E8%AE%A1%E7%AE%97/1.htm">神经计算</a><a class="tag" taget="_blank" href="/search/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/1.htm">深度学习</a><a class="tag" taget="_blank" href="/search/%E7%A5%9E%E7%BB%8F%E7%BD%91%E7%BB%9C/1.htm">神经网络</a><a class="tag" taget="_blank" href="/search/%E5%A4%A7%E6%95%B0%E6%8D%AE/1.htm">大数据</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a><a class="tag" taget="_blank" href="/search/%E5%A4%A7%E5%9E%8B%E8%AF%AD%E8%A8%80%E6%A8%A1%E5%9E%8B/1.htm">大型语言模型</a><a class="tag" taget="_blank" href="/search/AI/1.htm">AI</a><a class="tag" taget="_blank" href="/search/AGI/1.htm">AGI</a><a class="tag" taget="_blank" href="/search/LLM/1.htm">LLM</a><a class="tag" taget="_blank" href="/search/Java/1.htm">Java</a><a class="tag" taget="_blank" href="/search/Python/1.htm">Python</a><a class="tag" taget="_blank" href="/search/%E6%9E%B6%E6%9E%84%E8%AE%BE%E8%AE%A1/1.htm">架构设计</a><a class="tag" taget="_blank" href="/search/Agent/1.htm">Agent</a><a class="tag" taget="_blank" href="/search/RPA/1.htm">RPA</a>
                        <div>AI人工智能代理工作流AIAgentWorkFlow:设计智能任务处理流程作者:禅与计算机程序设计艺术/ZenandtheArtofComputerProgramming1.背景介绍1.1问题的由来在当今的数字化时代,随着数据量的爆炸式增长和复杂性的提升,传统的手动任务处理方式已经无法满足高效、准确的需求。人工智能技术的发展为自动化任务处理提供了新的可能性。AI人工智能代理(AIAgent)作为一</div>
                    </li>
                    <li><a href="/article/1902436826908520448.htm"
                           title="98-二叉树-验证二叉搜索树" target="_blank">98-二叉树-验证二叉搜索树</a>
                        <span class="text-muted">Hello_Git</span>
<a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a>
                        <div>树|深度优先搜索|二叉搜索树|二叉树一、二叉搜索树(BST)的性质首先,了解二叉搜索树(BinarySearchTree,BST)的定义和性质是解决这类问题的基础。BST的定义左子树:节点的左子树只包含小于当前节点的数。右子树:节点的右子树只包含大于当前节点的数。递归性质:左子树和右子树本身也必须是二叉搜索树。简单来说,BST具有以下特点:中序遍历BST可以得到一个递增的有序序列。每个节点的值都大</div>
                    </li>
                    <li><a href="/article/1902436827529277440.htm"
                           title="蓝桥杯练习-3.17" target="_blank">蓝桥杯练习-3.17</a>
                        <span class="text-muted">梨绘小棠</span>
<a class="tag" taget="_blank" href="/search/%E8%93%9D%E6%A1%A5%E6%9D%AF/1.htm">蓝桥杯</a><a class="tag" taget="_blank" href="/search/%E8%B4%AA%E5%BF%83%E7%AE%97%E6%B3%95/1.htm">贪心算法</a><a class="tag" taget="_blank" href="/search/c%2B%2B/1.htm">c++</a>
                        <div>蓝桥杯练习-3.17代码练习•旅行家的预算-贪心问题描述一个旅行家想驾驶汽车以最少的费用从一个城市到另一个城市(假设出发时油箱是空的)。给定两个城市之间的距离D1、汽车油箱的容量C(以升为单位)、每升汽油能行驶的距离D2、出发点每升汽油价格P和沿途油站数N(N可以为零),油站i离出发点的距离Di、每升汽油价格Pi(i=1,2,……N)。计算结果四舍五入至小数点后两位。如果无法到达目的地,则输出“N</div>
                    </li>
                    <li><a href="/article/1902435945601363968.htm"
                           title="杭州宇树科技有限公司(Hangzhou Yushu Science And Technology Co., Ltd.) [19],简称宇树,是一家从事软件和信息技术服务业民用机器人公司 [19-20]" target="_blank">杭州宇树科技有限公司(Hangzhou Yushu Science And Technology Co., Ltd.) [19],简称宇树,是一家从事软件和信息技术服务业民用机器人公司 [19-20]</a>
                        <span class="text-muted">分享是一种传递,一种快乐</span>
<a class="tag" taget="_blank" href="/search/%E6%9D%82%E5%AD%A6%E7%99%BE%E8%B4%A7%E9%93%BA-%E5%95%A5%E9%83%BD%E5%AD%A6/1.htm">杂学百货铺-啥都学</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a>
                        <div>UnitreeRoboticsisaworld-renownedcivilianroboticscompany,whichisfocusingontheR&D,production,andsalesofconsumerandindustry-classhigh-performancegeneral-purposeleggedandhumanoidrobots,six-axismanipulator</div>
                    </li>
                    <li><a href="/article/1902435819063406592.htm"
                           title="使用Deepseek书写一篇综述论文,如何提示?" target="_blank">使用Deepseek书写一篇综述论文,如何提示?</a>
                        <span class="text-muted">学术乙方</span>
<a class="tag" taget="_blank" href="/search/%E5%B0%8F%E7%9F%A5%E8%AF%86/1.htm">小知识</a><a class="tag" taget="_blank" href="/search/%E7%BB%8F%E9%AA%8C%E5%88%86%E4%BA%AB/1.htm">经验分享</a>
                        <div>使用DeepSeek撰写综述论文时,可以通过以下提示和步骤来高效完成任务:明确研究主题与范围在开始撰写之前,首先需要明确研究主题、文献综述的时间跨度、地理范畴和文献类型。这有助于聚焦研究方向,避免偏离主题。制定详细的提示词提示词的设计是高效利用DeepSeek的关键。可以参考以下模板:研究背景与现状:请帮我梳理XXX领域的研究背景与现状,包括国内外的主要研究成果和研究热点。文献筛选与阅读:请帮我筛</div>
                    </li>
                    <li><a href="/article/1902435189343186944.htm"
                           title="Linux:kubeadm⽅式部署k8s集群" target="_blank">Linux:kubeadm⽅式部署k8s集群</a>
                        <span class="text-muted">陈婷婷1</span>
<a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/kubernetes/1.htm">kubernetes</a><a class="tag" taget="_blank" href="/search/%E8%BF%90%E7%BB%B4/1.htm">运维</a><a class="tag" taget="_blank" href="/search/%E6%9C%8D%E5%8A%A1%E5%99%A8/1.htm">服务器</a><a class="tag" taget="_blank" href="/search/%E5%AE%B9%E5%99%A8/1.htm">容器</a>
                        <div>1.kubeadm创建环境k8s-master192.168.150.11k8s-node1192.168.150.12k8s-node2192.168.150.13三台节点都安装docker#Step1:安装必要的一些系统工具sudoyuminstall-yyum-utilsdevice-mapper-persistent-datalvm2#Step2:添加软件源信息sudoyum-config</div>
                    </li>
                    <li><a href="/article/1902434182194327552.htm"
                           title="洛谷P2678[NOIP2015]跳石头(二分算法)" target="_blank">洛谷P2678[NOIP2015]跳石头(二分算法)</a>
                        <span class="text-muted">猪猪成</span>
<a class="tag" taget="_blank" href="/search/C%2B%2B/1.htm">C++</a><a class="tag" taget="_blank" href="/search/%E7%AC%94%E8%AE%B0/1.htm">笔记</a><a class="tag" taget="_blank" href="/search/%E6%B4%9B%E8%B0%B7/1.htm">洛谷</a><a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a><a class="tag" taget="_blank" href="/search/c%2B%2B/1.htm">c++</a>
                        <div>题目:AC通过图如下简短的AC代码如下:#include#includeusingnamespacestd;intmain(){intl,n,m;cin>>l>>n>>m;intarr[50001];intnow,left,right,mid;left=0;right=l;//给2位置变量初始化数值;for(inti=1;i>arr[i];}arr[0]=0;intsum;//记录搬走的石块总和;</div>
                    </li>
                    <li><a href="/article/1902433804086210560.htm"
                           title="《Linux运维总结:基于银河麒麟V10+ARM64架构部署多机elasticsearch7.17.21分布式集群+单机kibana7.17.21二进制版ssl集群》" target="_blank">《Linux运维总结:基于银河麒麟V10+ARM64架构部署多机elasticsearch7.17.21分布式集群+单机kibana7.17.21二进制版ssl集群》</a>
                        <span class="text-muted">东城绝神</span>
<a class="tag" taget="_blank" href="/search/%E3%80%8ALinux%E8%BF%90%E7%BB%B4%E5%AE%9E%E6%88%98%E6%80%BB%E7%BB%93%E3%80%8B/1.htm">《Linux运维实战总结》</a><a class="tag" taget="_blank" href="/search/%E8%BF%90%E7%BB%B4/1.htm">运维</a><a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/elasticsearch/1.htm">elasticsearch</a><a class="tag" taget="_blank" href="/search/ssl/1.htm">ssl</a>
                        <div>总结:整理不易,如果对你有帮助,可否点赞关注一下?更多详细内容请参考:Linux运维实战总结一、背景elasticsearch是一个分布式、实时、高性能的搜索和分析引擎,它广泛应用于企业级搜索、日志分析、实时数据处理等领域。随着elasticsearch的广泛应用,安全性变得越来越重要。这里将从安全策略和访问控制两方面来部署elasticsearch集群安全策略涉及到数据安全、访问安全和操作安全等</div>
                    </li>
                    <li><a href="/article/1902433800709795840.htm"
                           title="Telegram bot教程:通过BotFather设置Telegram bot的命令菜单" target="_blank">Telegram bot教程:通过BotFather设置Telegram bot的命令菜单</a>
                        <span class="text-muted">鲲志说</span>
<a class="tag" taget="_blank" href="/search/Web3%E7%9B%B8%E5%85%B3/1.htm">Web3相关</a><a class="tag" taget="_blank" href="/search/%E4%B8%9A%E7%95%8C%E8%B5%84%E8%AE%AF/1.htm">业界资讯</a><a class="tag" taget="_blank" href="/search/telegram/1.htm">telegram</a><a class="tag" taget="_blank" href="/search/bot/1.htm">bot</a><a class="tag" taget="_blank" href="/search/%E7%BB%8F%E9%AA%8C%E5%88%86%E4%BA%AB/1.htm">经验分享</a><a class="tag" taget="_blank" href="/search/%E7%AC%94%E8%AE%B0/1.htm">笔记</a><a class="tag" taget="_blank" href="/search/twitter/1.htm">twitter</a><a class="tag" taget="_blank" href="/search/Telegram/1.htm">Telegram</a><a class="tag" taget="_blank" href="/search/Bot/1.htm">Bot</a>
                        <div>最近在研究Telegrambot嘛,总有些小细节可以记录了,今天就记录一个通过BotFather设置Telegrambot的命令菜单功能➡️【好看的灵魂千篇一律,有趣的鲲志一百六七!】-欢迎认识我~~作者:鲲志说(公众号、B站同名,视频号:鲲志说996)科技博主:极星会星辉大使后端研发:java、go、python、TS,前电商、现web3主理人:COC杭州开发者社区主理人、周周黑客松杭州主理人、</div>
                    </li>
                    <li><a href="/article/1902433170981187584.htm"
                           title="macos 搭建 ragflow 开发环境" target="_blank">macos 搭建 ragflow 开发环境</a>
                        <span class="text-muted">Dickence</span>
<a class="tag" taget="_blank" href="/search/macos/1.htm">macos</a>
                        <div>ragflow是一个很方便的本地RAG库。本文主要记录一下在本机的部署过程1、总体架构说明开发环境:macbookpro(m1),16G内存+512G固态因本机的内存和硬盘比较可怜,所以在服务器上部署基础docker包,本机仅运行rag-server部分。服务器环境:28核56线程,64G,CentOS82、服务器部署服务器安装docker,过程略服务器安装docker-compose,过程略安装</div>
                    </li>
                    <li><a href="/article/1902433044661334016.htm"
                           title="SQL优化之MySQL执行计划(Explain)及索引失效详解" target="_blank">SQL优化之MySQL执行计划(Explain)及索引失效详解</a>
                        <span class="text-muted">一未道</span>
<a class="tag" taget="_blank" href="/search/%23/1.htm">#</a><a class="tag" taget="_blank" href="/search/%E6%80%A7%E8%83%BD%E4%BC%98%E5%8C%96/1.htm">性能优化</a><a class="tag" taget="_blank" href="/search/%E5%A4%A7%E6%95%B0%E6%8D%AE/1.htm">大数据</a><a class="tag" taget="_blank" href="/search/sql/1.htm">sql</a><a class="tag" taget="_blank" href="/search/mysql/1.htm">mysql</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a>
                        <div>1、执行计划基础1.1、执行计划(Explain)定义在MySQL中可以通过explain关键字模拟优化器执行SQL语句,从而解析MySQL是如何处理SQL语句的。1.2、MySQL查询过程客户端向MySQL服务器发送一条查询请求服务器首先检查查询缓存,如果命中缓存,则立刻返回存储在缓存中的结果。否则进入下一阶段服务器进行SQL解析、预处理、之后由优化器生成对应的执行计划MySQL根据执行计划,调</div>
                    </li>
                    <li><a href="/article/1902432918324703232.htm"
                           title="太翌氏:学术理论生成与AI增强系统框架设计" target="_blank">太翌氏:学术理论生成与AI增强系统框架设计</a>
                        <span class="text-muted">太翌修仙笔录</span>
<a class="tag" taget="_blank" href="/search/%E6%BA%90%E5%A7%8B%E5%AD%A6%E7%A7%91/1.htm">源始学科</a><a class="tag" taget="_blank" href="/search/deepseek/1.htm">deepseek</a><a class="tag" taget="_blank" href="/search/%E7%9F%A5%E8%AF%86%E5%9B%BE%E8%B0%B1/1.htm">知识图谱</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a><a class="tag" taget="_blank" href="/search/%E9%87%8D%E6%9E%84/1.htm">重构</a><a class="tag" taget="_blank" href="/search/%E9%87%8F%E5%AD%90%E8%AE%A1%E7%AE%97/1.htm">量子计算</a><a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a>
                        <div>刚才我引导你的过程,通过:提出假说→总结理论+推导公式=形成学术理论→理论性能提升测算/知识图谱突破率测算/知识图谱重购率测算→学术价值评估→个人认知维度水平评估,这一系列流程产生的文献,组成了一个新学术理论的最基础文献库,这个也可以作为一个知识库过滤生成器来使用,也可以提升Ai性能###**学术理论生成与AI增强系统框架设计**---####**一、系统架构总览****1.核心流程模块化**``</div>
                    </li>
                    <li><a href="/article/1902432791614779392.htm"
                           title="教书育人杂志教书育人杂志社教书育人编辑部2024年第34期目录" target="_blank">教书育人杂志教书育人杂志社教书育人编辑部2024年第34期目录</a>
                        <span class="text-muted">QQ296078736</span>
<a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a>
                        <div>卷首教育没有捷径韩庆文;1教育观察法制化视角下的幼儿园爱国主义教育邓敏;曾彬;4-7教育转型视域下优化师生关系的三个着力点严挺;8-10家庭环境对幼儿性格形成的影响钟兴琴;11-13探索创新中华优秀传统文化融入中职思政教育的创新路径高书文;李金怡;吴金星;14-16新媒体时代高中音乐教育特色发展路径朱静;17-19基于绘本阅读的幼儿阅读习惯培养丁艳娥;20-22本期话题_地域文化与学科教学的融合区</div>
                    </li>
                    <li><a href="/article/1902432792101318656.htm"
                           title="黄河之声杂志黄河之声杂志社黄河之声编辑部2024年第23期目录" target="_blank">黄河之声杂志黄河之声杂志社黄河之声编辑部2024年第23期目录</a>
                        <span class="text-muted">QQ296078736</span>
<a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a>
                        <div>原创歌曲复兴之梦张杰文;薛亚东;石静;2杂诗·思乡覃艳;何家国;183我们在一起周敏;184祖国处处好风光马戈;185民族音乐学与传统音乐理论山西戏剧环境下原创音乐剧现状分析及发展思索王景璐;4-9基于音乐分析的聊斋俚曲【叠断桥】溯源研究杨晨宇;10-18从聊城尺八现状看中华优秀传统文化回流现象赵蕊;19-23徽班与徽商解飞;24-27四川白玉县“手指锅庄”艺术特征与传承发展研究李明明;28-31</div>
                    </li>
                    <li><a href="/article/1902432665500446720.htm"
                           title="教师杂志教师杂志社教师编辑部2025年第3期目录" target="_blank">教师杂志教师杂志社教师编辑部2025年第3期目录</a>
                        <span class="text-muted">QQ296078736</span>
<a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a>
                        <div>德育与管理基于差异化教学的留学生跨文化适应能力的提升策略研究柯思琼;5-7高校思政教育第一课堂与第二课堂双向育人模式构建策略研究章迎春;李聪;8-10皖西红色文化融入地方开放大学思想政治教育的策略探究马陈晨;王文韬;陈瑞丹;11-13工匠精神融入中职英语专业学生职业素养培养的策略研究吴小燕;14-16高质量发展视域下高中政治教学创新路径研究汪文刚;17-19红色文化教育融入幼儿体育游戏的路径研究陆</div>
                    </li>
                    <li><a href="/article/1902432287329415168.htm"
                           title="大众文艺杂志社大众文艺杂志大众文艺编辑部2025年第3期目录" target="_blank">大众文艺杂志社大众文艺杂志大众文艺编辑部2025年第3期目录</a>
                        <span class="text-muted">QQ296078736</span>
<a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a>
                        <div>公共文化服务研究提高基层群众音乐鉴赏水平的策略研究罗婉琳;1-3文艺评论《增广贤文》:深入剖析其中的人学智慧姚志清;4-6当代战争视阈下近20年军旅戏剧军事文化观的嬗变研究(2000~2023年)邱远望;7-9从奥威尔的《射象》看分裂的自我与身份认同何玉蔚;10-12南宋都市笔记中的临安园林及其美学意义张凯歌;13-15文博与数字化研究数字时代与媒介史视域下的多模态图书馆系统及新质书香社会建设鹿钦</div>
                    </li>
                    <li><a href="/article/1902432035021058048.htm"
                           title="《炫动漫》杂志社炫动漫杂志社炫动漫编辑部2024年第1期目录" target="_blank">《炫动漫》杂志社炫动漫杂志社炫动漫编辑部2024年第1期目录</a>
                        <span class="text-muted">QQ296078736</span>
<a class="tag" taget="_blank" href="/search/python/1.htm">python</a>
                        <div>理论新知探究中职班主任德育能力提升策略(1)叶荣琳基于核心素养下以问题为驱动的高中数学教学评一体化的课堂教学探究(4)鹿园园农村初中英语作业设计与批阅方式的创新使用(7)侯成英新课改背景下初中物理教学方法创新策略探究(10)李传荣“双减”背景下构建初中数学高效课堂的策略(13)陈苏婷精神医学本科生参加心理剧团体课程的教学效果研究(16)查莉珺;王语含;陈虹;屈远;胡华提质增效:《机械识图》高职复习</div>
                    </li>
                    <li><a href="/article/1902431656904552448.htm"
                           title="HAProxy的ACL" target="_blank">HAProxy的ACL</a>
                        <span class="text-muted">Hurry6</span>
<a class="tag" taget="_blank" href="/search/%E7%BD%91%E7%BB%9C/1.htm">网络</a><a class="tag" taget="_blank" href="/search/%E6%9C%8D%E5%8A%A1%E5%99%A8/1.htm">服务器</a><a class="tag" taget="_blank" href="/search/%E8%BF%90%E7%BB%B4/1.htm">运维</a>
                        <div>访问控制列表(ACL,AccessControlLists)是一种基于包过滤的访问控制技术,它可以根据设定的条件对经过服务器传输的数据包进行过滤(条件匹配),即对接收到的报文进行匹配和过滤,基于请求报文头部中的源地址、源端口、目标地址、目标端口、请求方法、URL、文件后缀等信息内容进行匹配并执行进一步操作,比如允许其通过或丢弃。定义ACL匹配规范,即:判断条件hdrstring,提取在一个HTTP</div>
                    </li>
                    <li><a href="/article/1902431404793327616.htm"
                           title="Eaglewood-开发单片机函数封装技巧" target="_blank">Eaglewood-开发单片机函数封装技巧</a>
                        <span class="text-muted">OverflowSummer</span>
<a class="tag" taget="_blank" href="/search/%E5%B5%8C%E5%85%A5%E5%BC%8F%E6%B3%9B%E7%94%A8%E7%9F%A5%E8%AF%86%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0/1.htm">嵌入式泛用知识学习笔记</a><a class="tag" taget="_blank" href="/search/%E5%8D%95%E7%89%87%E6%9C%BA/1.htm">单片机</a><a class="tag" taget="_blank" href="/search/%E5%B5%8C%E5%85%A5%E5%BC%8F%E7%A1%AC%E4%BB%B6/1.htm">嵌入式硬件</a>
                        <div>目录一、核心原则:(一)、高内聚低耦合:每个函数只做一件事,减少依赖。(二)、接口清晰:隐藏实现细节。(三)、可配置性:通过宏、结构体或回调支持灵活扩展。(四)、可移植性:抽象硬件差异,降低移植成本。一、模块化设计五、宏定义配置参数二、在头文件中宏定义函数三、使用结构体封装硬件配置四、回调函数机制六、错误处理与返回值封装七、硬件抽象层(HAL)八、静态函数限制作用域九、版本兼容性设计十、使用con</div>
                    </li>
                    <li><a href="/article/1902431026639073280.htm"
                           title="Rocky Linux安装部署Elasticsearch(ELK日志服务器)_rockylinux elk" target="_blank">Rocky Linux安装部署Elasticsearch(ELK日志服务器)_rockylinux elk</a>
                        <span class="text-muted">2401_83739411</span>
<a class="tag" taget="_blank" href="/search/%E7%A8%8B%E5%BA%8F%E5%91%98/1.htm">程序员</a><a class="tag" taget="_blank" href="/search/%E6%9C%8D%E5%8A%A1%E5%99%A8/1.htm">服务器</a><a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/elasticsearch/1.htm">elasticsearch</a>
                        <div>一、Elasticsearch的简介Elasticsearch是一个强大的开源搜索和分析引擎,可用于实时处理和查询大量数据。它具有高性能、可扩展性和分布式特性,支持全文搜索、聚合分析、地理空间搜索等功能,是构建实时应用和大规模数据分析平台的首选工具。二、RockyLinux系统安装链接:VMwareWorkstation下载安装(含秘钥)链接:VMwareWorkstation创建虚拟机链接:Ro</div>
                    </li>
                                <li><a href="/article/79.htm"
                                       title="基本数据类型和引用类型的初始值" target="_blank">基本数据类型和引用类型的初始值</a>
                                    <span class="text-muted">3213213333332132</span>
<a class="tag" taget="_blank" href="/search/java%E5%9F%BA%E7%A1%80/1.htm">java基础</a>
                                    <div>package com.array;

/**
 * @Description 测试初始值
 * @author FuJianyong
 * 2015-1-22上午10:31:53
 */
public class ArrayTest {
    
	ArrayTest at;
	String str;
	byte bt;
	short s;
	int i;
	long</div>
                                </li>
                                <li><a href="/article/206.htm"
                                       title="摘抄笔记--《编写高质量代码:改善Java程序的151个建议》" target="_blank">摘抄笔记--《编写高质量代码:改善Java程序的151个建议》</a>
                                    <span class="text-muted">白糖_</span>
<a class="tag" taget="_blank" href="/search/%E9%AB%98%E8%B4%A8%E9%87%8F%E4%BB%A3%E7%A0%81/1.htm">高质量代码</a>
                                    <div>        记得3年前刚到公司,同桌同事见我无事可做就借我看《编写高质量代码:改善Java程序的151个建议》这本书,当时看了几页没上心就没研究了。到上个月在公司偶然看到,于是乎又找来看看,我的天,真是非常多的干货,对于我这种静不下心的人真是帮助莫大呀。 
  
        看完整本书,也记了不少笔记</div>
                                </li>
                                <li><a href="/article/333.htm"
                                       title="【备忘】Django 常用命令及最佳实践" target="_blank">【备忘】Django 常用命令及最佳实践</a>
                                    <span class="text-muted">dongwei_6688</span>
<a class="tag" taget="_blank" href="/search/django/1.htm">django</a>
                                    <div>注意:本文基于 Django 1.8.2 版本 
  
生成数据库迁移脚本(python 脚本) 
python manage.py makemigrations polls 
 说明:polls 是你的应用名字,运行该命令时需要根据你的应用名字进行调整 
  
查看该次迁移需要执行的 SQL 语句(只查看语句,并不应用到数据库上): 
python manage.p</div>
                                </li>
                                <li><a href="/article/460.htm"
                                       title="阶乘算法之一N! 末尾有多少个零" target="_blank">阶乘算法之一N! 末尾有多少个零</a>
                                    <span class="text-muted">周凡杨</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a><a class="tag" taget="_blank" href="/search/%E9%98%B6%E4%B9%98/1.htm">阶乘</a><a class="tag" taget="_blank" href="/search/%E9%9D%A2%E8%AF%95/1.htm">面试</a><a class="tag" taget="_blank" href="/search/%E6%95%88%E7%8E%87/1.htm">效率</a>
                                    <div>                                 &n</div>
                                </li>
                                <li><a href="/article/587.htm"
                                       title="spring注入servlet" target="_blank">spring注入servlet</a>
                                    <span class="text-muted">g21121</span>
<a class="tag" taget="_blank" href="/search/Spring%E6%B3%A8%E5%85%A5/1.htm">Spring注入</a>
                                    <div>传统的配置方法是无法将bean或属性直接注入到servlet中的,配置代理servlet亦比较麻烦,这里其实有比较简单的方法,其实就是在servlet的init()方法中加入要注入的内容: 
ServletContext application = getServletContext();
WebApplicationContext wac = WebApplicationContextUtil</div>
                                </li>
                                <li><a href="/article/714.htm"
                                       title="Jenkins 命令行操作说明文档" target="_blank">Jenkins 命令行操作说明文档</a>
                                    <span class="text-muted">510888780</span>
<a class="tag" taget="_blank" href="/search/centos/1.htm">centos</a>
                                    <div> 
假设Jenkins的URL为http://22.11.140.38:9080/jenkins/ 
 
 
 
基本的格式为 
 
java 
 
基本的格式为 
 
java -jar jenkins-cli.jar [-s JENKINS_URL] command [options][args] 
 
 
 
 
下面具体介绍各个命令的作用及基本使用方法 
 
 
 
1. &nb</div>
                                </li>
                                <li><a href="/article/841.htm"
                                       title="UnicodeBlock检测中文用法" target="_blank">UnicodeBlock检测中文用法</a>
                                    <span class="text-muted">布衣凌宇</span>
<a class="tag" taget="_blank" href="/search/UnicodeBlock/1.htm">UnicodeBlock</a>
                                    <div>/**  * 判断输入的是汉字  */ public static boolean isChinese(char c) {        Character.UnicodeBlock ub = Character.UnicodeBlock.of(c);    </div>
                                </li>
                                <li><a href="/article/968.htm"
                                       title="java下实现调用oracle的存储过程和函数" target="_blank">java下实现调用oracle的存储过程和函数</a>
                                    <span class="text-muted">aijuans</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/orale/1.htm">orale</a>
                                    <div>  1.创建表:STOCK_PRICES 
   
  2.插入测试数据: 
   
  3.建立一个返回游标:  
PKG_PUB_UTILS 
   4.创建和存储过程:P_GET_PRICE 
  
   5.创建函数: 
   6.JAVA调用存储过程返回结果集 
JDBCoracle10G_INVO</div>
                                </li>
                                <li><a href="/article/1095.htm"
                                       title="Velocity Toolbox" target="_blank">Velocity Toolbox</a>
                                    <span class="text-muted">antlove</span>
<a class="tag" taget="_blank" href="/search/%E6%A8%A1%E6%9D%BF/1.htm">模板</a><a class="tag" taget="_blank" href="/search/tool/1.htm">tool</a><a class="tag" taget="_blank" href="/search/box/1.htm">box</a><a class="tag" taget="_blank" href="/search/velocity/1.htm">velocity</a>
                                    <div>velocity.VelocityUtil 
package velocity;

import org.apache.velocity.Template;
import org.apache.velocity.app.Velocity;
import org.apache.velocity.app.VelocityEngine;
import org.apache.velocity.c</div>
                                </li>
                                <li><a href="/article/1222.htm"
                                       title="JAVA正则表达式匹配基础" target="_blank">JAVA正则表达式匹配基础</a>
                                    <span class="text-muted">百合不是茶</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E6%AD%A3%E5%88%99%E8%A1%A8%E8%BE%BE%E5%BC%8F%E7%9A%84%E5%8C%B9%E9%85%8D/1.htm">正则表达式的匹配</a>
                                    <div>  
正则表达式;提高程序的性能,简化代码,提高代码的可读性,简化对字符串的操作 
  
正则表达式的用途; 
字符串的匹配

字符串的分割

字符串的查找

字符串的替换
 
  
  
  
正则表达式的验证语法 
    
  [a]    //[]表示这个字符只出现一次  ,[a] 表示a只出现一</div>
                                </li>
                                <li><a href="/article/1349.htm"
                                       title="是否使用EL表达式的配置" target="_blank">是否使用EL表达式的配置</a>
                                    <span class="text-muted">bijian1013</span>
<a class="tag" taget="_blank" href="/search/jsp/1.htm">jsp</a><a class="tag" taget="_blank" href="/search/web.xml/1.htm">web.xml</a><a class="tag" taget="_blank" href="/search/EL/1.htm">EL</a><a class="tag" taget="_blank" href="/search/EasyTemplate/1.htm">EasyTemplate</a>
                                    <div>        今天在开发过程中发现一个细节问题,由于前端采用EasyTemplate模板方法实现数据展示,但老是不能正常显示出来。后来发现竟是EL将我的EasyTemplate的${...}解释执行了,导致我的模板不能正常展示后台数据。 
        网</div>
                                </li>
                                <li><a href="/article/1476.htm"
                                       title="精通Oracle10编程SQL(1-3)PLSQL基础" target="_blank">精通Oracle10编程SQL(1-3)PLSQL基础</a>
                                    <span class="text-muted">bijian1013</span>
<a class="tag" taget="_blank" href="/search/oracle/1.htm">oracle</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a><a class="tag" taget="_blank" href="/search/plsql/1.htm">plsql</a>
                                    <div>--只包含执行部分的PL/SQL块
--set serveroutput off
begin
  dbms_output.put_line('Hello,everyone!');
end;


select * from emp;

--包含定义部分和执行部分的PL/SQL块
declare
   v_ename varchar2(5);
begin
   select </div>
                                </li>
                                <li><a href="/article/1603.htm"
                                       title="【Nginx三】Nginx作为反向代理服务器" target="_blank">【Nginx三】Nginx作为反向代理服务器</a>
                                    <span class="text-muted">bit1129</span>
<a class="tag" taget="_blank" href="/search/nginx/1.htm">nginx</a>
                                    <div>Nginx一个常用的功能是作为代理服务器。代理服务器通常完成如下的功能: 
  
 
 接受客户端请求 
 将请求转发给被代理的服务器 
 从被代理的服务器获得响应结果 
 把响应结果返回给客户端 
 实例 
本文把Nginx配置成一个简单的代理服务器 
 
 对于静态的html和图片,直接从Nginx获取 
 对于动态的页面,例如JSP或者Servlet,Nginx则将请求转发给Res</div>
                                </li>
                                <li><a href="/article/1730.htm"
                                       title="Plugin execution not covered by lifecycle configuration: org.apache.maven.plugin" target="_blank">Plugin execution not covered by lifecycle configuration: org.apache.maven.plugin</a>
                                    <span class="text-muted">blackproof</span>
<a class="tag" taget="_blank" href="/search/maven/1.htm">maven</a><a class="tag" taget="_blank" href="/search/%E6%8A%A5%E9%94%99/1.htm">报错</a>
                                    <div>转:http://stackoverflow.com/questions/6352208/how-to-solve-plugin-execution-not-covered-by-lifecycle-configuration-for-sprin 
  
maven报错: 
Plugin execution not covered by lifecycle configuration: </div>
                                </li>
                                <li><a href="/article/1857.htm"
                                       title="发布docker程序到marathon" target="_blank">发布docker程序到marathon</a>
                                    <span class="text-muted">ronin47</span>
<a class="tag" taget="_blank" href="/search/docker+%E5%8F%91%E5%B8%83%E5%BA%94%E7%94%A8/1.htm">docker 发布应用</a>
                                    <div>1 发布docker程序到marathon 1.1 搭建私有docker registry 1.1.1 安装docker regisry 
docker pull docker-registry
docker run -t -p 5000:5000 docker-registry
 下载docker镜像并发布到私有registry 
docker pull consol/tomcat-8.0
</div>
                                </li>
                                <li><a href="/article/1984.htm"
                                       title="java-57-用两个栈实现队列&&用两个队列实现一个栈" target="_blank">java-57-用两个栈实现队列&&用两个队列实现一个栈</a>
                                    <span class="text-muted">bylijinnan</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a>
                                    <div>
import java.util.ArrayList;
import java.util.List;
import java.util.Stack;

	/*
	 * Q 57 用两个栈实现队列
	 */

public class QueueImplementByTwoStacks {

	private Stack<Integer> stack1;
	pr</div>
                                </li>
                                <li><a href="/article/2111.htm"
                                       title="Nginx配置性能优化" target="_blank">Nginx配置性能优化</a>
                                    <span class="text-muted">cfyme</span>
<a class="tag" taget="_blank" href="/search/nginx/1.htm">nginx</a>
                                    <div>转载地址:http://blog.csdn.net/xifeijian/article/details/20956605 
  
大多数的Nginx安装指南告诉你如下基础知识——通过apt-get安装,修改这里或那里的几行配置,好了,你已经有了一个Web服务器了。而且,在大多数情况下,一个常规安装的nginx对你的网站来说已经能很好地工作了。然而,如果你真的想挤压出Nginx的性能,你必</div>
                                </li>
                                <li><a href="/article/2238.htm"
                                       title="[JAVA图形图像]JAVA体系需要稳扎稳打,逐步推进图像图形处理技术" target="_blank">[JAVA图形图像]JAVA体系需要稳扎稳打,逐步推进图像图形处理技术</a>
                                    <span class="text-muted">comsci</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a>
                                    <div> 
 
     对图形图像进行精确处理,需要大量的数学工具,即使是从底层硬件模拟层开始设计,也离不开大量的数学工具包,因为我认为,JAVA语言体系在图形图像处理模块上面的研发工作,需要从开发一些基础的,类似实时数学函数构造器和解析器的软件包入手,而不是急于利用第三方代码工具来实现一个不严格的图形图像处理软件...... 
 
  &nb</div>
                                </li>
                                <li><a href="/article/2365.htm"
                                       title="MonkeyRunner的使用" target="_blank">MonkeyRunner的使用</a>
                                    <span class="text-muted">dai_lm</span>
<a class="tag" taget="_blank" href="/search/android/1.htm">android</a><a class="tag" taget="_blank" href="/search/MonkeyRunner/1.htm">MonkeyRunner</a>
                                    <div>要使用MonkeyRunner,就要学习使用Python,哎 
 
先抄一段官方doc里的代码 
作用是启动一个程序(应该是启动程序默认的Activity),然后按MENU键,并截屏 
 

# Imports the monkeyrunner modules used by this program
from com.android.monkeyrunner import MonkeyRun</div>
                                </li>
                                <li><a href="/article/2492.htm"
                                       title="Hadoop-- 海量文件的分布式计算处理方案" target="_blank">Hadoop-- 海量文件的分布式计算处理方案</a>
                                    <span class="text-muted">datamachine</span>
<a class="tag" taget="_blank" href="/search/mapreduce/1.htm">mapreduce</a><a class="tag" taget="_blank" href="/search/hadoop/1.htm">hadoop</a><a class="tag" taget="_blank" href="/search/%E5%88%86%E5%B8%83%E5%BC%8F%E8%AE%A1%E7%AE%97/1.htm">分布式计算</a>
                                    <div>csdn的一个关于hadoop的分布式处理方案,存档。 
原帖:http://blog.csdn.net/calvinxiu/article/details/1506112。 
 
    Hadoop 是Google MapReduce的一个Java实现。MapReduce是一种简化的分布式编程模式,让程序自动分布到一个由普通机器组成的超大集群上并发执行。就如同ja</div>
                                </li>
                                <li><a href="/article/2619.htm"
                                       title="以資料庫驗證登入" target="_blank">以資料庫驗證登入</a>
                                    <span class="text-muted">dcj3sjt126com</span>
<a class="tag" taget="_blank" href="/search/yii/1.htm">yii</a>
                                    <div>以資料庫驗證登入 
由於 Yii 內定的原始框架程式, 採用綁定在UserIdentity.php 的 demo 與 admin 帳號密碼:    public function authenticate()    {        $users=array( &nbs</div>
                                </li>
                                <li><a href="/article/2746.htm"
                                       title="github做webhooks:[2]php版本自动触发更新" target="_blank">github做webhooks:[2]php版本自动触发更新</a>
                                    <span class="text-muted">dcj3sjt126com</span>
<a class="tag" taget="_blank" href="/search/github/1.htm">github</a><a class="tag" taget="_blank" href="/search/git/1.htm">git</a><a class="tag" taget="_blank" href="/search/webhooks/1.htm">webhooks</a>
                                    <div>上次已经说过了如何在github控制面板做查看url的返回信息了。这次就到了直接贴钩子代码的时候了。       
工具/原料  
 
   git   
   github   
     
方法/步骤  
 
       在github的setting里面的webhooks里把我们的url地址填进去。   
       钩子更新的代码如下: error_reportin</div>
                                </li>
                                <li><a href="/article/2873.htm"
                                       title="Eos开发常用表达式" target="_blank">Eos开发常用表达式</a>
                                    <span class="text-muted">蕃薯耀</span>
<a class="tag" taget="_blank" href="/search/Eos%E5%BC%80%E5%8F%91/1.htm">Eos开发</a><a class="tag" taget="_blank" href="/search/Eos%E5%85%A5%E9%97%A8/1.htm">Eos入门</a><a class="tag" taget="_blank" href="/search/Eos%E5%BC%80%E5%8F%91%E5%B8%B8%E7%94%A8%E8%A1%A8%E8%BE%BE%E5%BC%8F/1.htm">Eos开发常用表达式</a>
                                    <div>Eos开发常用表达式 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
蕃薯耀 2014年8月18日 15:03:35 星期一 
  
  
&</div>
                                </li>
                                <li><a href="/article/3000.htm"
                                       title="SpringSecurity3.X--SpEL 表达式" target="_blank">SpringSecurity3.X--SpEL 表达式</a>
                                    <span class="text-muted">hanqunfeng</span>
<a class="tag" taget="_blank" href="/search/SpringSecurity/1.htm">SpringSecurity</a>
                                    <div>使用 Spring 表达式语言配置访问控制,要实现这一功能的直接方式是在<http>配置元素上添加 use-expressions 属性: 
  
<http auto-config="true"  use-expressions="true"> 
这样就会在投票器中自动增加一个投票器:org.springframework</div>
                                </li>
                                <li><a href="/article/3127.htm"
                                       title="Redis vs Memcache" target="_blank">Redis vs Memcache</a>
                                    <span class="text-muted">IXHONG</span>
<a class="tag" taget="_blank" href="/search/redis/1.htm">redis</a>
                                    <div>1. Redis中,并不是所有的数据都一直存储在内存中的,这是和Memcached相比一个最大的区别。 
2. Redis不仅仅支持简单的k/v类型的数据,同时还提供list,set,hash等数据结构的存储。 
3. Redis支持数据的备份,即master-slave模式的数据备份。 
4. Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用。 
Red</div>
                                </li>
                                <li><a href="/article/3254.htm"
                                       title="Python - 装饰器使用过程中的误区解读" target="_blank">Python - 装饰器使用过程中的误区解读</a>
                                    <span class="text-muted">kvhur</span>
<a class="tag" taget="_blank" href="/search/JavaScript/1.htm">JavaScript</a><a class="tag" taget="_blank" href="/search/jquery/1.htm">jquery</a><a class="tag" taget="_blank" href="/search/html5/1.htm">html5</a><a class="tag" taget="_blank" href="/search/css/1.htm">css</a>
                                    <div>大家都知道装饰器是一个很著名的设计模式,经常被用于AOP(面向切面编程)的场景,较为经典的有插入日志,性能测试,事务处理,Web权限校验, Cache等。 
原文链接:http://www.gbtags.com/gb/share/5563.htm 
Python语言本身提供了装饰器语法(@),典型的装饰器实现如下:     
 
 @function_wrapper 
  de</div>
                                </li>
                                <li><a href="/article/3381.htm"
                                       title="架构师之mybatis-----update 带case when 针对多种情况更新" target="_blank">架构师之mybatis-----update 带case when 针对多种情况更新</a>
                                    <span class="text-muted">nannan408</span>
<a class="tag" taget="_blank" href="/search/case+when/1.htm">case when</a>
                                    <div>1.前言. 
   如题. 
2. 代码. 
  

	<update id="batchUpdate" parameterType="java.util.List">
			<foreach collection="list" item="list" index=&</div>
                                </li>
                                <li><a href="/article/3508.htm"
                                       title="Algorithm算法视频教程" target="_blank">Algorithm算法视频教程</a>
                                    <span class="text-muted">栏目记者</span>
<a class="tag" taget="_blank" href="/search/Algorithm/1.htm">Algorithm</a><a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a>
                                    <div>课程:Algorithm算法视频教程 
 
百度网盘下载地址: http://pan.baidu.com/s/1qWFjjQW 密码: 2mji 
 
 
程序写的好不好,还得看算法屌不屌!Algorithm算法博大精深。 
 一、课程内容: 
课时1、算法的基本概念 + Sequential search 
课时2、Binary search 
课时3、Hash table 
课时4、Algor</div>
                                </li>
                                <li><a href="/article/3635.htm"
                                       title="C语言算法之冒泡排序" target="_blank">C语言算法之冒泡排序</a>
                                    <span class="text-muted">qiufeihu</span>
<a class="tag" taget="_blank" href="/search/c/1.htm">c</a><a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a>
                                    <div>任意输入10个数字由小到大进行排序。 
代码: 
#include <stdio.h>
int main()
{
	int i,j,t,a[11];        /*定义变量及数组为基本类型*/
	for(i = 1;i < 11;i++){
		scanf("%d",&a[i]);     /*从键盘中输入10个数*/
	}
	for</div>
                                </li>
                                <li><a href="/article/3762.htm"
                                       title="JSP异常处理" target="_blank">JSP异常处理</a>
                                    <span class="text-muted">wyzuomumu</span>
<a class="tag" taget="_blank" href="/search/Web/1.htm">Web</a><a class="tag" taget="_blank" href="/search/jsp/1.htm">jsp</a>
                                    <div>1.在可能发生异常的网页中通过指令将HTTP请求转发给另一个专门处理异常的网页中: 
<%@ page errorPage="errors.jsp"%> 
  
2.在处理异常的网页中做如下声明: 
errors.jsp: 
<%@ page isErrorPage="true"%>,这样设置完后就可以在网页中直接访问exc</div>
                                </li>
                </ul>
            </div>
        </div>
    </div>

<div>
    <div class="container">
        <div class="indexes">
            <strong>按字母分类:</strong>
            <a href="/tags/A/1.htm" target="_blank">A</a><a href="/tags/B/1.htm" target="_blank">B</a><a href="/tags/C/1.htm" target="_blank">C</a><a
                href="/tags/D/1.htm" target="_blank">D</a><a href="/tags/E/1.htm" target="_blank">E</a><a href="/tags/F/1.htm" target="_blank">F</a><a
                href="/tags/G/1.htm" target="_blank">G</a><a href="/tags/H/1.htm" target="_blank">H</a><a href="/tags/I/1.htm" target="_blank">I</a><a
                href="/tags/J/1.htm" target="_blank">J</a><a href="/tags/K/1.htm" target="_blank">K</a><a href="/tags/L/1.htm" target="_blank">L</a><a
                href="/tags/M/1.htm" target="_blank">M</a><a href="/tags/N/1.htm" target="_blank">N</a><a href="/tags/O/1.htm" target="_blank">O</a><a
                href="/tags/P/1.htm" target="_blank">P</a><a href="/tags/Q/1.htm" target="_blank">Q</a><a href="/tags/R/1.htm" target="_blank">R</a><a
                href="/tags/S/1.htm" target="_blank">S</a><a href="/tags/T/1.htm" target="_blank">T</a><a href="/tags/U/1.htm" target="_blank">U</a><a
                href="/tags/V/1.htm" target="_blank">V</a><a href="/tags/W/1.htm" target="_blank">W</a><a href="/tags/X/1.htm" target="_blank">X</a><a
                href="/tags/Y/1.htm" target="_blank">Y</a><a href="/tags/Z/1.htm" target="_blank">Z</a><a href="/tags/0/1.htm" target="_blank">其他</a>
        </div>
    </div>
</div>
<footer id="footer" class="mb30 mt30">
    <div class="container">
        <div class="footBglm">
            <a target="_blank" href="/">首页</a> -
            <a target="_blank" href="/custom/about.htm">关于我们</a> -
            <a target="_blank" href="/search/Java/1.htm">站内搜索</a> -
            <a target="_blank" href="/sitemap.txt">Sitemap</a> -
            <a target="_blank" href="/custom/delete.htm">侵权投诉</a>
        </div>
        <div class="copyright">版权所有 IT知识库 CopyRight © 2000-2050 E-COM-NET.COM , All Rights Reserved.
<!--            <a href="https://beian.miit.gov.cn/" rel="nofollow" target="_blank">京ICP备09083238号</a><br>-->
        </div>
    </div>
</footer>
<!-- 代码高亮 -->
<script type="text/javascript" src="/static/syntaxhighlighter/scripts/shCore.js"></script>
<script type="text/javascript" src="/static/syntaxhighlighter/scripts/shLegacy.js"></script>
<script type="text/javascript" src="/static/syntaxhighlighter/scripts/shAutoloader.js"></script>
<link type="text/css" rel="stylesheet" href="/static/syntaxhighlighter/styles/shCoreDefault.css"/>
<script type="text/javascript" src="/static/syntaxhighlighter/src/my_start_1.js"></script>





</body>

</html>