数据源

数据存储Store

在前面的表格应用中,我们已经知道表格的数据是存放类型为Store 的数据存储器中,通过指定表格Grid 的store 属性来设置表格中显示的数据,通过调用store 的load 或reload方法可以重新加载表格中的数据。ExtJS 中用来定义控件中使用数据的API 位于Ext.dd 命名空间中,本章我们重点对ExtJS 中的数据存储Store 进行介绍。

A:Record

首先需要明确是,ExtJS 中有一个名为Record 的类,表格等控件中使用的数据是存放在Record 对象中,一个Record 可以理解为关系数据表中的一行,也可以称为记录。Record对象中即包含了记录(行中各列)的定义信息(也就是该记录包含哪些字段,每一个字段的数据类型等),同时又包含了记录具体的数据信息(也就是各个字段的值)。

我们来看直接使用Record 的代码:

Ext.onReady(function(){

var MyRecord = Ext.data.Record.create([

{name: 'title'},

{name: 'username', mapping: 'author'},

{name: 'loginTimes', type: 'int'},

{name: 'lastLoginTime', mapping: 'loginTime', type: 'date'}

]);

var r=new MyRecord({

title:"日志标题",

username:"easyjf",

loginTimes:100,

loginTime:new Date()

});

alert(MyRecord.getField("username").mapping);

alert(MyRecord.getField("lastLoginTime").type);

alert(r.data.username);

alert(r.get("loginTimes"));

});

首先使用Record create 方法创建一个记录集MyRecordMyRecord 其实是一个类,该类包含了记录集的定义信息,可以通过MyRecord 来创建包含字段值的Record 对象。在上面的代码中,最后的几条语句用来输出记录集的相关信息,MyRecord.getField("username")

可以得到记录中username 列的字段信息,r.get("loginTimes")可以得到记录loginTimes 字段的值,而r.data.username 同样能得到记录集中username 字段的值。对Record 有了一定的了解,那么要操作记录集中的数据就非常简单了, 比如r.set(name,value)可以设置记录中某指定字段的值,r. dirty 可以得到当前记录是否有字段的值被更改过等等。

B:Store

可以理解为数据存储器,可以理解为客户端的小型数据表,提供缓存等功能。在ExtJS 中,GridPanelComboBoxDataView 等控件一般直接与Store 打交道,直接通过store来获得控件中需要展现的数据等。一个Store 包含多个Record,同时Store 又包含了数据来源,数据解析器等相关信息,Store 通过调用具体的数据解析器(DataReader)来解析指定类型或格式的数据(DataProxy),并转换成记录集的形式保存在Store 中,作为其它控件的数据输入。

数据存储器由Ext.data.Store 类定义,一个完整的数据存储器要知道数据源(DataProxy)及数据解析方式(DataReader)才能工作,在Ext.data.Store 类中数据源由proxy 配置属性定义、数据解析(读取)器由reader 配置属性定义,一个较为按部就班创建Store 的代码如下:

alert(r.get("loginTimes"));

});

var MyRecord = Ext.data.Record.create([

{name: 'title'},

{name: 'username', mapping: 'author'},

{name: 'loginTimes', type: 'int'},

{name: 'lastLoginTime', mapping: 'loginTime', type: 'date'}

]);

var dataProxy=new Ext.data.HttpProxy({url:"link.ejf"});

var theReader=new Ext.data.JsonReader({

totalProperty: "results",

root: "rows",

id: "id"

},MyRecord);

var store=new Ext.data.Store({

proxy:dataProxy,

reader:theReader

});

当然,这样的难免代码较多,Store 中本身提供了一些快捷创建Store 的方式,比如上面的示例代码中可以不用先创建一个HttpProxy,只需要在创建Store 的时候指定一个url 配置参数,就会自动使用HttpProxy 来加载参数。比如,上面的代码可以简化成:

var MyRecord = Ext.data.Record.create([

{name: 'title'},

{name: 'username', mapping: 'author'},

{name: 'loginTimes', type: 'int'},

{name: 'lastLoginTime', mapping: 'loginTime', type: 'date'}

]);

var theReader=new Ext.data.JsonReader({

totalProperty: "results",

root: "rows",

id: "id"

},MyRecord);

var store=new Ext.data.Store({

url:"link.ejf",

proxy:dataProxy,

reader:theReader

});

store.load();

虽然不再需要手动创建HttpProxy 了,但是仍然需要创建DataReader 等,毕竟还是复杂,ExtJS 进一步把这种常用的数据存储器进行了封装,在Store 类的基础上提供了SimpleStoreGroupingStore 等,直接使用SimpleStore,则上面的代码可以进一步简化成下面的内容:

var store=new Ext.data.JSonStore({

url:"link.ejf?cmd=list",

totalProperty: "results",

root: "rows",

fields:['title', {name: 'username', mapping: 'author'},

{name: 'loginTimes', type: 'int'},

{name: 'lastLoginTime', mapping: 'loginTime', type: 'date'}

]

});

store.load();

C:DataReader

表示数据读取器,也就是数据解析器,其负责把从服务器或者内存数组、xml文档中获得的杂乱信息转换成ExtJS 中的记录集Record 数据对象,并存储到Store 里面的记录集数组中。

数据解析器的基类由Ext.data.DataReader定义,其它具体的数据解析器都是该类的子类,ExtJS 中提供了读取二维数组、JSon 数据及Xml 文档的三种数据解析器,分别用于把内存中的二级数组、JSON 格式的数据及XML 文档信息解析成记录集。

1ArrayReader

Ext.data.ArrayReader-数组解析器,用于读取二维数组中的信息,并转换成记录集Record对象。首先看下面的代码:

var MyRecord = Ext.data.Record.create([

{name: 'title', mapping:1},

{name: 'username', mapping:2},

{name: 'loginTimes', type:3}

]);

var myReader = new Ext.data.ArrayReader({

id: 0

}, MyRecord);

这里定义的myReader 可以读取下面的二维数组:

[ [1, '测试', '小王',3], [2, '新年好', 'williamraym',13] ]

2JsonReader

Ext.data.JsonReaderJson 数据解析器,用于读取JSON 格式的数据信息,并转换成记录集Record 对象。看下面使用JsonReader 的代码:

var MyRecord = Ext.data.Record.create([

{name: 'title'},

{name: 'username', mapping: 'author'},

{name: 'loginTimes', type: 'int'}

]);

var myReader = new Ext.data.JsonReader({

totalProperty: "results",

root: "rows",

id: "id"

}, MyRecord);

这里的JsonReader 可以解析下面的JSON 数据:

{ 'results': 2, 'rows': [

{ id: 1, title: '测试', author: '小王', loginTimes: 3 },

{ id: 2, title: 'Ben', author: 'williamraym', loginTimes:13} ]

}

JSonReader 还有比较特殊的用法,就是可以把Store 中记录集的配置信息存放直接保存在从服务器端返回的JSON 数据中,比如下面的例子:

var myReader = new Ext.data.JsonReader();

这一个不带任何参数的myReader,可以处理从服务器端返回的下面JSON 数据:

{

'metaData': {

totalProperty: 'results',

root: 'rows',

id: 'id',

fields: [

{name: 'title'},

{name: 'username', mapping: 'author'},

{name: 'loginTimes', type: 'int'} ]

},

'results': 2, 'rows': [

{ id: 1, title: '测试', author: '小王', loginTimes: 3 },

{ id: 2, title: '新年好', author: 'williamraym', loginTimes:13}]

}

3XmlReader

Ext.data.XmlReaderXML 文档数据解析器,用于把XML 文档数据转换成记录集Record对象。看下面的代码:

var MyRecord = Ext.data.Record.create([

{name: 'title'},

{name: 'username', mapping: 'author'},

{name: 'loginTimes', type: 'int'}

]);

var myReader = new Ext.data.XmlReader({

totalRecords: "results",

record: "rows",

id: "id"

}, MyRecord);

上面的myReader 能够解析下面的xml 文档信息:

2

1

测试</ title ></p> <p><author>小王</ author ></p> <p><loginTimes>3</ loginTimes ></p> <p></row></p> <p><row></p> <p><id>2</id></p> <p><title>新年好</ title ></p> <p><author> williamraym </ author ></p> <p><loginTimes>13</ loginTimes ></p> <p></row></p> <p></topics></p> <p><b> </b></p> <p><b> </b></p> <p><b>DataProxy</b>与自定义<b>Stroe</b></p> <p><b>DataProxy </b><b>字面解释就是数据代理,也可以理解为数据源,也即从哪儿或如何得到需要交给</b><b>DataReader </b><b>解析的数据。数据代理(源)基类由</b><b>Ext.data.DataProxy </b><b>定义,在</b><b>DataProxy</b><b>的基础,</b><b>ExtJS </b><b>提供了</b><b>Ext.data.MemoryProxy</b><b>、</b><b>Ext.data.HttpProxy</b><b>、</b><b>Ext.data.ScriptTagProxy</b><b>等三个分别用于从客户端内存数据、</b><b>Ajax </b><b>读取服务器端的数据及从跨域服务器中读取数据等三种实现。</b></p> <p>比如像SimpleStore 等存储器是直接从从客户端的内存数组中读取数据,此时就可以直接使用Ext.data.MemoryProxy , 而大多数需要从服务器端加载的数据直接使用Ext.data.HttpProxy,HttpProxy 直接使用Ext.Ajax 加载服务器的数据,由于这种请求是不能跨域的,所以要要读取跨域服务器中的数据时就需要使用到Ext.data.ScriptTagProxy。</p> </article> </div> </div> </div> <!--PC和WAP自适应版--> <div id="SOHUCS" sid="1717723738293743616"></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">你可能感兴趣的:(数据源)</h4> <div id="paradigm-article-related"> <div class="recommend-post mb30"> <ul class="widget-links"> <li><a href="/article/1950124769777086464.htm" title="# 【GEE基础及工具)(一)】工欲善其事,必先利其器:借助Open Earth Engine实现影像高效处理及批量任务执行" target="_blank"># 【GEE基础及工具)(一)】工欲善其事,必先利其器:借助Open Earth Engine实现影像高效处理及批量任务执行</a> <span class="text-muted">遥感AI实战</span> <a class="tag" taget="_blank" href="/search/GEE%E5%9F%BA%E7%A1%80%E6%95%99%E7%A8%8B/1.htm">GEE基础教程</a><a class="tag" taget="_blank" href="/search/%E9%81%A5%E6%84%9F/1.htm">遥感</a><a class="tag" taget="_blank" href="/search/GEE/1.htm">GEE</a><a class="tag" taget="_blank" href="/search/%E5%9C%B0%E7%90%86%E4%BF%A1%E6%81%AF/1.htm">地理信息</a><a class="tag" taget="_blank" href="/search/%E4%BF%A1%E6%81%AF%E5%8F%AF%E8%A7%86%E5%8C%96/1.htm">信息可视化</a><a class="tag" taget="_blank" href="/search/sentinel/1.htm">sentinel</a> <div>在遥感数据分析与处理工作中,海量影像数据的预处理(如去云、裁剪)和分析(如均值计算)是支撑后续研究的核心环节。而Sentinel-2影像作为常用的遥感数据源,常因云层遮挡、数据量大等问题增加处理难度。同时,在使用GoogleEarthEngine(GEE)处理数据时,“批量导出任务需手动逐个启动”的问题也会显著降低效率。本文将从“工具优化”和“数据处理”两个维度展开,详细介绍如何通过GEE完成Se</div> </li> <li><a href="/article/1949985075873509376.htm" title="C#的lambda表达式与Linq" target="_blank">C#的lambda表达式与Linq</a> <span class="text-muted">hccee</span> <a class="tag" taget="_blank" href="/search/c%23/1.htm">c#</a><a class="tag" taget="_blank" href="/search/linq/1.htm">linq</a> <div>C#的lambda表达式、Linq、以及常用方法Lambda:简单来讲就是匿名函数,我们不声明方法名,只写一个方法体,这个方法体就是lambda表达式Linq:Linq是LanguageIntergratedQuery(语言集成查询)的缩写,可以对本地对象**集合**或者远程数据源进行结构化的查询操作。lambda表达式如何写一个lambda表达式首先,在写lambda表达式之前,需要先了解两个特</div> </li> <li><a href="/article/1949963886849486848.htm" title="Python, Go, Rust 开发全球海岛坐标定位APP" target="_blank">Python, Go, Rust 开发全球海岛坐标定位APP</a> <span class="text-muted">Geeker-2025</span> <a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/golang/1.htm">golang</a><a class="tag" taget="_blank" href="/search/rust/1.htm">rust</a> <div>以下是一个基于**Python、Go和Rust**协同开发的全球海岛坐标定位APP设计方案,结合三者的优势实现高精度地理计算、实时数据处理和跨平台部署:---###系统架构```mermaidgraphTDA[卫星遥感数据源]-->B(Python数据处理)B-->C{Rust地理引擎}C-->D[Go微服务集群]D-->E[移动端/Web端]E-->F[用户终端]```---###模块分工及技术</div> </li> <li><a href="/article/1949838540112195584.htm" title="在IDEA中直接使用可视化方式创建项目数据库" target="_blank">在IDEA中直接使用可视化方式创建项目数据库</a> <span class="text-muted">52Hertz910</span> <a class="tag" taget="_blank" href="/search/%E7%BC%96%E7%A8%8B%E5%B7%A5%E5%85%B7%E4%BD%BF%E7%94%A8/1.htm">编程工具使用</a><a class="tag" taget="_blank" href="/search/IDEA/1.htm">IDEA</a><a class="tag" taget="_blank" href="/search/mysql/1.htm">mysql</a><a class="tag" taget="_blank" href="/search/%E5%8F%AF%E8%A7%86%E5%8C%96/1.htm">可视化</a> <div>目录前提条件具体步骤1:配置数据源(Database)2:执行.sql文件创建数据库注意事项直接在IDEA中使用可视化页面创建项目数据库,避开单独的数据库可视化软件的使用前提条件安装了数据库(案例中使用MySQL8.0)案例IDEA为IntelliJIDEA2025.1具体步骤1:配置数据源(Database)打开Database工具窗口在IDEA右侧边栏点击Database(或View→Tool</div> </li> <li><a href="/article/1949830850329767936.htm" title="【Spring Boot 整合 MyBatis 详细教程】" target="_blank">【Spring Boot 整合 MyBatis 详细教程】</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/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/boot/1.htm">boot</a><a class="tag" taget="_blank" href="/search/mybatis/1.htm">mybatis</a><a class="tag" taget="_blank" href="/search/%E5%90%8E%E7%AB%AF/1.htm">后端</a> <div>文章目录SpringBoot整合MyBatis详细教程简介环境准备项目搭建项目结构配置项目1.`pom.xml`配置2.`数据源和MyBatis`配置3.`启动类`配置4.`Mapper接口`和`XML映射文件`测试总结SpringBoot整合MyBatis详细教程简介SpringBoot与MyBatis的整合可以让你轻松地构建数据访问层,通过简化配置和自动配置功能,使得开发者可以更加专注于业务逻</div> </li> <li><a href="/article/1949830598264680448.htm" title="Spring Boot 整合 MyBatis 全流程指南" target="_blank">Spring Boot 整合 MyBatis 全流程指南</a> <span class="text-muted"></span> <div>目录SpringBoot整合MyBatis全流程指南一、整合回顾与准备(一)Spring整合MyBatis回顾(二)SpringBoot整合MyBatis优势(三)案例需求(四)准备数据库二、创建工程并引入依赖三、配置数据源信息四、编写代码(一)引入实体类(二)创建mapper接口(三)创建service接口及实现类(四)创建controller类五、测试工程在实际开发中,配置文件的使用至关重要。</div> </li> <li><a href="/article/1949693791451541504.htm" title="大模型 MCP:开启 AI 与现实世界的无缝交互革命" target="_blank">大模型 MCP:开启 AI 与现实世界的无缝交互革命</a> <span class="text-muted">u013250861</span> <a class="tag" taget="_blank" href="/search/LLM/1.htm">LLM</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/%E4%BA%A4%E4%BA%92/1.htm">交互</a><a class="tag" taget="_blank" href="/search/microsoft/1.htm">microsoft</a> <div>前言MCP无疑是当前最受关注的前沿技术之一,无论是在公司内部还是外部,都引起了广泛的讨论与实践。作为一名互联网从业者,笔者自然不愿错过这一科技浪潮。本篇文章分享笔者最近的一些实践经验和心得,希望能抛砖引玉。WHAT:什么是MCP?MCP(ModelContextProtocol,模型上下文协议)是由Anthropic推出的开源协议,旨在实现大型语言模型(LLM)与外部数据源和工具的无缝集成,用来在</div> </li> <li><a href="/article/1949684840974577664.htm" title="Spring Boot 配置文件常用配置属性详解(application.properties / application.yml)" target="_blank">Spring Boot 配置文件常用配置属性详解(application.properties / application.yml)</a> <span class="text-muted"></span> <div>前言SpringBoot的一大优势就是通过简单的配置文件即可快速定制应用行为,而无需编写大量XML配置或Java代码。SpringBoot使用application.properties或application.yml作为核心配置文件,支持丰富的配置属性。本文将详细介绍SpringBoot常用的配置属性,包括:服务器配置数据源配置JPA/Hibernate配置日志配置Thymeleaf/模板引擎配</div> </li> <li><a href="/article/1949600881381011456.htm" title="如何在Excel中进行数据透视表的刷新和自动刷新" target="_blank">如何在Excel中进行数据透视表的刷新和自动刷新</a> <span class="text-muted">Excel客旅</span> <div>1.创建完数据透视表后,如果原始数据有更新,数据透视表也要进行相应的刷新,这样才能保证数据分析的及时性和有效性。如图根据此原始数据已创建好其数据透视表。2.当原始数据有变动,比如学生B2的英语成绩给错了,需要改成65,但是数据透视表里的数据不会自动更新。3.点击数据透视表,在“数据透视表工具”下的“分析”找到“刷新”,点击一下,就可以更新数据了。4.为了防止在更新数据源而忘记及时刷新数据透视表的情</div> </li> <li><a href="/article/1949586627332468736.htm" title="Kettle8.2ETL项目实战教程:快速掌握数据整合利器,提升数据处理效率" target="_blank">Kettle8.2ETL项目实战教程:快速掌握数据整合利器,提升数据处理效率</a> <span class="text-muted"></span> <div>Kettle8.2ETL项目实战教程:快速掌握数据整合利器,提升数据处理效率去发现同类优质开源项目:https://gitcode.com/Kettle8.2ETL项目实战教程,帮助您轻松学习ETL基本流程,高效整合各种数据源,实现数据转换与输出。项目介绍在现代数据分析和大数据处理中,ETL(Extract,Transform,Load)技术扮演着至关重要的角色。Kettle8.2ETL项目实战教</div> </li> <li><a href="/article/1949575158851235840.htm" title="SpringBoot Stream实战指南" target="_blank">SpringBoot Stream实战指南</a> <span class="text-muted"></span> <div>Stream的概念Stream(流)是计算机科学中用于处理数据序列的抽象概念,通常指按顺序读取或写入的数据集合。它可以是文件、网络连接、内存缓冲区等数据源的抽象表示,允许逐块处理数据而无需一次性加载全部内容。Stream的类型输入流(InputStream)从数据源(如文件、网络)读取数据,例如FileInputStream用于读取文件内容。输出流(OutputStream)向目标(如文件、控制台</div> </li> <li><a href="/article/1949383255761416192.htm" title="SpringBoot与Activiti整合实现工作流系统" target="_blank">SpringBoot与Activiti整合实现工作流系统</a> <span class="text-muted">馥郁恒久</span> <div>本文还有配套的精品资源,点击获取简介:本案例详细探讨了如何将SpringBoot与Activiti6.0.0集成,构建基于工作流的管理系统。首先介绍了SpringBoot简化的配置和启动过程,以及Activiti在流程自动化中的作用。通过添加特定依赖项和配置数据源,实现了两者的整合。然后,通过配置类激活Activiti并设置流程引擎的属性。最后,介绍了如何使用Activiti-Model5.22在</div> </li> <li><a href="/article/1949335093516496896.htm" title="Grafana 可视化配置" target="_blank">Grafana 可视化配置</a> <span class="text-muted">7 号</span> <a class="tag" taget="_blank" href="/search/grafana/1.htm">grafana</a> <div>Grafana是什么Grafana是一个开源的可视化和监控工具,广泛用于查看和分析来自各种数据源的时间序列数据。它提供了一个灵活的仪表盘(dashboard)界面,用户可以通过它将数据源中的指标进行图表化展示和监控,帮助分析趋势、监控系统健康状态以及进行告警管理。Grafana常用于DevOps、IT基础设施监控和性能优化领域,与Prometheus等监控工具搭配使用非常流行。Grafana的特点</div> </li> <li><a href="/article/1949301296796332032.htm" title="Java 内存操作流深度解析" target="_blank">Java 内存操作流深度解析</a> <span class="text-muted">tsxchen</span> <a class="tag" taget="_blank" href="/search/I%2FO%E6%96%87%E4%BB%B6%E6%B5%81/1.htm">I/O文件流</a><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/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a> <div>内存操作流是JavaI/O中处理内存数据的核心工具,它允许直接在内存中读写数据,避免了磁盘I/O的开销。这类流特别适合处理临时数据、数据转换和内存缓存等场景。一、内存操作流体系概览内存操作流主要分为两类:字节内存流:处理原始字节数据字符内存流:处理文本数据二、字节内存操作流详解1.ByteArrayInputStream在内存中读取字节数组的输入流核心特性:数据源:字节数组(byte[])支持标记</div> </li> <li><a href="/article/1949256160934686720.htm" title="Spring boot Grafana优秀的监控模板" target="_blank">Spring boot Grafana优秀的监控模板</a> <span class="text-muted">笔墨登场说说</span> <a class="tag" taget="_blank" href="/search/grafana/1.htm">grafana</a> <div>JVM(Micrometer)|GrafanaLabs1SLSJVM监控大盘|GrafanaLabsSpringBoot2.1Statistics|GrafanaLabsspringbootgranfana监控接口指定接口响应的在SpringBoot应用中,使用Grafana进行监控通常涉及以下几个步骤:设置Prometheus作为数据源:Prometheus是一个开源的监控与警报工具,可以收集和</div> </li> <li><a href="/article/1949192720849367040.htm" title="J2EE模式---表现层集成模式" target="_blank">J2EE模式---表现层集成模式</a> <span class="text-muted">hqxstudying</span> <a class="tag" taget="_blank" href="/search/java-ee/1.htm">java-ee</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</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/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a> <div>表现层集成模式基础概念表现层集成模式(PresentationIntegrationPatterns)是一组用于解决用户界面与后端系统集成问题的设计模式。这些模式关注如何将不同的应用组件、服务或数据源集成到统一的用户界面中,同时保持界面的可维护性、可扩展性和性能。表现层集成模式在企业级应用、微服务架构和大型Web应用中尤为重要。常见的表现层集成模式1.前端控制器模式(FrontController</div> </li> <li><a href="/article/1949191330227875840.htm" title="Python实现数据自动生成表格:从数据源到可视化表格的完整解决方案" target="_blank">Python实现数据自动生成表格:从数据源到可视化表格的完整解决方案</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/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a> <div>在现代数据处理和报告生成中,将原始数据转换为结构化、美观的表格是一个常见且重要的需求。无论是生成Excel报表、Word文档中的表格,还是HTML网页表格,自动化的表格生成能够大大提高工作效率,减少人工错误,并确保数据展示的一致性。本文将深入探讨如何使用Python实现数据自动生成表格的完整解决方案,涵盖多种数据源、多种输出格式,以及高级的表格样式和交互功能。目录数据自动生成表格概述技术栈与环境准</div> </li> <li><a href="/article/1948939932689035264.htm" title="telegraf简介" target="_blank">telegraf简介</a> <span class="text-muted">alankuo</span> <a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a> <div>Telegraf是一款由InfluxData开发的开源数据采集工具,专为时序数据(TimeSeriesData)设计,广泛用于监控系统、设备、应用程序的性能指标和运行状态。它具有轻量、灵活、插件丰富等特点,是时序数据监控生态(如TICKStack:Telegraf+InfluxDB+Chronograf+Kapacitor)中的核心组件之一。核心特点多源采集:支持从多种数据源(系统、数据库、应用、</div> </li> <li><a href="/article/1948935642918481920.htm" title="Springboot+activiti启动时报错XMLException: Error reading XML" target="_blank">Springboot+activiti启动时报错XMLException: Error reading XML</a> <span class="text-muted"></span> <div>异常描述:同一个activiti数据源,我一个项目A(springboot3.2.10+activiti7.1.0.M6)启动不会报错,但是另一个项目B(springboot2.7.12+activiti7.1.0.M6)启动却报以下异常:Failedtostartbean'processDeployedEventProducer';nestedexceptionisorg.activiti.bp</div> </li> <li><a href="/article/1948823571635695616.htm" title="SpringCloud+Seata+MybatisPlus多数据源@GlobalTransactional异常数据未回滚事务失效的解决方案" target="_blank">SpringCloud+Seata+MybatisPlus多数据源@GlobalTransactional异常数据未回滚事务失效的解决方案</a> <span class="text-muted">banmajio</span> <a class="tag" taget="_blank" href="/search/%E5%88%86%E5%B8%83%E5%BC%8F%E5%BE%AE%E6%9C%8D%E5%8A%A1/1.htm">分布式微服务</a><a class="tag" taget="_blank" href="/search/%E5%88%86%E5%B8%83%E5%BC%8F/1.htm">分布式</a><a class="tag" taget="_blank" href="/search/%E5%88%86%E5%B8%83%E5%BC%8F%E4%BA%8B%E5%8A%A1/1.htm">分布式事务</a><a class="tag" taget="_blank" href="/search/seata/1.htm">seata</a><a class="tag" taget="_blank" href="/search/SpringCloud/1.htm">SpringCloud</a> <div>SpringCloud+Seata+MybatisPlus多数据源@GlobalTransactional异常数据未回滚的解决方案一、问题解析1.1全局异常捕获吞异常导致分布式事务失效1.2MybatisPlus多数据源dynamic-datasource-spring-boot-starter导致事务失效二、解决方案2.1全局异常事务失效解决2.2多数据源导致全局事务失效解决SpringClou</div> </li> <li><a href="/article/1948751075037212672.htm" title="AI与区块链融合:2025年的技术革命与投资机遇" target="_blank">AI与区块链融合:2025年的技术革命与投资机遇</a> <span class="text-muted"></span> <div>摘要随着人工智能技术的快速发展和区块链技术的日益成熟,2025年标志着这两项革命性技术融合的关键节点。本文深入分析了AI与区块链融合的技术架构、市场表现、企业应用案例以及投资前景,为技术从业者和投资者提供全面的行业洞察。通过对多个权威数据源的综合分析,我们发现AI加密货币项目正在引领新一轮的技术创新浪潮,预计将在未来几年内实现爆发式增长。关键词:人工智能、区块链、智能合约、去中心化应用、企业级区块</div> </li> <li><a href="/article/1948689166367780864.htm" title="一文搞懂FLINK框架支持的所有源算子(包含代码实现)" target="_blank">一文搞懂FLINK框架支持的所有源算子(包含代码实现)</a> <span class="text-muted">每天五分钟玩转人工智能</span> <a class="tag" taget="_blank" href="/search/Flink%E6%8A%80%E6%9C%AF%E5%AE%9E%E6%88%98/1.htm">Flink技术实战</a><a class="tag" taget="_blank" href="/search/flink/1.htm">flink</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/%E6%BA%90%E7%AE%97%E5%AD%90/1.htm">源算子</a><a class="tag" taget="_blank" href="/search/%E6%89%B9%E6%A8%A1%E5%BC%8F/1.htm">批模式</a><a class="tag" taget="_blank" href="/search/%E6%B5%81%E6%A8%A1%E5%BC%8F/1.htm">流模式</a> <div>本文重点源算子是FLINK流式计算框架中的第一个操作符,它用于从外部数据源(如文件、消息队列、套接字等)读取数据,并将数据转化为FLINK的数据流DataStream,然后构建进行转换处理,所以source就是FLINK整个处理程序的输入端。FLINK提供了以下几种常用的源算子1.FileSource:FileSource是FLINK中最常用的源算子之一,它用于从文件中读取数据。FileSourc</div> </li> <li><a href="/article/1948435252888268800.htm" title="遥感技术在地质构造及找矿中应用" target="_blank">遥感技术在地质构造及找矿中应用</a> <span class="text-muted">BNU_JW</span> <div>摘要利用Landsat-8卫星的ETM+遥感影像为数据源,结合当地区域地质调查基础资料,对中国西北某高原地区内线性断裂、环形构造、侵入岩体、赋矿地层等地质构造的成矿特征开展遥感解译,综合运用数理统计原理与地统计学分析方法,分析遥感解译的地质构造信息与矿产勘查的相关性,总结了区内解译构造与成矿关系条件。1、区域地质构造概况工作区位于我国西部核心构造部位的青藏高原北缘,北邻塔里木盆地,南接柴达木盆地,</div> </li> <li><a href="/article/1948396421795344384.htm" title="奇麟大数据:基于Apache SeaTunnel 构建高效、灵活的数据集成平台" target="_blank">奇麟大数据:基于Apache SeaTunnel 构建高效、灵活的数据集成平台</a> <span class="text-muted">ZVAyIVqt0UFji</span> <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/apache/1.htm">apache</a> <div>在当今数据驱动的时代,企业面临着海量数据以不同格式分散在不同系统的挑战。如何高效、稳定地集成这些异构数据源,成为企业实现数据价值最大化的关键。ApacheSeaTunnel作为一款高性能、分布式、插件化的数据集成平台,在解决这一挑战中扮演着重要角色。本文将介绍ApacheSeaTunnel如何解决异构数据源之间的数据同步问题,以及基于Seatunnel构建高效灵活的数据集成平台。1.数据集成挑战与</div> </li> <li><a href="/article/1948298415221829632.htm" title="Druid 监控分布式解决方案" target="_blank">Druid 监控分布式解决方案</a> <span class="text-muted">冷冷zz</span> <div>什么是DruidMonitorDruid是一个非常强大的数据库连接池,但是它的强大并不仅仅体现在作为一个高性能连接池加快数据访问上和连接管理上,它内置了一个强大的监控工具:DruidMonitor。不仅可以监控数据源和慢查询,还可以监控Web应用、URI监控、Session监控、Spring监控等。ip:port/druid/sql.html什么是DruidAdmin如上文所述,DruidMoni</div> </li> <li><a href="/article/1948247057898729472.htm" title="基于MCP的智能体架构设计:实现智能体与外部世界的无缝连接" target="_blank">基于MCP的智能体架构设计:实现智能体与外部世界的无缝连接</a> <span class="text-muted">蓝色的香菇</span> <a class="tag" taget="_blank" href="/search/%E5%A4%A7%E6%A8%A1%E5%9E%8B/1.htm">大模型</a><a class="tag" taget="_blank" href="/search/%E5%A4%A7%E6%A8%A1%E5%9E%8B%E5%BA%94%E7%94%A8%E5%BC%80%E5%8F%91/1.htm">大模型应用开发</a> <div>引言随着大型语言模型(LLM)能力的不断提升,智能体(Agent)系统逐渐成为AI应用的主流形态。然而,智能体要真正发挥其潜力,需要能够与外部世界进行有效交互,包括访问文件系统、数据库、API等资源。传统的解决方案通常是为每个数据源或工具开发特定的集成代码,这种方式不仅效率低下,而且难以扩展。为了解决这一问题,Anthropic公司于2024年11月推出了模型上下文协议(ModelContextP</div> </li> <li><a href="/article/1948169399621971968.htm" title="python 自动获取通达信自定义板块股票" target="_blank">python 自动获取通达信自定义板块股票</a> <span class="text-muted">2503_92652889</span> <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/%E5%89%8D%E7%AB%AF/1.htm">前端</a> <div>对于个人量化开发投资者来讲,有两个事情最难,1、一个好的策略,2、好的行情数据源。好的策略相信大部分人自己都会有想对应的策略,但想把这些策略全部搬到量化平台还是挺难的,今天介绍一个比较简单的方案。使用通达信的预警功能,或者是使用策略股票池功能,来自动计算哪些标的符合自己的要求。然后通过下面的py代码就可以直接读取到数据,并保存在dltp.csv文件中进行存储。当然这是第一步获取标的。其后是获取行情</div> </li> <li><a href="/article/1947903296471625728.htm" title="数据仓库和数据库的区别" target="_blank">数据仓库和数据库的区别</a> <span class="text-muted">神秘打工猴</span> <a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E4%BB%93%E5%BA%93/1.htm">数据仓库</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a> <div>一,数据仓库数据仓库(DataWarehouse)是一种专门设计用于报告和分析的数据库系统,它允许将来自一个或多个数据源的数据集成、存储和分析。数据仓库的主要目的是支持决策制定,通过提供快速访问历史数据和进行复杂查询的能力。以下是数据仓库的一些关键特性和概念:1.主题导向:数据仓库围绕特定的业务主题构建,如销售、客户或财务,而不是围绕应用程序的功能。2.集成性:数据仓库集成了来自不同源系统的数据,</div> </li> <li><a href="/article/1947841140917071872.htm" title="BI工具多数据源融合:跨系统分析解决方案" target="_blank">BI工具多数据源融合:跨系统分析解决方案</a> <span class="text-muted">大数据洞察</span> <a class="tag" taget="_blank" href="/search/%E5%A4%A7%E6%95%B0%E6%8D%AE%E4%B8%8EAI%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">大数据与AI人工智能</a><a class="tag" taget="_blank" href="/search/%E5%A4%A7%E6%95%B0%E6%8D%AEAI%E5%BA%94%E7%94%A8/1.htm">大数据AI应用</a><a class="tag" taget="_blank" href="/search/ai/1.htm">ai</a> <div>BI工具多数据源融合:跨系统分析解决方案关键词:BI工具,多数据源融合,数据集成,ETL/ELT,数据治理,跨系统分析,数据模型摘要:在企业数字化转型的浪潮中,业务数据往往分散在CRM、ERP、Excel表格、API接口等数十个甚至上百个独立系统中,形成"数据孤岛"。这些"孤岛"就像一个个互不连通的池塘,单独看只能看到局部的鱼群,却无法知道整片水域的生态。BI工具多数据源融合技术,正是搭建连接这些</div> </li> <li><a href="/article/1947622324203220992.htm" title="WPF——依赖属性" target="_blank">WPF——依赖属性</a> <span class="text-muted">「千秋雪」</span> <a class="tag" taget="_blank" href="/search/WPF/1.htm">WPF</a> <div>依赖属性简介依赖属性就是自己本身没有值,可以通过binding获取到数据源的值。具有依赖属性的对象称为依赖对象,依赖对象包含一般的控件(TextBox.text或ListBox.ItemsSourceProperty就是一个典型的依赖属性),也包含从有依赖属性的类生成的对象(后面会举例说明)。优点节省内存空间。每个CLR属性都包含一个非static的字段,如果一个实例具有多个属性,创建实例数目多的</div> </li> <li><a href="/article/53.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/%E4%BA%8C%E5%88%86%E6%9F%A5%E6%89%BE/1.htm">二分查找</a><a class="tag" taget="_blank" href="/search/%E6%8E%92%E5%BA%8F/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/%E6%8A%98%E5%8D%8A/1.htm">折半</a> <div> 一:概念 二分查找又称 折半查找( 折半搜索/ 二分搜索),优点是比较次数少,查找速度快,平均性能好;其缺点是要求待查表为有序表,且插入删除困难。因此,折半查找方法适用于不经常变动而 查找频繁的有序列表。首先,假设表中元素是按升序排列,将表中间位置记录的关键字与查找关键字比较,如果两者相等,则查找成功;否则利用中间位置记录将表 分成前、后两个子表,如果中间位置记录的关键字大于查找关键字,则进一步</div> </li> <li><a href="/article/180.htm" title="java中的BigDecimal" target="_blank">java中的BigDecimal</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/BigDecimal/1.htm">BigDecimal</a> <div>        在项目开发过程中出现精度丢失问题,查资料用BigDecimal解决,并发现如下这篇BigDecimal的解决问题的思路和方法很值得学习,特转载。         原文地址:http://blog.csdn.net/ugg/article/de</div> </li> <li><a href="/article/307.htm" title="Shell echo命令详解" target="_blank">Shell echo命令详解</a> <span class="text-muted">daizj</span> <a class="tag" taget="_blank" href="/search/echo/1.htm">echo</a><a class="tag" taget="_blank" href="/search/shell/1.htm">shell</a> <div>Shell echo命令 Shell 的 echo 指令与 PHP 的 echo 指令类似,都是用于字符串的输出。命令格式: echo string 您可以使用echo实现更复杂的输出格式控制。 1.显示普通字符串: echo "It is a test" 这里的双引号完全可以省略,以下命令与上面实例效果一致: echo Itis a test 2.显示转义</div> </li> <li><a href="/article/434.htm" title="Oracle DBA 简单操作" target="_blank">Oracle DBA 简单操作</a> <span class="text-muted">周凡杨</span> <a class="tag" taget="_blank" href="/search/oracle+dba+sql/1.htm">oracle dba sql</a> <div> --执行次数多的SQL select sql_text,executions from (      select sql_text,executions from v$sqlarea order by executions desc      ) where rownum<81;  &nb</div> </li> <li><a href="/article/561.htm" title="画图重绘" target="_blank">画图重绘</a> <span class="text-muted">朱辉辉33</span> <a class="tag" taget="_blank" href="/search/%E6%B8%B8%E6%88%8F/1.htm">游戏</a> <div>  我第一次接触重绘是编写五子棋小游戏的时候,因为游戏里的棋盘是用线绘制的,而这些东西并不在系统自带的重绘里,所以在移动窗体时,棋盘并不会重绘出来。所以我们要重写系统的重绘方法。   在重写系统重绘方法时,我们要注意一定要调用父类的重绘方法,即加上super.paint(g),因为如果不调用父类的重绘方式,重写后会把父类的重绘覆盖掉,而父类的重绘方法是绘制画布,这样就导致我们</div> </li> <li><a href="/article/688.htm" title="线程之初体验" target="_blank">线程之初体验</a> <span class="text-muted">西蜀石兰</span> <a class="tag" taget="_blank" href="/search/%E7%BA%BF%E7%A8%8B/1.htm">线程</a> <div>一直觉得多线程是学Java的一个分水岭,懂多线程才算入门。 之前看《编程思想》的多线程章节,看的云里雾里,知道线程类有哪几个方法,却依旧不知道线程到底是什么?书上都写线程是进程的模块,共享线程的资源,可是这跟多线程编程有毛线的关系,呜呜。。。 线程其实也是用户自定义的任务,不要过多的强调线程的属性,而忽略了线程最基本的属性。 你可以在线程类的run()方法中定义自己的任务,就跟正常的Ja</div> </li> <li><a href="/article/815.htm" title="linux集群互相免登陆配置" target="_blank">linux集群互相免登陆配置</a> <span class="text-muted">林鹤霄</span> <a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a> <div>配置ssh免登陆 1、生成秘钥和公钥    ssh-keygen -t rsa 2、提示让你输入,什么都不输,三次回车之后会在~下面的.ssh文件夹中多出两个文件id_rsa 和 id_rsa.pub    其中id_rsa为秘钥,id_rsa.pub为公钥,使用公钥加密的数据只有私钥才能对这些数据解密    c</div> </li> <li><a href="/article/942.htm" title="mysql : Lock wait timeout exceeded; try restarting transaction" target="_blank">mysql : Lock wait timeout exceeded; try restarting transaction</a> <span class="text-muted">aigo</span> <a class="tag" taget="_blank" href="/search/mysql/1.htm">mysql</a> <div>原文:http://www.cnblogs.com/freeliver54/archive/2010/09/30/1839042.html   原因是你使用的InnoDB   表类型的时候, 默认参数:innodb_lock_wait_timeout设置锁等待的时间是50s, 因为有的锁等待超过了这个时间,所以抱错.   你可以把这个时间加长,或者优化存储</div> </li> <li><a href="/article/1069.htm" title="Socket编程 基本的聊天实现。" target="_blank">Socket编程 基本的聊天实现。</a> <span class="text-muted">alleni123</span> <a class="tag" taget="_blank" href="/search/socket/1.htm">socket</a> <div>public class Server { //用来存储所有连接上来的客户 private List<ServerThread> clients; public static void main(String[] args) { Server s = new Server(); s.startServer(9988); } publi</div> </li> <li><a href="/article/1196.htm" title="多线程监听器事件模式(一个简单的例子)" target="_blank">多线程监听器事件模式(一个简单的例子)</a> <span class="text-muted">百合不是茶</span> <a class="tag" taget="_blank" href="/search/%E7%BA%BF%E7%A8%8B/1.htm">线程</a><a class="tag" taget="_blank" href="/search/%E7%9B%91%E5%90%AC%E6%A8%A1%E5%BC%8F/1.htm">监听模式</a> <div>    多线程的事件监听器模式   监听器时间模式经常与多线程使用,在多线程中如何知道我的线程正在执行那什么内容,可以通过时间监听器模式得到        创建多线程的事件监听器模式 思路:    1, 创建线程并启动,在创建线程的位置设置一个标记     2,创建队</div> </li> <li><a href="/article/1323.htm" title="spring InitializingBean接口" target="_blank">spring InitializingBean接口</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/spring/1.htm">spring</a> <div>spring的事务的TransactionTemplate,其源码如下: public class TransactionTemplate extends DefaultTransactionDefinition implements TransactionOperations, InitializingBean{ ... } TransactionTemplate继承了DefaultT</div> </li> <li><a href="/article/1450.htm" title="Oracle中询表的权限被授予给了哪些用户" target="_blank">Oracle中询表的权限被授予给了哪些用户</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/%E6%9D%83%E9%99%90/1.htm">权限</a> <div>        Oracle查询表将权限赋给了哪些用户的SQL,以备查用。 select t.table_name as "表名", t.grantee as "被授权的属组", t.owner as "对象所在的属组"</div> </li> <li><a href="/article/1577.htm" title="【Struts2五】Struts2 参数传值" target="_blank">【Struts2五】Struts2 参数传值</a> <span class="text-muted">bit1129</span> <a class="tag" taget="_blank" href="/search/struts2/1.htm">struts2</a> <div>Struts2中参数传值的3种情况 1.请求参数绑定到Action的实例字段上 2.Action将值传递到转发的视图上 3.Action将值传递到重定向的视图上   一、请求参数绑定到Action的实例字段上以及Action将值传递到转发的视图上 Struts可以自动将请求URL中的请求参数或者表单提交的参数绑定到Action定义的实例字段上,绑定的规则使用ognl表达式语言</div> </li> <li><a href="/article/1704.htm" title="【Kafka十四】关于auto.offset.reset[Q/A]" target="_blank">【Kafka十四】关于auto.offset.reset[Q/A]</a> <span class="text-muted">bit1129</span> <a class="tag" taget="_blank" href="/search/kafka/1.htm">kafka</a> <div>I got serveral questions about  auto.offset.reset. This configuration parameter governs how  consumer read the message from  Kafka when  there is no initial offset in ZooKeeper or </div> </li> <li><a href="/article/1831.htm" title="nginx gzip压缩配置" target="_blank">nginx gzip压缩配置</a> <span class="text-muted">ronin47</span> <a class="tag" taget="_blank" href="/search/nginx+gzip+%E5%8E%8B%E7%BC%A9%E8%8C%83%E4%BE%8B/1.htm">nginx gzip 压缩范例</a> <div>nginx gzip压缩配置 更多 0 nginx gzip 配置   随着nginx的发展,越来越多的网站使用nginx,因此nginx的优化变得越来越重要,今天我们来看看nginx的gzip压缩到底是怎么压缩的呢? gzip(GNU-ZIP)是一种压缩技术。经过gzip压缩后页面大小可以变为原来的30%甚至更小,这样,用</div> </li> <li><a href="/article/1958.htm" title="java-13.输入一个单向链表,输出该链表中倒数第 k 个节点" target="_blank">java-13.输入一个单向链表,输出该链表中倒数第 k 个节点</a> <span class="text-muted">bylijinnan</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a> <div>two cursors. Make the first cursor go K steps first. /* * 第 13 题:题目:输入一个单向链表,输出该链表中倒数第 k 个节点 */ public void displayKthItemsBackWard(ListNode head,int k){ ListNode p1=head,p2=head; </div> </li> <li><a href="/article/2085.htm" title="Spring源码学习-JdbcTemplate queryForObject" target="_blank">Spring源码学习-JdbcTemplate queryForObject</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/spring/1.htm">spring</a> <div>JdbcTemplate中有两个可能会混淆的queryForObject方法: 1. Object queryForObject(String sql, Object[] args, Class requiredType) 2. Object queryForObject(String sql, Object[] args, RowMapper rowMapper) 第1个方法是只查</div> </li> <li><a href="/article/2212.htm" title="[冰川时代]在冰川时代,我们需要什么样的技术?" target="_blank">[冰川时代]在冰川时代,我们需要什么样的技术?</a> <span class="text-muted">comsci</span> <a class="tag" taget="_blank" href="/search/%E6%8A%80%E6%9C%AF/1.htm">技术</a> <div>      看美国那边的气候情况....我有个感觉...是不是要进入小冰期了?      那么在小冰期里面...我们的户外活动肯定会出现很多问题...在室内呆着的情况会非常多...怎么在室内呆着而不发闷...怎么用最低的电力保证室内的温度.....这都需要技术手段...   &nb</div> </li> <li><a href="/article/2339.htm" title="js 获取浏览器型号" target="_blank">js 获取浏览器型号</a> <span class="text-muted">cuityang</span> <a class="tag" taget="_blank" href="/search/js/1.htm">js</a><a class="tag" taget="_blank" href="/search/%E6%B5%8F%E8%A7%88%E5%99%A8/1.htm">浏览器</a> <div>根据浏览器获取iphone和apk的下载地址 <!DOCTYPE html> <html> <head>     <meta charset="utf-8" content="text/html"/>     <meta name=</div> </li> <li><a href="/article/2466.htm" title="C# socks5详解 转" target="_blank">C# socks5详解 转</a> <span class="text-muted">dalan_123</span> <a class="tag" taget="_blank" href="/search/socket/1.htm">socket</a><a class="tag" taget="_blank" href="/search/C%23/1.htm">C#</a> <div>http://www.cnblogs.com/zhujiechang/archive/2008/10/21/1316308.html  这里主要讲的是用.NET实现基于Socket5下面的代理协议进行客户端的通讯,Socket4的实现是类似的,注意的事,这里不是讲用C#实现一个代理服务器,因为实现一个代理服务器需要实现很多协议,头大,而且现在市面上有很多现成的代理服务器用,性能又好,</div> </li> <li><a href="/article/2593.htm" title="运维 Centos问题汇总" target="_blank">运维 Centos问题汇总</a> <span class="text-muted">dcj3sjt126com</span> <a class="tag" taget="_blank" href="/search/%E4%BA%91%E4%B8%BB%E6%9C%BA/1.htm">云主机</a> <div>一、sh 脚本不执行的原因 sh脚本不执行的原因 只有2个 1.权限不够 2.sh脚本里路径没写完整。   二、解决You have new mail in /var/spool/mail/root 修改/usr/share/logwatch/default.conf/logwatch.conf配置文件 MailTo = MailFrom   三、查询连接数</div> </li> <li><a href="/article/2720.htm" title="Yii防注入攻击笔记" target="_blank">Yii防注入攻击笔记</a> <span class="text-muted">dcj3sjt126com</span> <a class="tag" taget="_blank" href="/search/sql/1.htm">sql</a><a class="tag" taget="_blank" href="/search/WEB%E5%AE%89%E5%85%A8/1.htm">WEB安全</a><a class="tag" taget="_blank" href="/search/yii/1.htm">yii</a> <div>网站表单有注入漏洞须对所有用户输入的内容进行个过滤和检查,可以使用正则表达式或者直接输入字符判断,大部分是只允许输入字母和数字的,其它字符度不允许;对于内容复杂表单的内容,应该对html和script的符号进行转义替换:尤其是<,>,',"",&这几个符号 这里有个转义对照表: http://blog.csdn.net/xinzhu1990/articl</div> </li> <li><a href="/article/2847.htm" title="MongoDB简介[一]" target="_blank">MongoDB简介[一]</a> <span class="text-muted">eksliang</span> <a class="tag" taget="_blank" href="/search/mongodb/1.htm">mongodb</a><a class="tag" taget="_blank" href="/search/MongoDB%E7%AE%80%E4%BB%8B/1.htm">MongoDB简介</a> <div>MongoDB简介 转载请出自出处:http://eksliang.iteye.com/blog/2173288 1.1易于使用        MongoDB是一个面向文档的数据库,而不是关系型数据库。与关系型数据库相比,面向文档的数据库不再有行的概念,取而代之的是更为灵活的“文档”模型。        另外,不</div> </li> <li><a href="/article/2974.htm" title="zookeeper windows 入门安装和测试" target="_blank">zookeeper windows 入门安装和测试</a> <span class="text-muted">greemranqq</span> <a class="tag" taget="_blank" href="/search/zookeeper/1.htm">zookeeper</a><a class="tag" taget="_blank" href="/search/%E5%AE%89%E8%A3%85/1.htm">安装</a><a class="tag" taget="_blank" href="/search/%E5%88%86%E5%B8%83%E5%BC%8F/1.htm">分布式</a> <div>一、序言       以下是我对zookeeper 的一些理解:      zookeeper 作为一个服务注册信息存储的管理工具,好吧,这样说得很抽象,我们举个“栗子”。       栗子1号:       假设我是一家KTV的老板,我同时拥有5家KTV,我肯定得时刻监视</div> </li> <li><a href="/article/3101.htm" title="Spring之使用事务缘由(2-注解实现)" target="_blank">Spring之使用事务缘由(2-注解实现)</a> <span class="text-muted">ihuning</span> <a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a> <div>  Spring事务注解实现   1. 依赖包:     1.1 spring包:           spring-beans-4.0.0.RELEASE.jar           spring-context-4.0.0.</div> </li> <li><a href="/article/3228.htm" title="iOS App Launch Option" target="_blank">iOS App Launch Option</a> <span class="text-muted">啸笑天</span> <a class="tag" taget="_blank" href="/search/option/1.htm">option</a> <div>iOS 程序启动时总会调用application:didFinishLaunchingWithOptions:,其中第二个参数launchOptions为NSDictionary类型的对象,里面存储有此程序启动的原因。   launchOptions中的可能键值见UIApplication Class Reference的Launch Options Keys节 。 1、若用户直接</div> </li> <li><a href="/article/3355.htm" title="jdk与jre的区别(_)" target="_blank">jdk与jre的区别(_)</a> <span class="text-muted">macroli</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/jvm/1.htm">jvm</a><a class="tag" taget="_blank" href="/search/jdk/1.htm">jdk</a> <div>简单的说JDK是面向开发人员使用的SDK,它提供了Java的开发环境和运行环境。SDK是Software Development Kit 一般指软件开发包,可以包括函数库、编译程序等。  JDK就是Java Development Kit JRE是Java Runtime Enviroment是指Java的运行环境,是面向Java程序的使用者,而不是开发者。 如果安装了JDK,会发同你</div> </li> <li><a href="/article/3482.htm" title="Updates were rejected because the tip of your current branch is behind" target="_blank">Updates were rejected because the tip of your current branch is behind</a> <span class="text-muted">qiaolevip</span> <a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0%E6%B0%B8%E6%97%A0%E6%AD%A2%E5%A2%83/1.htm">学习永无止境</a><a class="tag" taget="_blank" href="/search/%E6%AF%8F%E5%A4%A9%E8%BF%9B%E6%AD%A5%E4%B8%80%E7%82%B9%E7%82%B9/1.htm">每天进步一点点</a><a class="tag" taget="_blank" href="/search/%E4%BC%97%E8%A7%82%E5%8D%83%E8%B1%A1/1.htm">众观千象</a><a class="tag" taget="_blank" href="/search/git/1.htm">git</a> <div>$ git push joe prod-2295-1 To git@git.dianrong.com:joe.le/dr-frontend.git ! [rejected] prod-2295-1 -> prod-2295-1 (non-fast-forward) error: failed to push some refs to 'git@git.dianron</div> </li> <li><a href="/article/3609.htm" title="[一起学Hive]之十四-Hive的元数据表结构详解" target="_blank">[一起学Hive]之十四-Hive的元数据表结构详解</a> <span class="text-muted">superlxw1234</span> <a class="tag" taget="_blank" href="/search/hive/1.htm">hive</a><a class="tag" taget="_blank" href="/search/hive%E5%85%83%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84/1.htm">hive元数据结构</a> <div>关键字:Hive元数据、Hive元数据表结构   之前在 “[一起学Hive]之一–Hive概述,Hive是什么”中介绍过,Hive自己维护了一套元数据,用户通过HQL查询时候,Hive首先需要结合元数据,将HQL翻译成MapReduce去执行。 本文介绍一下Hive元数据中重要的一些表结构及用途,以Hive0.13为例。   文章最后面,会以一个示例来全面了解一下,</div> </li> <li><a href="/article/3736.htm" title="Spring 3.2.14,4.1.7,4.2.RC2发布" target="_blank">Spring 3.2.14,4.1.7,4.2.RC2发布</a> <span class="text-muted">wiselyman</span> <a class="tag" taget="_blank" href="/search/Spring+3/1.htm">Spring 3</a> <div>  Spring 3.2.14、4.1.7及4.2.RC2于6月30日发布。   其中Spring 3.2.1是一个维护版本(维护周期到2016-12-31截止),后续会继续根据需求和bug发布维护版本。此时,Spring官方强烈建议升级Spring框架至4.1.7 或者将要发布的4.2 。   其中Spring 4.1.7主要包含这些更新内容。 </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>