如何实现ListView高效分页代码

ListView选择自动分页时  其实就是添加了一个DataPager分页控件两者间存在着嵌套关系《Repeater与ListView》中提到这样的分页并不是高效的 因为数据源还是返回了所有的数据  而非当前页数据 

优化方案及步骤:

1.改数据源EnablePaging属性为true 【允许分页】

设置MaximumRowsParameterName="rowIndex"【MSDN解释:该参数接受检索的行数的值  可以理解为:上一页的最后一行的下标】

设置StartRowIndexParameterName="pageSize"【MSDN解释:该参数接受要检索的第一行索引的值  可以理解为pageSize 即每页显示条数】

SelectCountMethod="GetTotalRowsCount" 【需要总行数数时执行的方法即一共有多少条数据告诉分页控件如何显示】

如何实现ListView高效分页代码_第1张图片

2、此时数据源调用的原有方法getAllClasses不再满足要求需要在业务层中新增一个带MaximumRowsParameterName及StartRowIndexParameterName参数名称的方法  以及GetTotalRowsCount两个方法

BLL层添加如下:

复制代码 代码如下:

View Code

public List getPageListByPage( int pageSize, int rowIndex) {            return dal.getPageListByPage(pageSize, rowIndex, false);
        }

        public int GetTotalRowsCount() {
            return dal.GetTotalRowsCount();
        }


DAL层添加如下:

复制代码 代码如下:

View Code

public List getPageListByPage( int rowIndex, int pageSize, bool isDel) {            int rowCount = 0;
            int pageCount = 0;
            DataTable dt = SqlHelper .getPageListByPage(rowIndex, pageSize, out rowCount, out pageCount, isDel);
            if (dt.Rows.Count > 0) {
                List list = new List ();
                foreach (DataRow dr in dt.Rows) {
                    MODEL. Classes model = new MODEL. Classes();
                    LoadEntityData(model, dr);
                    list.Add(model);
                }
                return list;
            }
            return null ;
        }

        public int GetTotalRowsCount() {
            string sqlstr = "select * from classes where cisdel = 0" ;
            return SqlHelper .ExecuteScalar(sqlstr);
        }


SqlHelper新增方法如下:

复制代码 代码如下:

View Code

public static DataTable getPageListByPage( int rowIndex, int pageSize, out int rowCount, out int pageCount, bool isDel) {            DataTable dtcalss = new DataTable();
            rowCount = 0;
            pageCount = 0;
            using (SqlConnection sqlcon = new SqlConnection (Connstr)) {
                SqlDataAdapter sda = new SqlDataAdapter( "up_GetPageData2" , sqlcon);
                SqlParameter [] pars = {
                                      new SqlParameter ( "@LastRowIndex",rowIndex),
                                      new SqlParameter ( "@pgSize",pageSize),
                                        new SqlParameter ( "@rowCount",rowCount),
                                        new SqlParameter ( "@pgCount",pageCount),
                                        new SqlParameter ( "@isDel",isDel),
                                      };
                //将两个输出参数的输出方向指定
                pars[2].Direction = ParameterDirection .Output;
                pars[3].Direction = ParameterDirection .Output;
                //将参数集合 加入到 查询命令对象中
                sda.SelectCommand.Parameters.AddRange(pars);
                //设置 查询命令类型 为存储过程
                sda.SelectCommand.CommandType = CommandType .StoredProcedure;
                //执行存储过程
                sda.Fill(dtcalss);
                //执行完后 将存储过程 获得的 两个输出参数值 赋给此方法的两个输出参数
                rowCount = Convert .ToInt32(pars[2].Value);
                pageCount = Convert .ToInt32(pars[3].Value);
            }
            return dtcalss;
        }


存储过程up_GetPageData2代码如下:

复制代码 代码如下:

View Code

create proc up_GetPageData2
@LastRowIndex int , ---上一页的最后一行的下标
@pgSize float , --页容量
@rowCount int output, --- 输出总行数
@pgCount int output, --- 输出 总页数
@isDel   bit --数据是否删除
as
begin
      select @rowCount =count (*) from classes where cisdel= @isDel --查出总行数
      set @pgCount =ceiling ( @rowCount/ @pgSize )-- 算出总页数
      select * from (
          select Row_Number () over ( order by cid ) as RNum, * from classes where cisdel= @isDel
      ) as temp
      where RNum >@LastRowIndex and RNum <= @LastRowIndex +@pgSize
end


ListView.aspx代码如下:

复制代码 代码如下:

View Code

<% @ Page Language="C#" AutoEventWireup="true" CodeBehind="ListView.aspx.cs" Inherits ="WebForm.ListView" %>

< html xmlns ="http://www.w3.org/1999/xhtml">
< head runat ="server">
    </ title><br></ head><br>< body><br>    <form id="form1" runat="server"><br>    <div ><br><br>        < asp: ObjectDataSource ID ="ObjectDataSource1" runat ="server"<br>            SelectMethod ="getPageListByPage" TypeName ="BLL.Classes"<br>            DataObjectTypeName ="MODEL.Classes" DeleteMethod ="SoftDel" InsertMethod ="Add"<br>            UpdateMethod ="Modify" EnablePaging ="True"<br>            MaximumRowsParameterName ="rowIndex" SelectCountMethod ="GetTotalRowsCount"<br>            StartRowIndexParameterName ="pageSize"><br>        </ asp: ObjectDataSource ><br>        < asp: ListView ID ="ListView1" runat ="server" DataSourceID ="ObjectDataSource1"<br>            InsertItemPosition ="LastItem"><br>            < AlternatingItemTemplate><br>                < tr style =""><br>                    < td><br>                        < asp: Button ID ="DeleteButton" runat ="server" CommandName ="Delete" Text ="删除" /><br>                        < asp: Button ID ="EditButton" runat ="server" CommandName ="Edit" Text ="编辑" /><br>                    </ td><br>                    < td><br>                        < asp: Label ID ="CIDLabel" runat ="server" Text =' <%# Eval("CID") %> ' /><br>                    </ td><br>                    < td><br>                        < asp: Label ID ="CNameLabel" runat ="server" Text =' <%# Eval("CName") %> ' /><br>                    </ td><br>                    < td><br>                        < asp: Label ID ="CCountLabel" runat ="server" Text =' <%# Eval("CCount") %> ' /><br>                    </ td><br>                    < td><br>                        < asp: Label ID ="CImgLabel" runat ="server" Text =' <%# Eval("CImg") %> ' /><br>                    </ td><br>                    < td><br>                        < asp: CheckBox ID ="CIsDelCheckBox" runat ="server"<br>                            Checked ='<% # Eval("CIsDel") %> ' Enabled ="false" /><br>                    </ td><br>                    < td><br>                        < asp: Label ID ="CAddTimeLabel" runat ="server" Text =' <%# Eval("CAddTime") %> ' /><br>                    </ td><br>                </ tr><br>            </ AlternatingItemTemplate><br><br>            < EditItemTemplate><br>                < tr style =""><br>                    < td><br>                        < asp: Button ID ="UpdateButton" runat ="server" CommandName ="Update" Text ="更新" /><br>                        < asp: Button ID ="CancelButton" runat ="server" CommandName ="Cancel" Text ="取消" /><br>                    </ td><br>                    < td><br>                        < asp: TextBox ID ="CIDTextBox" runat ="server" Text =' <%# Bind("CID") %> ' /><br>                    </ td><br>                    < td><br>                        < asp: TextBox ID ="CNameTextBox" runat ="server" Text =' <%# Bind("CName") %> ' /><br>                    </ td><br>                    < td><br>                        < asp: TextBox ID ="CCountTextBox" runat ="server" Text =' <%# Bind("CCount") %> ' /><br>                    </ td><br>                    < td><br>                        < asp: TextBox ID ="CImgTextBox" runat ="server" Text =' <%# Bind("CImg") %> ' /><br>                    </ td><br>                    < td><br>                        < asp: CheckBox ID ="CIsDelCheckBox" runat ="server"<br>                            Checked ='<% # Bind("CIsDel") %> ' /><br>                    </ td><br>                    < td><br>                        < asp: TextBox ID ="CAddTimeTextBox" runat ="server"<br>                            Text ='<% # Bind("CAddTime") %> ' /><br>                    </ td><br>                </ tr><br>            </ EditItemTemplate><br>            < EmptyDataTemplate><br>                < table runat ="server"<br><br>                    style =""><br>                    < tr><br>                        < td><br>                            未返回数据。 </ td><br>                    </ tr><br>                </ table><br>            </ EmptyDataTemplate><br>            < InsertItemTemplate><br>                < tr style =""><br>                    < td><br>                        < asp: Button ID ="InsertButton" runat ="server" CommandName ="Insert" Text ="插入" /><br>                        < asp: Button ID ="CancelButton" runat ="server" CommandName ="Cancel" Text ="清除" /><br>                    </ td><br>                    < td><br>                        < asp: TextBox ID ="CIDTextBox" runat ="server" Text =' <%# Bind("CID") %> ' /><br>                    </ td><br>                    < td><br>                        < asp: TextBox ID ="CNameTextBox" runat ="server" Text =' <%# Bind("CName") %> ' /><br>                    </ td><br>                    < td><br>                        < asp: TextBox ID ="CCountTextBox" runat ="server" Text =' <%# Bind("CCount") %> ' /><br>                    </ td><br>                    < td><br>                        < asp: TextBox ID ="CImgTextBox" runat ="server" Text =' <%# Bind("CImg") %> ' /><br>                    </ td><br>                    < td><br>                        < asp: CheckBox ID ="CIsDelCheckBox" runat ="server"<br>                            Checked ='<% # Bind("CIsDel") %> ' /><br>                    </ td><br>                    < td><br>                        < asp: TextBox ID ="CAddTimeTextBox" runat ="server"<br>                            Text ='<% # Bind("CAddTime") %> ' /><br>                    </ td><br>                </ tr><br>            </ InsertItemTemplate><br>            < ItemTemplate><br>                < tr style =""><br>                    < td><br>                        < asp: Button ID ="DeleteButton" runat ="server" CommandName ="Delete" Text ="删除" /><br>                        < asp: Button ID ="EditButton" runat ="server" CommandName ="Edit" Text ="编辑" /><br>                    </ td><br>                    < td><br>                        < asp: Label ID ="CIDLabel" runat ="server" Text =' <%# Eval("CID") %> ' /><br>                    </ td><br>                    < td><br>                        < asp: Label ID ="CNameLabel" runat ="server" Text =' <%# Eval("CName") %> ' /><br>                    </ td><br>                    < td><br>                        < asp: Label ID ="CCountLabel" runat ="server" Text =' <%# Eval("CCount") %> ' /><br>                    </ td><br>                    < td><br>                        < asp: Label ID ="CImgLabel" runat ="server" Text =' <%# Eval("CImg") %> ' /><br>                    </ td><br>                    < td><br>                        < asp: CheckBox ID ="CIsDelCheckBox" runat ="server"<br>                            Checked ='<% # Eval("CIsDel") %> ' Enabled ="false" /><br>                    </ td><br>                    < td><br>                        < asp: Label ID ="CAddTimeLabel" runat ="server" Text =' <%# Eval("CAddTime") %> ' /><br>                    </ td><br>                </ tr><br>            </ ItemTemplate><br>            < LayoutTemplate><br>                < table runat ="server"><br>                    < tr runat ="server"><br>                        < td runat ="server"><br>                            < table ID ="itemPlaceholderContainer" runat ="server" border ="0"<br><br>                                style =""><br>                                < tr runat ="server" style =""><br>                                    < th runat ="server"><br>                                        </ th><br>                                    < th runat ="server"><br>                                        CID </ th><br>                                    < th runat ="server"><br>                                        CName </ th><br>                                    < th runat ="server"><br>                                        CCount </ th><br>                                    < th runat ="server"><br>                                        CImg </ th><br>                                    < th runat ="server"><br>                                        CIsDel </ th><br>                                    < th runat ="server"><br>                                        CAddTime </ th><br>                                </ tr><br>                                < tr ID ="itemPlaceholder" runat ="server"><br>                                </ tr><br>                            </ table><br>                        </ td><br>                    </ tr><br>                    < tr runat ="server"><br>                        < td runat ="server"<br><br>                            style =""><br>                        </ td><br>                    </ tr><br>                </ table><br>            </ LayoutTemplate><br>            < SelectedItemTemplate><br>                < tr style =""><br>                    < td><br>                        < asp: Button ID ="DeleteButton" runat ="server" CommandName ="Delete" Text ="删除" /><br>                        < asp: Button ID ="EditButton" runat ="server" CommandName ="Edit" Text ="编辑" /><br>                    </ td><br>                    < td><br>                        < asp: Label ID ="CIDLabel" runat ="server" Text =' <%# Eval("CID") %> ' /><br>                    </ td><br>                    < td><br>                        < asp: Label ID ="CNameLabel" runat ="server" Text =' <%# Eval("CName") %> ' /><br>                    </ td><br>                    < td><br>                        < asp: Label ID ="CCountLabel" runat ="server" Text =' <%# Eval("CCount") %> ' /><br>                    </ td><br>                    < td><br>                        < asp: Label ID ="CImgLabel" runat ="server" Text =' <%# Eval("CImg") %> ' /><br>                    </ td><br>                    < td><br>                        < asp: CheckBox ID ="CIsDelCheckBox" runat ="server"<br>                            Checked ='<% # Eval("CIsDel") %> ' Enabled ="false" /><br>                    </ td><br>                    < td><br>                        < asp: Label ID ="CAddTimeLabel" runat ="server" Text =' <%# Eval("CAddTime") %> ' /><br>                    </ td><br>                </ tr><br>            </ SelectedItemTemplate><br>        </ asp: ListView ><br><br>    </div ><br>    <asp : DataPager ID ="DataPager1" runat ="server" PagedControlID ="ListView1"<br>        PageSize ="5"><br>        < Fields><br>            < asp: NextPreviousPagerField ButtonType ="Button" ShowFirstPageButton ="True"<br>                ShowLastPageButton ="True" /><br>        </ Fields><br>    </asp : DataPager><br>    </form ><br></ body><br></ html><br></p> </div> <br>3、界面中ListView1取消"开启分页"自动分页  拖入分页控件DataPage并设置PagedControlID="ListView1"使其与ListView1建立关联 <p></p> <p>4、修改数据源调用的方法为getPageListByPage运行结果如下:</p> <p><a href="http://img.e-com-net.com/image/info11/f3a82acbd71c40f882d113f4708cd6f4.jpg" target="_blank"><img src="http://img.e-com-net.com/image/info11/f3a82acbd71c40f882d113f4708cd6f4.jpg" width="650" height="238" alt="如何实现ListView高效分页代码_第2张图片" style="border:1px solid black;"></a></p> <p>补充:</p> <p>如果运行报错'ObjectDataSource“ObjectDataSource1”未能找到带参数的非泛型方法“getPageListByPage”: pageSize, pageIndex。'</p> <p>只需删除aspx界面中</p> <p> <SelectParameters></p> <p>                <asp:Parameter DefaultValue="5" Name="pageSize" Type="Int32" /></p> <p>                <asp:Parameter Name="rowIndex" Type="Int32" /></p> <p></SelectParameters></p> <div class="clearfix"> <span id="art_bot" class="jbTestPos"></span> </div> </div> </div> </div> </div> <!--PC和WAP自适应版--> <div id="SOHUCS" sid="1176018847388479488"></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">你可能感兴趣的:(如何实现ListView高效分页代码)</h4> <div id="paradigm-article-related"> <div class="recommend-post mb30"> <ul class="widget-links"> <li><a href="/article/1903481884462084096.htm" title="使用PyTorch搭建Transformer神经网络:入门篇" target="_blank">使用PyTorch搭建Transformer神经网络:入门篇</a> <span class="text-muted">DASA13</span> <a class="tag" taget="_blank" href="/search/pytorch/1.htm">pytorch</a><a class="tag" taget="_blank" href="/search/transformer/1.htm">transformer</a><a class="tag" taget="_blank" href="/search/%E7%A5%9E%E7%BB%8F%E7%BD%91%E7%BB%9C/1.htm">神经网络</a> <div>1.简介Transformer是一种强大的神经网络架构,在自然语言处理等多个领域取得了巨大成功。本教程将指导您使用PyTorch框架从头开始构建一个Transformer模型。我们将逐步解释每个组件,并提供详细的代码实现。2.环境设置首先,确保您的系统中已安装Python(推荐3.7+版本)。然后,安装PyTorch和其他必要的库:pipinstalltorchnumpymatplotlib3.P</div> </li> <li><a href="/article/1903480750204841984.htm" title="openai-agents 中custom example agent" target="_blank">openai-agents 中custom example agent</a> <span class="text-muted">ZHOU_CAMP</span> <a class="tag" taget="_blank" href="/search/oi_agents/1.htm">oi_agents</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a> <div>代码pipshowopenai-agentsName:openai-agentsVersion:0.0.4Summary:OpenAIAgentsSDKHome-page:https://github.com/openai/openai-agents-pythonAuthor:Author-email:OpenAILicense-Expression:MITLocation:d:\soft\ana</div> </li> <li><a href="/article/1903477852892884992.htm" title="3.20 补题(二分模板,反向搜索)" target="_blank">3.20 补题(二分模板,反向搜索)</a> <span class="text-muted">ZZZS0516</span> <a class="tag" taget="_blank" href="/search/%E6%B7%B1%E5%BA%A6%E4%BC%98%E5%85%88/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/%E5%9B%BE%E8%AE%BA/1.htm">图论</a><a class="tag" taget="_blank" href="/search/c%2B%2B/1.htm">c++</a> <div>目录D-填涂颜色(搜索)题目描述思路分析代码实现F-跳石头(二分模板)题目描述思路分析代码实现D-填涂颜色(搜索)链接:P1162填涂颜色-洛谷题目描述由数字000组成的方阵中,有一任意形状的由数字111构成的闭合圈。现要求把闭合圈内的所有空间都填写成222。例如:6×66\times66×6的方阵(n=6n=6n=6),涂色前和涂色后的方阵如下:如果从某个000出发,只向上下左右444个方向移动</div> </li> <li><a href="/article/1903477850351136768.htm" title="解析大模型归一化:提升训练稳定性和性能的关键技术" target="_blank">解析大模型归一化:提升训练稳定性和性能的关键技术</a> <span class="text-muted">秋声studio</span> <a class="tag" taget="_blank" href="/search/%E5%8F%A3%E8%AF%AD%E5%8C%96%E8%A7%A3%E6%9E%90/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/%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%E6%A8%A1%E5%9E%8B%E5%BD%92%E4%B8%80%E5%8C%96/1.htm">大模型归一化</a> <div>引言在深度学习领域,特别是在处理大型神经网络模型时,归一化(Normalization)是一项至关重要的技术。它可以提高模型的训练稳定性和性能,在加速收敛方面发挥了重要作用。本文将深入探讨大模型归一化的原理、常见方法及其应用场景,并结合实际案例和代码示例进行说明。一、归一化的作用与理论基础归一化的主要目的是为了提高模型的训练稳定性和性能。具体来说,归一化有以下几个关键作用:提高训练稳定性:在神经网</div> </li> <li><a href="/article/1903476968012181504.htm" title="深度剖析哈希表数据结构:原理、冲突解决与优化策略" target="_blank">深度剖析哈希表数据结构:原理、冲突解决与优化策略</a> <span class="text-muted">麻辣酸甜</span> <a class="tag" taget="_blank" href="/search/%E7%AC%94%E8%AE%B0/1.htm">笔记</a> <div>摘要哈希表作为一种高效的数据结构,在计算机科学领域广泛应用。本文深入探讨哈希表的工作原理,详细分析常见的冲突解决方法,如开放地址法、链地址法等,并进一步研究哈希表在不同场景下的优化策略,旨在帮助读者全面理解哈希表数据结构及其应用。一、引言在计算机程序中,快速查找和插入数据是常见需求。哈希表以其平均时间复杂度为O(1)的高效查找和插入特性,成为解决这类问题的有力工具。从数据库索引到编程语言的集合类实</div> </li> <li><a href="/article/1903476715317948416.htm" title="PyTorch数据归一化处理:transforms" target="_blank">PyTorch数据归一化处理:transforms</a> <span class="text-muted">2401_87555420</span> <a class="tag" taget="_blank" href="/search/pytorch/1.htm">pytorch</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/python/1.htm">python</a> <div>##1.数据归一化处理:transforms.Normalize###1.1理解torchvision*torchvision.transforms:常用的图像预处理方法*torchvision.datasets:常用的数据集Dataset实现*torchvision.models:常用的CV(预训练)模型实现torchvision.transforms:常用的数据预处理方法,提升泛化能力,包括:</div> </li> <li><a href="/article/1903476336987533312.htm" title="Ubuntu使用Docker部署Nginx并结合内网穿透实现公网远程访问" target="_blank">Ubuntu使用Docker部署Nginx并结合内网穿透实现公网远程访问</a> <span class="text-muted">鸭鸭渗透</span> <a class="tag" taget="_blank" href="/search/eureka/1.htm">eureka</a><a class="tag" taget="_blank" href="/search/%E4%BA%91%E5%8E%9F%E7%94%9F/1.htm">云原生</a> <div>目录1.安装Docker2.使用Docker拉取Nginx镜像3.创建并启动Nginx容器4.本地连接测试5.公网远程访问本地Nginx5.1内网穿透工具安装5.2创建远程连接公网地址5.3使用固定公网地址远程访问在开发人员的工作中,公网远程访问内网是其必备的技术需求之一。对于运维人员和开发者来说,能够通过公网远程访问内部的服务和应用,能够极大地提升工作效率和便利性。本文将介绍如何利用Ubuntu</div> </li> <li><a href="/article/1903475203359436800.htm" title="Python 向量检索库Faiss使用" target="_blank">Python 向量检索库Faiss使用</a> <span class="text-muted">懒大王爱吃狼</span> <a class="tag" taget="_blank" href="/search/python/1.htm">python</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/%E8%87%AA%E5%8A%A8%E5%8C%96/1.htm">自动化</a><a class="tag" taget="_blank" href="/search/Python%E5%9F%BA%E7%A1%80/1.htm">Python基础</a><a class="tag" taget="_blank" href="/search/python%E6%95%99%E7%A8%8B/1.htm">python教程</a> <div>Faiss(FacebookAISimilaritySearch)是一个由FacebookAIResearch开发的库,它专门用于高效地搜索和聚类大量向量。Faiss能够在几毫秒内搜索数亿个向量,这使得它非常适合于实现近似最近邻(ANN)搜索,这在许多应用中都非常有用,比如图像检索、推荐系统和自然语言处理。以下是如何使用Faiss的基本步骤和示例:1.安装Faiss首先,你需要安装Faiss。你可</div> </li> <li><a href="/article/1903474196118302720.htm" title="通过启用Ranger插件的Hive审计日志同步到Doris做分析" target="_blank">通过启用Ranger插件的Hive审计日志同步到Doris做分析</a> <span class="text-muted">fzip</span> <a class="tag" taget="_blank" href="/search/Doris/1.htm">Doris</a><a class="tag" taget="_blank" href="/search/Hive/1.htm">Hive</a><a class="tag" taget="_blank" href="/search/doris/1.htm">doris</a><a class="tag" taget="_blank" href="/search/%E5%AE%A1%E8%AE%A1/1.htm">审计</a><a class="tag" taget="_blank" href="/search/hive/1.htm">hive</a> <div>以下是基于ApacheDoris的RangerHive审计日志同步方案详细步骤,结合审计日志插件与数据导入策略实现:一、Doris环境准备1.创建审计日志库表参考搜索结果的表结构设计,根据Ranger日志字段调整建表语句:CREATEDATABASEIFNOTEXISTSranger_audit;CREATETABLEIFNOTEXISTSranger_audit_hive_log(repoTyp</div> </li> <li><a href="/article/1903473439734296576.htm" title="Python 应用部署云端实战指南 —— AWS、Google Cloud 与 Azure 全解析" target="_blank">Python 应用部署云端实战指南 —— AWS、Google Cloud 与 Azure 全解析</a> <span class="text-muted">清水白石008</span> <a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/Python%E9%A2%98%E5%BA%93/1.htm">Python题库</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/aws/1.htm">aws</a><a class="tag" taget="_blank" href="/search/azure/1.htm">azure</a> <div>Python应用部署云端实战指南——AWS、GoogleCloud与Azure全解析在当下云计算飞速发展的时代,将Python应用部署到云平台已成为大多数开发者和企业的首选。无论是构建Web服务、API接口,还是自动化任务调度,云平台都能为我们提供高可靠性、弹性伸缩与简便管理的优势。本文将详细阐述如何将Python应用分别部署到AWS、GoogleCloud与Azure,并介绍各平台下涉及的部署工</div> </li> <li><a href="/article/1903472935897722880.htm" title="【 现代后端架构演进:微服务设计与云原生】" target="_blank">【 现代后端架构演进:微服务设计与云原生】</a> <span class="text-muted">蝉叫醒了夏天</span> <a class="tag" taget="_blank" href="/search/%E6%9E%B6%E6%9E%84/1.htm">架构</a><a class="tag" taget="_blank" href="/search/%E4%BA%91%E5%8E%9F%E7%94%9F/1.htm">云原生</a><a class="tag" taget="_blank" href="/search/%E5%BE%AE%E6%9C%8D%E5%8A%A1/1.htm">微服务</a> <div>现代后端架构演进:微服务设计与云原生一、架构演进历程1.单体架构到分布式系统单体架构瓶颈典型问题:代码耦合(代码行超百万级)、扩展困难(垂直扩容成本>105>10^5>105美元/节点)、技术栈固化故障扩散:数据库连接池耗尽导致全站瘫痪SOA(面向服务架构)引入ESB(企业服务总线),服务间通信延迟增加30-50ms典型案例:电信计费系统(服务拆分粒度以模块为单位)2.微服务革命(2014-)核心</div> </li> <li><a href="/article/1903472809561092096.htm" title="Python编程:为什么使用同步原语" target="_blank">Python编程:为什么使用同步原语</a> <span class="text-muted">林十一npc</span> <a class="tag" taget="_blank" href="/search/Python%E8%AF%AD%E8%A8%80/1.htm">Python语言</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> <div>Python编程:为什么使用同步原语1.同步原语同步原语:计算机科学中用于实现进程或线程之间同步的机制。目的:提供一种方法来控制多个进程或线程的执行顺序,确保他们以一致的方式访问共享资源在多线程/多进程编程中,多个执行单元可能同时访问共享资源,导致竞态条件。同步原语通过协调执行顺序,确保数据一致性和操作原子性2.Python核心同步原语同步原语作用适用场景模块Lock(互斥锁)确保同一时间只有一个</div> </li> <li><a href="/article/1903472683316736000.htm" title="小白零基础学数学建模系列-引言与课程目录" target="_blank">小白零基础学数学建模系列-引言与课程目录</a> <span class="text-muted">川川菜鸟</span> <a class="tag" taget="_blank" href="/search/%E6%95%B0%E5%AD%A6%E5%BB%BA%E6%A8%A1%E5%B0%8F%E7%99%BD%E5%88%B0%E7%B2%BE%E9%80%9A%E7%B3%BB%E5%88%97/1.htm">数学建模小白到精通系列</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E5%AD%A6%E5%BB%BA%E6%A8%A1/1.htm">数学建模</a> <div>目录引言一、我们的专辑包含哪些内容?第一周:数学建模基础与工具第二周:高级数学建模技巧与应用第三周:机器学习基础与数据处理第四周:监督学习与无监督学习算法第五周:神经网络二、学完本专辑能收获到什么?三、适合什么样的人群学习?四、如何学习本专辑?课程目录第1周:数学建模基础与工具第1天:数学建模入门介绍第2天:数学建模工具介绍第3天:线性回归与曲线拟合第4天:线性规划第5天:动态规划第2周:高级数学</div> </li> <li><a href="/article/1903468900364906496.htm" title="如何在Spring Boot中设置HttpOnly Cookie以增强安全性" target="_blank">如何在Spring Boot中设置HttpOnly Cookie以增强安全性</a> <span class="text-muted">遥不可及~~斌</span> <a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/boot/1.htm">boot</a><a class="tag" taget="_blank" href="/search/%E5%90%8E%E7%AB%AF/1.htm">后端</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a> <div>引言在Web开发中,Cookie是用于在客户端和服务器之间传递信息的重要机制。然而,Cookie的安全性一直是一个备受关注的问题。特别是当Cookie中存储了敏感信息(如会话ID)时,如何防止这些信息被恶意脚本窃取就显得尤为重要。HttpOnly属性是增强Cookie安全性的一种有效手段。本文将详细介绍如何在SpringBoot中设置HttpOnlyCookie,并探讨其背后的安全机制。什么是Ht</div> </li> <li><a href="/article/1903466004806168576.htm" title="Pygame实现记忆拼图游戏3" target="_blank">Pygame实现记忆拼图游戏3</a> <span class="text-muted">棉猴</span> <a class="tag" taget="_blank" href="/search/%23/1.htm">#</a><a class="tag" taget="_blank" href="/search/%E8%AE%B0%E5%BF%86%E6%8B%BC%E5%9B%BE%E6%B8%B8%E6%88%8F%E7%9A%84%E7%BC%96%E5%86%99/1.htm">记忆拼图游戏的编写</a><a class="tag" taget="_blank" href="/search/pygame/1.htm">pygame</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/python%E6%B8%B8%E6%88%8F%E7%BC%96%E7%A8%8B/1.htm">python游戏编程</a><a class="tag" taget="_blank" href="/search/python%E6%B8%B8%E6%88%8F%E4%BB%A3%E7%A0%81/1.htm">python游戏代码</a> <div>在游戏启动时,需要设置游戏中图案的初始排列,该功能由自定义函数getRandomizedBoard()实现。1按顺序产生游戏所需的不同图案在getRandomizedBoard()中,首先按顺序产生游戏中所需的不同图案。在《Pygame实现记忆拼图游戏2》中提到,游戏中所用的7种颜色保存在ALLCOLORS中,所用的5种形状保存在ALLSHAPES中,通过for循环可以实现7×5=35种组合,代码</div> </li> <li><a href="/article/1903465373794103296.htm" title="探索简明虚拟机新纪元 —— SSVM 深度揭秘与应用指南" target="_blank">探索简明虚拟机新纪元 —— SSVM 深度揭秘与应用指南</a> <span class="text-muted">殷巧或</span> <div>探索简明虚拟机新纪元——SSVM深度揭秘与应用指南SSVMJavaVMrunningonaJVM项目地址:https://gitcode.com/gh_mirrors/ssv/SSVM在当今软件开发的浩瀚宇宙中,一种名为SSVM(StupidlySimpleVM)的轻量级虚拟机正悄然兴起,承诺为开发者带来前所未有的灵活性与效率。本文将深入剖析SSVM的核心特性,探讨其技术实现,展示应用场景,并揭示</div> </li> <li><a href="/article/1903465246547308544.htm" title="使用 Selenium 控制现有 Edge 窗口以规避爬虫检测" target="_blank">使用 Selenium 控制现有 Edge 窗口以规避爬虫检测</a> <span class="text-muted">秋叶原の黑猫</span> <a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a> <div>在网络爬虫开发中,网站的防爬机制常常会检测自动化工具(如Selenium)启动的浏览器实例。为了绕过这种检测,一种有效的方法是利用Selenium连接到手动打开的现有浏览器窗口,而不是每次都启动一个新的实例。本文将详细介绍如何使用Selenium控制现有的MicrosoftEdge浏览器窗口,并结合代码示例展示实现过程。1.背景介绍:为什么需要控制现有窗口?传统的Selenium脚本会通过WebD</div> </li> <li><a href="/article/1903465120168734720.htm" title="阿里云全球节点:技术无国界,开发者如何借力数字新基建" target="_blank">阿里云全球节点:技术无国界,开发者如何借力数字新基建</a> <span class="text-muted">AWS官方合作商</span> <a class="tag" taget="_blank" href="/search/%E9%98%BF%E9%87%8C%E4%BA%91/1.htm">阿里云</a><a class="tag" taget="_blank" href="/search/%E4%BA%91%E8%AE%A1%E7%AE%97/1.htm">云计算</a><a class="tag" taget="_blank" href="/search/%E6%9C%8D%E5%8A%A1%E5%99%A8/1.htm">服务器</a> <div>在全球化进程加速的今天,开发者与企业的技术需求早已跨越地理边界。无论是跨境电商的数据同步、游戏出海的低延迟保障,还是跨国团队的高效协作,服务器的地理位置与稳定性直接决定了业务的成败。阿里云作为国内最早布局全球化基础设施的云服务商之一,其海外服务器的核心价值并非简单的“资源覆盖”,而是通过技术架构与本地化服务,为开发者构建了一张无缝连接的“数字高速公路”。一、全球化的本质:不止于服务器,而是技术普惠</div> </li> <li><a href="/article/1903462852686049280.htm" title="使用Pygame实现记忆拼图游戏" target="_blank">使用Pygame实现记忆拼图游戏</a> <span class="text-muted">点我头像干啥</span> <a class="tag" taget="_blank" href="/search/Ai/1.htm">Ai</a><a class="tag" taget="_blank" href="/search/pygame/1.htm">pygame</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> <div>引言记忆拼图游戏是一种经典的益智游戏,玩家需要通过翻转卡片来匹配相同的图案。这类游戏不仅能够锻炼玩家的记忆力,还能带来很多乐趣。本文将详细介绍如何使用Pygame库来实现一个简单的记忆拼图游戏。我们将从Pygame的基础知识开始,逐步构建游戏的各个部分,最终完成一个完整的游戏。1.Pygame简介Pygame是一个用于编写视频游戏的Python库,它基于SDL库(SimpleDirectMedia</div> </li> <li><a href="/article/1903462600457383936.htm" title="《Python实战进阶》No28: 使用 Paramiko 实现远程服务器管理" target="_blank">《Python实战进阶》No28: 使用 Paramiko 实现远程服务器管理</a> <span class="text-muted">带娃的IT创业者</span> <a class="tag" taget="_blank" href="/search/Python%E5%AE%9E%E6%88%98%E8%BF%9B%E9%98%B6/1.htm">Python实战进阶</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</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%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a> <div>No28:使用Paramiko实现远程服务器管理摘要在现代开发与运维中,远程服务器管理是必不可少的一环。通过SSH协议,我们可以安全地连接到远程服务器并执行各种操作。Python的Paramiko模块是一个强大的工具,能够帮助我们实现自动化任务,如代码部署、批量命令执行和文件传输。本集将深入讲解Paramiko的核心功能,并通过实战案例展示如何高效管理远程服务器。核心概念和知识点SSH协议的基本原</div> </li> <li><a href="/article/1903460585920589824.htm" title="云原生周刊丨CIO 洞察:Kubernetes 解锁 AI 新纪元" target="_blank">云原生周刊丨CIO 洞察:Kubernetes 解锁 AI 新纪元</a> <span class="text-muted">KubeSphere 云原生</span> <a class="tag" taget="_blank" href="/search/%E4%BA%91%E5%8E%9F%E7%94%9F/1.htm">云原生</a><a class="tag" taget="_blank" href="/search/kubernetes/1.htm">kubernetes</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a> <div>开源项目推荐DRANETDRANET是由谷歌开发的K8s网络驱动程序,利用K8s的动态资源分配(DRA)功能,为高吞吐量和低延迟应用提供高性能网络支持。它旨在优化资源管理,确保K8s集群中的网络资源能够按需高效分配。DRANET采用Apache-2.0开源许可,鼓励社区贡献与扩展,是云原生环境下提升网络性能的创新解决方案。LazyjournalLazyjournal是一个用Go语言编写的终端用户界</div> </li> <li><a href="/article/1903459830325112832.htm" title="深入解析深度学习中的过拟合与欠拟合诊断、解决与工程实践" target="_blank">深入解析深度学习中的过拟合与欠拟合诊断、解决与工程实践</a> <span class="text-muted">古月居GYH</span> <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/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a> <div>一、引言:模型泛化能力的核心挑战在深度学习模型开发中,欠拟合与过拟合是影响泛化能力的两个核心矛盾。据GoogleBrain研究统计,工业级深度学习项目中有63%的失败案例与这两个问题直接相关。本文将从基础概念到工程实践,系统解析其本质特征、诊断方法及解决方案,并辅以可复现的代码案例。二、核心概念与通熟易懂解释简单而言,欠拟合是指模型不能在训练集上获得足够低的误差。换句换说,就是模型复杂度低,模型在</div> </li> <li><a href="/article/1903459704324026368.htm" title="设计模式之装饰器模式" target="_blank">设计模式之装饰器模式</a> <span class="text-muted">周努力.</span> <a class="tag" taget="_blank" href="/search/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/1.htm">设计模式</a><a class="tag" taget="_blank" href="/search/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/1.htm">设计模式</a><a class="tag" taget="_blank" href="/search/%E8%A3%85%E9%A5%B0%E5%99%A8%E6%A8%A1%E5%BC%8F/1.htm">装饰器模式</a> <div>装饰器模式(Decorator)依然是我们设计模式中的结构型模式,其中的构造思想仍然是对多个类进行组合使用,以达成系统调用实现指定功能的设计模式。装饰器模式不论在我们日常开发过程中还是在我们提升技术阅读源码过程中都是比较常见的,但是整体学习这个模式的思路难度不大,接下来我将详细讲解此设计模式。目录1.概念2.代码实现3.应用场景4.装饰器模式与代理模式的区别1.概念我们前期所讲到的适配器模式,是连</div> </li> <li><a href="/article/1903457185254404096.htm" title="OpenManus 架构的详细技术实现" target="_blank">OpenManus 架构的详细技术实现</a> <span class="text-muted">大势下的牛马</span> <a class="tag" taget="_blank" href="/search/%E6%90%AD%E5%BB%BA%E6%9C%AC%E5%9C%B0gpt/1.htm">搭建本地gpt</a><a class="tag" taget="_blank" href="/search/%E6%9E%B6%E6%9E%84/1.htm">架构</a><a class="tag" taget="_blank" href="/search/OpenManus/1.htm">OpenManus</a><a class="tag" taget="_blank" href="/search/Manus/1.htm">Manus</a><a class="tag" taget="_blank" href="/search/Agent/1.htm">Agent</a> <div>一、OpenManus架构的详细技术实现1.核心分层架构的深度解析底层:LLM层模型选择与适配:OpenManus允许用户替换底层LLM(如mPLUG-Owl3、Qwen、Llama等),通过统一接口调用模型API,实现跨模型兼容性Prompt工程设计:用户输入的自然语言指令通过精心设计的Prompt转换为结构化指令。例如,PlanningTool使用预定义的Prompt模板(如请将任务分解为可执</div> </li> <li><a href="/article/1903455293874958336.htm" title="C# 设计模式之桥接模式" target="_blank">C# 设计模式之桥接模式</a> <span class="text-muted">鲤籽鲲</span> <a class="tag" taget="_blank" href="/search/C%23/1.htm">C#</a><a class="tag" taget="_blank" href="/search/c%23/1.htm">c#</a><a class="tag" taget="_blank" href="/search/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/1.htm">设计模式</a><a class="tag" taget="_blank" href="/search/%E6%A1%A5%E6%8E%A5%E6%A8%A1%E5%BC%8F/1.htm">桥接模式</a> <div>总目录前言1基础介绍定义:将抽象部分与实现部分分离,使它们都可以独立地变化。桥模式不能只认为是抽象和实现的分离,它其实并不仅限于此。其实两个都是抽象的部分,更确切的理解,应该是将一个事物中多个维度的变化分离。一个维度可以认为是抽象部分,另一个维度可以认为是实现部分,而这两个维度可以独立扩充和维护。桥接模式中的角色:抽象化角色(Abstraction):定义抽象类的接口,一般为抽象类,规范Refin</div> </li> <li><a href="/article/1903453907741372416.htm" title="【纯职业小组——思维】" target="_blank">【纯职业小组——思维】</a> <span class="text-muted">Kent_J_Truman</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> <div>题目思路第十五届蓝桥杯省赛PythonB组H题【纯职业小组】题解(AC)_蓝桥杯纯职业小组-CSDN博客代码#includeusingnamespacestd;usingll=longlong;intmain(){ios::sync_with_stdio(0);cin.tie(0);intt;cin>>t;while(t--){intn;llk;cin>>n>>k;unordered_maph;f</div> </li> <li><a href="/article/1903452396604944384.htm" title="WRF移动嵌套结合伏羲模型与CFD(PALM)高精度多尺度降尺度分析研究" target="_blank">WRF移动嵌套结合伏羲模型与CFD(PALM)高精度多尺度降尺度分析研究</a> <span class="text-muted">Hardess-god</span> <a class="tag" taget="_blank" href="/search/WRF/1.htm">WRF</a><a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/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>随着大气科学与数值模拟技术的发展,高精度多尺度气象模拟日益成为科研与应用的热点问题。本文将详细介绍如何使用WRF移动嵌套技术结合伏羲(Fuxi)模型,并通过CFD模型PALM实现精细化降尺度,以满足城市或区域局地精细化气象预报的需求。1.技术路线概述WRF移动嵌套(MovingNesting):动态调整高分辨率嵌套网格位置,追踪天气系统(如台风、强对流系统)以提高局地预报精度。伏羲(Fuxi)模型</div> </li> <li><a href="/article/1903452269882437632.htm" title="ModuleNotFoundError: No module named ‘h5py‘" target="_blank">ModuleNotFoundError: No module named ‘h5py‘</a> <span class="text-muted">Hardess-god</span> <a class="tag" taget="_blank" href="/search/python/1.htm">python</a> <div>到ModuleNotFoundError:Nomodulenamed'h5py'错误表明Python环境中没有安装h5py模块。h5py是一个用于处理HDF5二进制数据格式的Python接口,广泛用于大规模存储和操纵数据。解决方案:安装h5py要解决这个问题,你需要在你的Python环境中安装h5py。以下是如何在不同环境中安装h5py的步骤:使用pip安装如果你使用的是pip包管理器,可以通过以</div> </li> <li><a href="/article/1903451763718025216.htm" title="给wordpress用户个人资料添加自定义字段" target="_blank">给wordpress用户个人资料添加自定义字段</a> <span class="text-muted">wodrpress资源分享</span> <a class="tag" taget="_blank" href="/search/wordpress/1.htm">wordpress</a><a class="tag" taget="_blank" href="/search/wordpress/1.htm">wordpress</a> <div>在制作个人博客时,有时会需要显示作者的QQ或微信,下面这段代码就可以实现这个功能。functionwdp_new_contactmethods($contactmethods){//AddQQ$contactmethods['qq']='qq';//addWeiXin$contactmethods['weixin']='weixin';return$contactmethods;}add_filt</div> </li> <li><a href="/article/1903450503820406784.htm" title="CSP-J备考冲刺必刷题(C++) | AcWing 1253 家谱" target="_blank">CSP-J备考冲刺必刷题(C++) | AcWing 1253 家谱</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/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a> <div>本文分享的必刷题目是从蓝桥云课、洛谷、AcWing等知名刷题平台精心挑选而来,并结合各平台提供的算法标签和难度等级进行了系统分类。题目涵盖了从基础到进阶的多种算法和数据结构,旨在为不同阶段的编程学习者提供一条清晰、平稳的学习提升路径。欢迎大家订阅我的专栏:算法题解:C++与Python实现!附上汇总贴:算法竞赛备考冲刺必刷题(C++)|汇总【题目来源】Acwing:1253.家谱-AcWing题库</div> </li> <li><a href="/article/16.htm" title="深入浅出Java Annotation(元注解和自定义注解)" target="_blank">深入浅出Java Annotation(元注解和自定义注解)</a> <span class="text-muted">Josh_Persistence</span> <a class="tag" taget="_blank" href="/search/Java+Annotation/1.htm">Java Annotation</a><a class="tag" taget="_blank" href="/search/%E5%85%83%E6%B3%A8%E8%A7%A3/1.htm">元注解</a><a class="tag" taget="_blank" href="/search/%E8%87%AA%E5%AE%9A%E4%B9%89%E6%B3%A8%E8%A7%A3/1.htm">自定义注解</a> <div>一、基本概述        Annontation是Java5开始引入的新特征。中文名称一般叫注解。它提供了一种安全的类似注释的机制,用来将任何的信息或元数据(metadata)与程序元素(类、方法、成员变量等)进行关联。     更通俗的意思是为程序的元素(类、方法、成员变量)加上更直观更明了的说明,这些说明信息是与程序的业务逻辑无关,并且是供指定的工具或</div> </li> <li><a href="/article/143.htm" title="mysql优化特定类型的查询" target="_blank">mysql优化特定类型的查询</a> <span class="text-muted">annan211</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E5%B7%A5%E4%BD%9C/1.htm">工作</a><a class="tag" taget="_blank" href="/search/mysql/1.htm">mysql</a> <div> 本节所介绍的查询优化的技巧都是和特定版本相关的,所以对于未来mysql的版本未必适用。 1 优化count查询 对于count这个函数的网上的大部分资料都是错误的或者是理解的都是一知半解的。在做优化之前我们先来看看 真正的count()函数的作用到底是什么。 count()是一个特殊的函数,有两种非常不同的作用,他可以统计某个列值的数量,也可以统计行数。 在统</div> </li> <li><a href="/article/270.htm" title="MAC下安装多版本JDK和切换几种方式" target="_blank">MAC下安装多版本JDK和切换几种方式</a> <span class="text-muted">棋子chessman</span> <a class="tag" taget="_blank" href="/search/jdk/1.htm">jdk</a> <div>环境: MAC AIR,OS X 10.10,64位   历史: 过去 Mac 上的 Java 都是由 Apple 自己提供,只支持到 Java 6,并且OS X 10.7 开始系统并不自带(而是可选安装)(原自带的是1.6)。 后来 Apple 加入 OpenJDK 继续支持 Java 6,而 Java 7 将由 Oracle 负责提供。   在终端中输入jav</div> </li> <li><a href="/article/397.htm" title="javaScript (1)" target="_blank">javaScript (1)</a> <span class="text-muted">Array_06</span> <a class="tag" taget="_blank" href="/search/JavaScript/1.htm">JavaScript</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E6%B5%8F%E8%A7%88%E5%99%A8/1.htm">浏览器</a> <div>JavaScript 1、运算符   运算符就是完成操作的一系列符号,它有七类:   赋值运算符(=,+=,-=,*=,/=,%=,<<=,>>=,|=,&=)、算术运算符(+,-,*,/,++,--,%)、比较运算符(>,<,<=,>=,==,===,!=,!==)、逻辑运算符(||,&&,!)、条件运算(?:)、位</div> </li> <li><a href="/article/524.htm" title="国内顶级代码分享网站" target="_blank">国内顶级代码分享网站</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/jdk/1.htm">jdk</a><a class="tag" taget="_blank" href="/search/oracle/1.htm">oracle</a><a class="tag" taget="_blank" href="/search/.net/1.htm">.net</a><a class="tag" taget="_blank" href="/search/PHP/1.htm">PHP</a> <div>       现在国内很多开源网站感觉都是为了利益而做的                  当然利益是肯定的,否则谁也不会免费的去做网站      &</div> </li> <li><a href="/article/651.htm" title="Elasticsearch、MongoDB和Hadoop比较" target="_blank">Elasticsearch、MongoDB和Hadoop比较</a> <span class="text-muted">随意而生</span> <a class="tag" taget="_blank" href="/search/mongodb/1.htm">mongodb</a><a class="tag" taget="_blank" href="/search/hadoop/1.htm">hadoop</a><a class="tag" taget="_blank" href="/search/%E6%90%9C%E7%B4%A2%E5%BC%95%E6%93%8E/1.htm">搜索引擎</a> <div>  IT界在过去几年中出现了一个有趣的现象。很多新的技术出现并立即拥抱了“大数据”。稍微老一点的技术也会将大数据添进自己的特性,避免落大部队太远,我们看到了不同技术之间的边际的模糊化。假如你有诸如Elasticsearch或者Solr这样的搜索引擎,它们存储着JSON文档,MongoDB存着JSON文档,或者一堆JSON文档存放在一个Hadoop集群的HDFS中。你可以使用这三种配</div> </li> <li><a href="/article/778.htm" title="mac os 系统科研软件总结" target="_blank">mac os 系统科研软件总结</a> <span class="text-muted">张亚雄</span> <a class="tag" taget="_blank" href="/search/mac+os/1.htm">mac os</a> <div>1.1 Microsoft Office for Mac 2011      大客户版,自行搜索。      1.2 Latex (MacTex):      系统环境:https://tug.org/mactex/     &nb</div> </li> <li><a href="/article/905.htm" title="Maven实战(四)生命周期" target="_blank">Maven实战(四)生命周期</a> <span class="text-muted">AdyZhang</span> <a class="tag" taget="_blank" href="/search/maven/1.htm">maven</a> <div>1. 三套生命周期     Maven拥有三套相互独立的生命周期,它们分别为clean,default和site。 每个生命周期包含一些阶段,这些阶段是有顺序的,并且后面的阶段依赖于前面的阶段,用户和Maven最直接的交互方式就是调用这些生命周期阶段。 以clean生命周期为例,它包含的阶段有pre-clean, clean 和 post</div> </li> <li><a href="/article/1032.htm" title="Linux下Jenkins迁移" target="_blank">Linux下Jenkins迁移</a> <span class="text-muted">aijuans</span> <a class="tag" taget="_blank" href="/search/Jenkins/1.htm">Jenkins</a> <div>1. 将Jenkins程序目录copy过去      源程序在/export/data/tomcatRoot/ofctest-jenkins.jd.com下面            tar -cvzf jenkins.tar.gz ofctest-jenkins.jd.com &</div> </li> <li><a href="/article/1159.htm" title="request.getInputStream()只能获取一次的问题" target="_blank">request.getInputStream()只能获取一次的问题</a> <span class="text-muted">ayaoxinchao</span> <a class="tag" taget="_blank" href="/search/request/1.htm">request</a><a class="tag" taget="_blank" href="/search/Inputstream/1.htm">Inputstream</a> <div>问题:在使用HTTP协议实现应用间接口通信时,服务端读取客户端请求过来的数据,会用到request.getInputStream(),第一次读取的时候可以读取到数据,但是接下来的读取操作都读取不到数据   原因: 1. 一个InputStream对象在被读取完成后,将无法被再次读取,始终返回-1; 2. InputStream并没有实现reset方法(可以重</div> </li> <li><a href="/article/1286.htm" title="数据库SQL优化大总结之 百万级数据库优化方案" target="_blank">数据库SQL优化大总结之 百万级数据库优化方案</a> <span class="text-muted">BigBird2012</span> <a class="tag" taget="_blank" href="/search/SQL%E4%BC%98%E5%8C%96/1.htm">SQL优化</a> <div>网上关于SQL优化的教程很多,但是比较杂乱。近日有空整理了一下,写出来跟大家分享一下,其中有错误和不足的地方,还请大家纠正补充。 这篇文章我花费了大量的时间查找资料、修改、排版,希望大家阅读之后,感觉好的话推荐给更多的人,让更多的人看到、纠正以及补充。 1.对查询进行优化,要尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 2.应尽量避免在 where </div> </li> <li><a href="/article/1413.htm" title="jsonObject的使用" target="_blank">jsonObject的使用</a> <span class="text-muted">bijian1013</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/json/1.htm">json</a> <div>        在项目中难免会用java处理json格式的数据,因此封装了一个JSONUtil工具类。 JSONUtil.java package com.bijian.json.study; import java.util.ArrayList; import java.util.Date; import java.util.HashMap;</div> </li> <li><a href="/article/1540.htm" title="[Zookeeper学习笔记之六]Zookeeper源代码分析之Zookeeper.WatchRegistration" target="_blank">[Zookeeper学习笔记之六]Zookeeper源代码分析之Zookeeper.WatchRegistration</a> <span class="text-muted">bit1129</span> <a class="tag" taget="_blank" href="/search/zookeeper/1.htm">zookeeper</a> <div>Zookeeper类是Zookeeper提供给用户访问Zookeeper service的主要API,它包含了如下几个内部类     首先分析它的内部类,从WatchRegistration开始,为指定的znode path注册一个Watcher,   /** * Register a watcher for a particular p</div> </li> <li><a href="/article/1667.htm" title="【Scala十三】Scala核心七:部分应用函数" target="_blank">【Scala十三】Scala核心七:部分应用函数</a> <span class="text-muted">bit1129</span> <a class="tag" taget="_blank" href="/search/scala/1.htm">scala</a> <div>何为部分应用函数? Partially applied function: A function that’s used in an expression and that misses some of its arguments.For instance, if function f has type Int => Int => Int, then f and f(1) are p</div> </li> <li><a href="/article/1794.htm" title="Tomcat Error listenerStart 终极大法" target="_blank">Tomcat Error listenerStart 终极大法</a> <span class="text-muted">ronin47</span> <a class="tag" taget="_blank" href="/search/tomcat/1.htm">tomcat</a> <div>Tomcat报的错太含糊了,什么错都没报出来,只提示了Error listenerStart。为了调试,我们要获得更详细的日志。可以在WEB-INF/classes目录下新建一个文件叫logging.properties,内容如下 Java代码  handlers = org.apache.juli.FileHandler, java.util.logging.ConsoleHa</div> </li> <li><a href="/article/1921.htm" title="不用加减符号实现加减法" target="_blank">不用加减符号实现加减法</a> <span class="text-muted">BrokenDreams</span> <a class="tag" taget="_blank" href="/search/%E5%AE%9E%E7%8E%B0/1.htm">实现</a> <div>        今天有群友发了一个问题,要求不用加减符号(包括负号)来实现加减法。         分析一下,先看最简单的情况,假设1+1,按二进制算的话结果是10,可以看到从右往左的第一位变为0,第二位由于进位变为1。    </div> </li> <li><a href="/article/2048.htm" title="读《研磨设计模式》-代码笔记-状态模式-State" target="_blank">读《研磨设计模式》-代码笔记-状态模式-State</a> <span class="text-muted">bylijinnan</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/1.htm">设计模式</a> <div>声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/ /* 当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了其类 状态模式主要解决的是当控制一个对象状态的条件表达式过于复杂时的情况 把状态的判断逻辑转移到表示不同状态的一系列类中,可以把复杂的判断逻辑简化 如果在</div> </li> <li><a href="/article/2175.htm" title="CUDA程序block和thread超出硬件允许值时的异常" target="_blank">CUDA程序block和thread超出硬件允许值时的异常</a> <span class="text-muted">cherishLC</span> <a class="tag" taget="_blank" href="/search/CUDA/1.htm">CUDA</a> <div>调用CUDA的核函数时指定block 和 thread大小,该大小可以是dim3类型的(三维数组),只用一维时可以是usigned int型的。 以下程序验证了当block或thread大小超出硬件允许值时会产生异常!!!GPU根本不会执行运算!!! 所以验证结果的正确性很重要!!! 在VS中创建CUDA项目会有一个模板,里面有更详细的状态验证。 以下程序在K5000GPU上跑的。</div> </li> <li><a href="/article/2302.htm" title="诡异的超长时间GC问题定位" target="_blank">诡异的超长时间GC问题定位</a> <span class="text-muted">chenchao051</span> <a class="tag" taget="_blank" href="/search/jvm/1.htm">jvm</a><a class="tag" taget="_blank" href="/search/cms/1.htm">cms</a><a class="tag" taget="_blank" href="/search/GC/1.htm">GC</a><a class="tag" taget="_blank" href="/search/hbase/1.htm">hbase</a><a class="tag" taget="_blank" href="/search/swap/1.htm">swap</a> <div>HBase的GC策略采用PawNew+CMS, 这是大众化的配置,ParNew经常会出现停顿时间特别长的情况,有时候甚至长到令人发指的地步,例如请看如下日志: 2012-10-17T05:54:54.293+0800: 739594.224: [GC 739606.508: [ParNew: 996800K->110720K(996800K), 178.8826900 secs] 3700</div> </li> <li><a href="/article/2429.htm" title="maven环境快速搭建" target="_blank">maven环境快速搭建</a> <span class="text-muted">daizj</span> <a class="tag" taget="_blank" href="/search/%E5%AE%89%E8%A3%85/1.htm">安装</a><a class="tag" taget="_blank" href="/search/mavne/1.htm">mavne</a><a class="tag" taget="_blank" href="/search/%E7%8E%AF%E5%A2%83%E9%85%8D%E7%BD%AE/1.htm">环境配置</a> <div>一 下载maven 安装maven之前,要先安装jdk及配置JAVA_HOME环境变量。这个安装和配置java环境不用多说。 maven下载地址:http://maven.apache.org/download.html,目前最新的是这个apache-maven-3.2.5-bin.zip,然后解压在任意位置,最好地址中不要带中文字符,这个做java 的都知道,地址中出现中文会出现很多</div> </li> <li><a href="/article/2556.htm" title="PHP网站安全,避免PHP网站受到攻击的方法" target="_blank">PHP网站安全,避免PHP网站受到攻击的方法</a> <span class="text-muted">dcj3sjt126com</span> <a class="tag" taget="_blank" href="/search/PHP/1.htm">PHP</a> <div> 对于PHP网站安全主要存在这样几种攻击方式:1、命令注入(Command Injection)2、eval注入(Eval Injection)3、客户端脚本攻击(Script Insertion)4、跨网站脚本攻击(Cross Site Scripting, XSS)5、SQL注入攻击(SQL injection)6、跨网站请求伪造攻击(Cross Site Request Forgerie</div> </li> <li><a href="/article/2683.htm" title="yii中给CGridView设置默认的排序根据时间倒序的方法" target="_blank">yii中给CGridView设置默认的排序根据时间倒序的方法</a> <span class="text-muted">dcj3sjt126com</span> <a class="tag" taget="_blank" href="/search/GridView/1.htm">GridView</a> <div>public function searchWithRelated() {         $criteria = new CDbCriteria;         $criteria->together = true; //without th</div> </li> <li><a href="/article/2810.htm" title="Java集合对象和数组对象的转换" target="_blank">Java集合对象和数组对象的转换</a> <span class="text-muted">dyy_gusi</span> <a class="tag" taget="_blank" href="/search/java%E9%9B%86%E5%90%88/1.htm">java集合</a> <div>    在开发中,我们经常需要将集合对象(List,Set)转换为数组对象,或者将数组对象转换为集合对象。Java提供了相互转换的工具,但是我们使用的时候需要注意,不能乱用滥用。 1、数组对象转换为集合对象     最暴力的方式是new一个集合对象,然后遍历数组,依次将数组中的元素放入到新的集合中,但是这样做显然过</div> </li> <li><a href="/article/2937.htm" title="nginx同一主机部署多个应用" target="_blank">nginx同一主机部署多个应用</a> <span class="text-muted">geeksun</span> <a class="tag" taget="_blank" href="/search/nginx/1.htm">nginx</a> <div>近日有一需求,需要在一台主机上用nginx部署2个php应用,分别是wordpress和wiki,探索了半天,终于部署好了,下面把过程记录下来。 1.   在nginx下创建vhosts目录,用以放置vhost文件。 mkdir vhosts   2.   修改nginx.conf的配置, 在http节点增加下面内容设置,用来包含vhosts里的配置文件 #</div> </li> <li><a href="/article/3064.htm" title="ubuntu添加admin权限的用户账号" target="_blank">ubuntu添加admin权限的用户账号</a> <span class="text-muted">hongtoushizi</span> <a class="tag" taget="_blank" href="/search/ubuntu/1.htm">ubuntu</a><a class="tag" taget="_blank" href="/search/useradd/1.htm">useradd</a> <div>ubuntu创建账号的方式通常用到两种:useradd 和adduser . 本人尝试了useradd方法,步骤如下: 1:useradd    使用useradd时,如果后面不加任何参数的话,如:sudo useradd sysadm 创建出来的用户将是默认的三无用户:无home directory ,无密码,无系统shell。 顾应该如下操作:   </div> </li> <li><a href="/article/3191.htm" title="第五章 常用Lua开发库2-JSON库、编码转换、字符串处理" target="_blank">第五章 常用Lua开发库2-JSON库、编码转换、字符串处理</a> <span class="text-muted">jinnianshilongnian</span> <a class="tag" taget="_blank" href="/search/nginx/1.htm">nginx</a><a class="tag" taget="_blank" href="/search/lua/1.htm">lua</a> <div>  JSON库   在进行数据传输时JSON格式目前应用广泛,因此从Lua对象与JSON字符串之间相互转换是一个非常常见的功能;目前Lua也有几个JSON库,本人用过cjson、dkjson。其中cjson的语法严格(比如unicode \u0020\u7eaf),要求符合规范否则会解析失败(如\u002),而dkjson相对宽松,当然也可以通过修改cjson的源码来完成</div> </li> <li><a href="/article/3318.htm" title="Spring定时器配置的两种实现方式OpenSymphony Quartz和java Timer详解" target="_blank">Spring定时器配置的两种实现方式OpenSymphony Quartz和java Timer详解</a> <span class="text-muted">yaerfeng1989</span> <a class="tag" taget="_blank" href="/search/timer/1.htm">timer</a><a class="tag" taget="_blank" href="/search/quartz/1.htm">quartz</a><a class="tag" taget="_blank" href="/search/%E5%AE%9A%E6%97%B6%E5%99%A8/1.htm">定时器</a> <div>原创整理不易,转载请注明出处:Spring定时器配置的两种实现方式OpenSymphony Quartz和java Timer详解 代码下载地址:http://www.zuidaima.com/share/1772648445103104.htm 有两种流行Spring定时器配置:Java的Timer类和OpenSymphony的Quartz。 1.Java Timer定时 首先继承jav</div> </li> <li><a href="/article/3445.htm" title="Linux下df与du两个命令的差别?" target="_blank">Linux下df与du两个命令的差别?</a> <span class="text-muted">pda158</span> <a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a> <div> 一、df显示文件系统的使用情况,与du比較,就是更全盘化。   最经常使用的就是 df -T,显示文件系统的使用情况并显示文件系统的类型。   举比例如以下:   [root@localhost ~]# df -T   Filesystem                   Type &n</div> </li> <li><a href="/article/3572.htm" title="[转]SQLite的工具类 ---- 通过反射把Cursor封装到VO对象" target="_blank">[转]SQLite的工具类 ---- 通过反射把Cursor封装到VO对象</a> <span class="text-muted">ctfzh</span> <a class="tag" taget="_blank" href="/search/VO/1.htm">VO</a><a class="tag" taget="_blank" href="/search/android/1.htm">android</a><a class="tag" taget="_blank" href="/search/sqlite/1.htm">sqlite</a><a class="tag" taget="_blank" href="/search/%E5%8F%8D%E5%B0%84/1.htm">反射</a><a class="tag" taget="_blank" href="/search/Cursor/1.htm">Cursor</a> <div>在写DAO层时,觉得从Cursor里一个一个的取出字段值再装到VO(值对象)里太麻烦了,就写了一个工具类,用到了反射,可以把查询记录的值装到对应的VO里,也可以生成该VO的List。   使用时需要注意: 考虑到Android的性能问题,VO没有使用Setter和Getter,而是直接用public的属性。 表中的字段名需要和VO的属性名一样,要是不一样就得在查询的SQL中</div> </li> <li><a href="/article/3699.htm" title="该学习笔记用到的Employee表" target="_blank">该学习笔记用到的Employee表</a> <span class="text-muted">vipbooks</span> <a class="tag" taget="_blank" href="/search/oracle/1.htm">oracle</a><a class="tag" taget="_blank" href="/search/sql/1.htm">sql</a><a class="tag" taget="_blank" href="/search/%E5%B7%A5%E4%BD%9C/1.htm">工作</a> <div>    这是我在学习Oracle是用到的Employee表,在该笔记中用到的就是这张表,大家可以用它来学习和练习。 drop table Employee; -- 员工信息表 create table Employee( -- 员工编号 EmpNo number(3) primary key, -- 姓</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>