我们这次给大家带来的是用jQuery实现页码跳转式动态数据分页这个效果,这个效果最明显的就是没有数据加载和刷新页面这个过程,再做小型数据的加载也多级网页加载的时候很有效。我们先来看下实际效果:
var data = [ {
"warehouseID" : "3750",
"warehouseCode" : "CK20140825061813777127447",
"province" : "上海",
"endProvince" : "江苏省",
"provinceId" : "310000",
"cityId" : "310100",
"areaId" : "310109",
"endProvinceId" : "320000",
"endCityId" : "320600",
"endAreaId" : "320612",
"materialId" : "0",
"material" : "",
"specId" : "0",
"productNId" : "0",
"varietiesId" : "8",
"varietiesTypeId" : "621",
"taskCode" : "T1611230481",
"customerID" : "20147",
"customerName" : "脚本之家",
"createDate" : "2016-11-23 18:41:40",
"wareHouseName" : "找钢仓库",
"city" : "上海市",
"area" : "虹口区",
"startAddr" : "逸仙路25号",
"endCity" : "南通市",
"endArea" : "通州区",
"endAddr" : "1",
"varietiesTypeName" : "钢材",
"varieties" : "线材",
"productN" : "",
"spec" : "",
"weight" : "1",
"num" : "1",
"receiver" : "",
"receiverPhone" : "1",
"remark" : "",
"label" : "",
"startAddrNumber" : "1",
"varietiesNumber" : "1",
"contactsId" : "22494",
"contactsName" : "刘宇测试"
} ]
;(function($, window, document,undefined) {
var cjjTable = function(ele,opt){
this.$element = ele,
this.defaults ={
title:null,
body:null,
display:null,
pageNUmber:8,
pageLength:0,
url:null,
dbTrclick:function(that){
}
}
this.options = $.extend({},this.defaults,opt)
}
cjjTable.prototype = {
start:function(){
var _this = this;
var titlelistBox="";
var titlesmall="";
for(var i=0;i<_this.options.title.length;i++){
titlesmall+=""+_this.options.title[i]+" ";
titlelistBox = titlesmall;
}
var json = "";
var maxpagenumberBox = 7;//选择项最多的数量
var json = this.options.url;
var histroy_DDBox = "";
var histroy_DD = "";
var firstPageNumber=_this.options.pageLength>_this.options.pageNUmber?_this.options.pageNUmber:_this.options.pageLength;
for (var i = 0; i _this.options.title.length&&_this.options.display[x]!=undefined){
display = _this.options.display[x]*1==1?"table-cell":"none";
}
bodyBox+=""+json[i][type]+" ";
bodyBigBox = bodyBox;
}
histroy_DD +=""+bodyBigBox+" ";
histroy_DDBox = histroy_DD;
}
$( _this.$element.selector+" table tfoot").html("");
if (Math.ceil(_this.options.pageLength/ _this.options.pageNUmber) == 1) {
$( _this.$element.selector+" .nextPage").css("display", "none");
$(_this.$element.selector+" .endPage").css("display", "none");
}
var maxpagenumberBoxBigbox = "";
var maxpagenumberBoxBig = "";
if (Math.ceil(_this.options.pageLength/ _this.options.pageNUmber) < maxpagenumberBox) {
for (var i = 0; i < Math.ceil(_this.options.pageLength/ _this.options.pageNUmber); i++) {
var className = "";
if(i==0){
className = "pagenumberBoxLi";
}
maxpagenumberBoxBig += '' + (i * 1 + 1) + ' ';
maxpagenumberBoxBigbox = maxpagenumberBoxBig;
}
} else {
for (var i = 0; i < maxpagenumberBox; i++) {
var className = "";
if(i==0){
className = "pagenumberBoxLi";
}
maxpagenumberBoxBig += '' + (i * 1 + 1) + ' ';
maxpagenumberBoxBigbox = maxpagenumberBoxBig;
}
}
var buttonTfoot = ""+
""+
""+
""+
"
首页 "+
"
上一页 "+
"
"+maxpagenumberBoxBigbox+" "+
"
"+
"
下一页 "+
"
尾页 "+
"
"+
""+
"5 10 20 50 100 200 500 "
"
"+
""+
" "+
" ";
_this.$element.html(""+titlelistBox+" "+histroy_DDBox+" "+buttonTfoot+"
");
$(_this.$element.selector+ ' select').val(_this.options.pageNUmber);
if(Math.ceil(_this.options.pageLength/_this.options.pageNUmber)<2){
$(_this.$element.selector+ ' .endPage').hide();
$(_this.$element.selector+ ' .nextPage').hide();
}
$(_this.$element.selector+ ' .tfootRight input').unbind('keyup').keyup(function(){
_this.inputKeyup(_this,maxpagenumberBox,json);
})
$(_this.$element.selector+ ' .tfootRight button').unbind('click').click(function(){
_this.button(_this,maxpagenumberBox,json);
});
$(_this.$element.selector+ ' .firstPage').unbind('click').click(function(){
_this.firstPage(_this,maxpagenumberBox,json);
});
$(_this.$element.selector+ ' .endPage').unbind('click').click(function(){
_this.endPage(_this,maxpagenumberBox,json);
});
$(_this.$element.selector+ ' .nextPage').unbind('click').click(function(){
_this.nextPage(_this,maxpagenumberBox,json);
});
$(_this.$element.selector+ ' table tfoot ul li').unbind('click').click(function(){
_this.nextTableLi(_this,maxpagenumberBox,json,$(this));
});
$(_this.$element.selector+ ' .lastPage').unbind('click').click(function(){
_this.lastPage(_this,maxpagenumberBox,json);
});
$(_this.$element.selector+ ' select').unbind('change').change(function(){
_this.select(_this,maxpagenumberBox,json,$(this));
});
$(_this.$element.selector+ ' tbody tr').unbind('dblclick').dblclick(function(){
_this.options.dbTrclick($(this));
});
},
inputKeyup:function(e,maxpagenumberBox,json){
var val = $(e.$element.selector+ " .tfootRight input").val();
if (val == 0) {
var val2 = val.replace(0, "");
} else if (val > 0 && val <= Math.ceil(e.options.pageLength / e.options.pageNUmber)) {
var val2 = val.replace(/[^0-9]/g, "");
} else if (val > Math.ceil(e.options.pageLength/ e.options.pageNUmber)) {
var val2 = Math.ceil(e.options.pageLength / e.options.pageNUmber);
}
$(e.$element.selector+ ' .tfootRight input').val(val2);
},
button:function(e,maxpagenumberBox,json){
var val = $(e.$element.selector+ ' .tfootRight input').val();
$(e.$element.selector+ " .typeNumber").val(val);
if (val != "") {
e.page($(e.$element.selector+ " .typeNumber").val(), e.options.pageNUmber, maxpagenumberBox,json,e.$element, e);
}
},
firstPage:function(e,maxpagenumberBox,json){
$(e.$element.selector+ " .typeNumber").val(1);
e.page($(e.$element.selector+ " .typeNumber").val(), e.options.pageNUmber, maxpagenumberBox,json,e.$element, e);
},
endPage:function(e,maxpagenumberBox,json){
$(e.$element.selector+ " .typeNumber").val(Math.ceil(e.options.pageLength / e.options.pageNUmber));
e.page($(e.$element.selector+ " .typeNumber").val(), e.options.pageNUmber, maxpagenumberBox,json,e.$element, e);
},
nextPage:function(e,maxpagenumberBox,json){
var number = $(e.$element.selector+ " .typeNumber").val();
$(e.$element.selector+ " .typeNumber").val(number * 1 + 1);
e.page($(e.$element.selector+ " .typeNumber").val(), e.options.pageNUmber, maxpagenumberBox,json,e.$element, e);
},
nextTableLi:function(e,maxpagenumberBox,json,that){
var val = that.html();
$(e.$element.selector+ " .typeNumber").val(val);
e.page($(e.$element.selector+ " .typeNumber").val(), e.options.pageNUmber, maxpagenumberBox,json,e.$element, e);
},
lastPage:function(e,maxpagenumberBox,json){
var number = $(e.$element.selector+ " .typeNumber").val();
if (number > 1) {
$(e.$element.selector+ " .typeNumber").val(number * 1 - 1);
e.page($(e.$element.selector+ " .typeNumber").val(), e.options.pageNUmber, maxpagenumberBox,json,e.$element, e);
}
},
select:function(e,maxpagenumberBox,json,that){
var select = that.find("option:selected").val();
$(e.$element.selector+ " .typeNumber").val(1);
e.options.pageNUmber = select;
e.page($(e.$element.selector+ " .typeNumber").val(), e.options.pageNUmber, maxpagenumberBox,json,e.$element, e);
},
page:function(Pagenumber, pageNUmber, maxpagenumberBox,json,that,e) {
var histroy_DDBox = "";
var histroy_DD = "";
var lastPage=Pagenumbere.options.title.length&&e.options.display[x]!=undefined){
display = e.options.display[x]*1==1?"table-cell":"none";
}
bodyBox+=""+json[i][type]+" ";
bodyBigBox = bodyBox;
}
histroy_DD +=""+bodyBigBox+" ";
histroy_DDBox = histroy_DD;
}
$(that.selector+" table tbody").html(histroy_DD);
var maxpagenumberBoxBigbox = "";
var maxpagenumberBoxBig = "";
if (Math.ceil(e.options.pageLength/ e.options.pageNUmber) < maxpagenumberBox) {
for (var i = 0; i < Math.ceil(e.options.pageLength/ e.options.pageNUmber); i++) {
var className = "";
if(i==0){
className = "pagenumberBoxLi";
}
maxpagenumberBoxBig += '' + (i * 1 + 1) + ' ';
maxpagenumberBoxBigbox = maxpagenumberBoxBig;
}
} else {
for (var i = 0; i < maxpagenumberBox; i++) {
var className = "";
if(i==0){
className = "pagenumberBoxLi";
}
maxpagenumberBoxBig += '' + (i * 1 + 1) + ' ';
maxpagenumberBoxBigbox = maxpagenumberBoxBig;
}
}
$(that.selector+" table tfoot ul").html(maxpagenumberBoxBigbox);
if (Pagenumber == 1) {
$(that.selector+" .firstPage,"+that.selector+" .lastPage").hide();
} else {
$(that.selector+" .firstPage,"+that.selector+" .lastPage").show();
}
if (Pagenumber == Math.ceil(e.options.pageLength / pageNUmber)) {
$(that.selector+" .endPage,"+that.selector+" .nextPage").hide();
} else {
$(that.selector+" .endPage,"+that.selector+" .nextPage").show();
}
if (Math.ceil(e.options.pageLength/ pageNUmber) > maxpagenumberBox) {
if (Pagenumber > 0 && Pagenumber < Math.ceil(maxpagenumberBox / 2) * 1 + 1) {
maxpagenumberBoxBigbox = "";
maxpagenumberBoxBig = "";
for (var i = 0; i < maxpagenumberBox; i++) {
maxpagenumberBoxBig += '' + (i * 1 + 1) + ' ';
maxpagenumberBoxBigbox = maxpagenumberBoxBig;
}
$(that.selector+" .pagenumberBox").html(maxpagenumberBoxBigbox);
$(that.selector+' .pagenumberBox li').eq(Pagenumber - 1).addClass('pagenumberBoxLi');
} else if (Pagenumber >= Math.ceil(maxpagenumberBox / 2) * 1 + 1 && Pagenumber < Math.ceil(e.options.pageLength / pageNUmber) - Math.ceil(maxpagenumberBox / 2) + 2) {
maxpagenumberBoxBigbox = "";
maxpagenumberBoxBig = "";
for (var i = Pagenumber - Math.ceil(maxpagenumberBox / 2) + 1; i < Pagenumber * 1 + Math.ceil(maxpagenumberBox / 2) * 1; i++) {
maxpagenumberBoxBig += '' + (i) + ' ';
maxpagenumberBoxBigbox = maxpagenumberBoxBig;
}
$(that.selector+" .pagenumberBox").html(maxpagenumberBoxBigbox);
$(that.selector+' .pagenumberBox li').eq(Math.ceil(maxpagenumberBox / 2) - 1).addClass('pagenumberBoxLi');
} else if (Pagenumber >= Math.ceil(e.options.pageLength / pageNUmber) - Math.ceil(maxpagenumberBox / 2) + 2 && Pagenumber <= Math.ceil(e.options.pageLength / pageNUmber)) {
maxpagenumberBoxBigbox = "";
maxpagenumberBoxBig = "";
for (var i = Math.ceil(e.options.pageLength / pageNUmber) - maxpagenumberBox; i < Math.ceil(e.options.pageLength / pageNUmber); i++) {
maxpagenumberBoxBig += '' + (i * 1 + 1) + ' ';
maxpagenumberBoxBigbox = maxpagenumberBoxBig;
}
$(that.selector+" .pagenumberBox").html(maxpagenumberBoxBigbox);
$(that.selector+' .pagenumberBox li').eq(Pagenumber - Math.ceil(e.options.pageLength/ pageNUmber) + maxpagenumberBox * 1 - 1).addClass('pagenumberBoxLi');
}
} else {
if (Pagenumber <= Math.ceil(e.options.pageLength / pageNUmber)) {
$(that.selector+' .pagenumberBox li').removeClass('pagenumberBoxLi');
$(that.selector+' .pagenumberBox li').eq(Pagenumber - 1).addClass('pagenumberBoxLi');
}
}
$(that.selector+ ' table tfoot ul li').unbind('click').click(function(){
e.nextTableLi(e,maxpagenumberBox,json,$(this));
});
$(that.selector+ ' tbody tr').unbind('dblclick').dblclick(function(){
e.options.dbTrclick($(this));
});
}
}
$.fn.CJJTable = function(options){
var cjj = new cjjTable(this,options);
return cjj.start();
}
})(jQuery, window, document);
以上就是这个效果的全部内容,有兴趣的朋友测试一下,需要注意的就是在数据JS中,数据格式和重要,需要增加附加数据一定要确保ID名唯一。感谢你对脚本之家的支持。
你可能感兴趣的:(jQuery实现页码跳转式动态数据分页)
笔记工具--MD-Markdown的语法技巧
忆源
笔记
MD格式,全称为Markdown格式,是一种轻量级标记语言文件,主要用于创建格式化文本。以下是对MD格式的详细解释:一、定义与特点定义:MD文件是一种纯文本格式的文件,使用简单的符号或语法来标记标题、列表、链接、图片等元素,从而实现对文本的格式化。特点:易读易写:MD文件的语法简洁明了,使得作者能够快速上手并编写出结构清晰的文档。兼容性强:MD文件可以在不同的平台和设备上打开和编辑,如文本编辑器、
Flink-02-flink技术架构及工作原理
TRX1024
Flink
Flink组件栈自下而上,分别针对每一层进行解释说明:Deployment该层主要涉及了Flink的部署模式,Flink支持多种部署模式:本地、集群(Standalone/YARN)、云(GCE/EC2)。Runtime层Runtime层提供了支持Flink计算的全部核心实现,比如:支持分布式Stream处理、JobGraph到ExecutionGraph的映射、调度等等,为上层API层提供基础服
FastSAM:高效图像分割算法详解与实战
阿qi 爱喝拿铁
本文还有配套的精品资源,点击获取简介:图像分割在图像处理领域中起着至关重要的作用,而FastSAM作为一种高效的图像分割算法,结合了像素的局部特征与全局信息,以自适应聚类方式实现了快速且精确的像素级别分割。其采用基于密度的空间聚类方法处理噪声和不规则形状,自适应策略调整聚类参数以增强泛化能力,并优化计算流程实现并行化处理以提升运行速度。FastSAM算法在医疗、自动驾驶等多个领域具有广泛应用前景。
JMeter 集成到 Jenkins 实现 CI CD过程
小赖同学啊
jmeter专栏 jmeter jenkins ci/cd
将JMeter集成到Jenkins实现CI/CD可以实现自动化的性能测试,以下是详细的实现方式和配置参数说明:1.环境准备JMeter安装:确保JMeter已经安装在Jenkins服务器或者可被Jenkins访问的节点上。记录JMeter的安装路径,例如/opt/apache-jmeter-5.4.1。Jenkins安装与配置:安装Jenkins并确保其正常运行。可以通过浏览器访问Jenkins的
数据库的 DDL、DML、DQL、DCL 分别是什么?下面谈谈这四者的概念。
雪碧聊技术
MySQL 数据库 四种操作语句 MySQL SQL
欢迎来到“雪碧聊技术”CSDN博客!在这里,您将踏入一个专注于Java开发技术的知识殿堂。无论您是Java编程的初学者,还是具有一定经验的开发者,相信我的博客都能为您提供宝贵的学习资源和实用技巧。作为您的技术向导,我将不断探索Java的深邃世界,分享最新的技术动态、实战经验以及项目心得。让我们一同在Java的广阔天地中遨游,携手提升技术能力,共创美好未来!感谢您的关注与支持,期待在“雪碧聊技术”与
DeepSeek:大模型时代的“破局者”
qq_44233281
ai 深度学习 人工智能
DeepSeek,是谁?DeepSeek,中文名深度求索,是一家成立于2023年7月17日的创新型科技公司,由知名量化资管巨头幻方量化创立,法定代表人系裴湉。公司专注于开发先进的大语言模型(LLM)和相关技术,致力于在人工智能领域实现技术突破和创新应用。在成立后的短时间内,DeepSeek取得了令人瞩目的成绩。2024年1月5日,发布首个包含670亿参数的大模型DeepSeekLLM,该模型从零开
Docker 的安全配置与优化(一)
计算机毕设定制辅导-无忧学长
# Docker docker 安全 php
引言在当今快速发展的云计算和DevOps时代,Docker作为容器化技术的佼佼者,已经成为现代开发和运维的基石。它以其独特的优势,如环境隔离、快速部署、资源高效利用等,极大地改变了软件交付和运行的方式。在微服务架构中,每个微服务都可以被封装成一个独立的Docker容器,实现了服务的隔离和独立部署,使得系统的扩展性和维护性得到了极大的提升。同时,在持续集成和持续交付(CI/CD)流程中,Docker
vLLM专题(十四)-自动前缀缓存
AI专题精讲
大模型专题系列 人工智能
一、介绍自动前缀缓存(AutomaticPrefixCaching,简称APC)缓存现有查询的KV缓存,以便新查询如果与现有查询共享相同的前缀,可以直接重用KV缓存,从而跳过共享部分的计算。注意有关vLLM如何实现APC的技术细节,请参阅此处。二、在vLLM中启用APC在vLLM引擎中设置enable_prefix_caching=True以启用APC。以下是一个示例:importtimefrom
原生支付sdk到unity引擎项目(一)
你一身傲骨怎能输
商业化游戏开发技术专栏 unity 游戏引擎
封装一个Unity引擎使用的SDK功能插件涉及多个步骤,从设计和开发到打包和发布。以下是一个详细的步骤指南:1.需求分析和设计确定功能需求:明确SDK需要实现的功能和目标。设计API:设计易于使用的API接口,确保开发者能够方便地集成和使用你的SDK。2.项目设置创建Unity项目:在Unity中创建一个新的项目,用于开发和测试SDK。设置命名空间:为你的SDK选择一个独特的命名空间,避免与其他库
JMeter 如何并发执行 Python 脚本
朱公子的Note
python JMeter执行Python
你是否遇到过这样的场景:需要用Python实现复杂的逻辑处理,同时又想利用JMeter的强大并发能力来模拟大规模用户行为?这篇文章带你快速掌握如何让JMeter并发执行Python脚本,完美结合两者的优势!JMeter如何配置来调用Python脚本?如何实现高效的并发执行?在实践中有哪些需要注意的坑?随着性能测试需求的增加,JMeter的应用场景越来越广泛,而Python的灵活性与强大的第三方库支
DeepSeek免费福利限时开启,AI界的“薅羊毛”机会来了!
算法
作者:京东科技张新磊背景最近一直在关注deepseek的动态,现在看到一则好消息,分享给大家;国家超算中心目前上线了deepseek且免费调用DeepSeek-R1:7B、DeepSeek-R1:14B、DeepSeek-R1:32B三个模型,具体操作如下操作步骤通过如下导航栏进入,进行购买\购买完成后,我们点击去使用,获取密钥\测试代码importrequestsimportjsonurl="h
前端开发岗模拟面试题套卷A答案及解析(一)技术面部分
向贤
前端开发 前端 数据库 javascript 面试
前端开发岗模拟面试题套卷A答案及解析(一)技术面部分(一)技术面一、JavaScript核心技术(ES6+)1-1、实现防抖函数functiondebounce(fn,delay){lettimer=null;returnfunction(...args){clearTimeout(timer);//清除已有定时器timer=setTimeout(()=>{fn.apply(this,args);
设计模式 之 建造者模式(C++)
TT-Kun
设计模式 C++ 设计模式 建造者模式 c++
文章目录设计模式之建造者模式(C++)建造者模式概述建造者模式的结构C++实现建造者模式示例1.产品类(`Computer`)2.抽象建造者类(`Builder`)3.具体建造者类(`MacBookBuilder`)4.指挥者类(`Director`)5.客户端代码(`main`函数)建造者模式的优缺点优点缺点建造者模式的适用场景与其他模式的比较与工厂模式的比较与抽象工厂模式的比较设计模式之建造者
PC端-发票真伪查验系统-Node.js全国发票查询接口
OCR_API
接口 node.js
在现代企业的财务管理中,发票真伪的验证至关重要。随着电子发票的普及,假发票问题日益严峻,如何高效、准确的对发票进行真伪查验,已经成为各类企业在日常运营中必须解决的关键问题。翔云发票查验接口做企业财务管理、税务合规的好帮手。快速查询,全国覆盖:通过全国增值税发票查验接口,用户只需提供发票的基础信息,如发票代码、号码、日期、金额、校验码等,系统即可实现全国范围内的查询与比对。无论是来自哪个省市的发票,
计算机网络概述
少天z
网络
1.基本概念计算机网络:由多台计算机和网络设备通过通信链路连接,实现资源共享和信息交换。节点:网络中的设备,如计算机、服务器、路由器、交换机等。链路:连接节点的物理或逻辑通道,如光纤、电缆、无线信号等。2.网络分类按覆盖范围:局域网(LAN):覆盖小范围,如家庭、办公室。城域网(MAN):覆盖城市范围。广域网(WAN):覆盖国家或全球,如互联网。按传输介质:有线网络:如以太网、光纤。无线网络:如W
通义千问2.5-Max + Roo Code Cline 插件:实现 AI Agents 自动编程。
flutter
通义千问2.5-Max+RooCodeCline插件:实现AIAgents自动编程。基准测试超过DeepSeekv3。视频https://www.bilibili.com/video/BV1s5FCepE3q/https://youtu.be/TpOCkbbLOS8前言原文通义千问2.5-Max+RooCodeCline插件:AI自动编程新突破首先得出结论:除了Cursor工具,我们还有许多其他选
鸿蒙Harmony开发:应用组件间的通信原理规范
太空人_喜之郎
HarmonyOS OpenHarmony 鸿蒙 harmonyos 华为 前端 linux 鸿蒙 移动开发 组件
前言ETS(基于TS扩展的声明式开发范式)提供了强大的组件化能力,支持开发者高效的构建应用的UI界面,然而每一个组件实例的作用域是相互独立的,这就意味着不同组件之间的数据无法相互进行直接的引用,因此组件间的相互通信是非常重要的。组件间通信原理ETS组件间通信是通过组合不同的装饰器来实现数据在各个组件之间的单向/双向传递。相关装饰器介绍装饰器名称功能特征@State所装饰变量的值发生变化时,将会调用
如何根据企业架构设计IT架构?
自由鬼
IT应用探讨 行业发展 架构 企业架构 IT架构
企业IT架构高度匹配企业架构是实现战略目标、提高业务效率和增强组织竞争力的关键。以下是关于企业架构(EnterpriseArchitecture,EA)及其与IT架构设计关系的详细说明:一、什么是企业架构(EA)?企业架构是一种方法论和工具集,用于系统地描述和分析企业的业务、信息、流程和技术,以支持企业的战略目标和业务运营。它是一个全局视角,确保企业内各个部分协同一致。企业架构的核心组成部分(通常
在 JMeter 中实现多用户并发登录及操作
噔噔噔噔@
jmeter
在JMeter中实现多用户并发登录及操作,通常需要以下步骤:1.创建测试计划打开JMeter。右键点击“TestPlan”,选择“Add>Threads(Users)>ThreadGroup”。:设置并发用户数。:设置用户启动的时间间隔。:设置循环次数,或选择“Infinite”进行持续测试。2.添加HTTP请求右键点击“ThreadGroup”,选择“Add>Sampler>HTTPReques
设计模式 之 工厂模式(简单工厂模式、工厂方法模式、抽象工厂模式)(C++)
TT-Kun
设计模式 C++ 设计模式 简单工厂模式 工厂方法模式
文章目录C++工厂模式引言一、简单工厂模式概念实现步骤示例代码优缺点二、工厂方法模式概念实现步骤示例代码优缺点三、抽象工厂模式概念实现步骤示例代码优缺点C++工厂模式引言在C++编程中,对象的创建是一个常见且基础的操作。然而,当项目规模逐渐增大,对象的创建逻辑变得复杂时,直接在代码中使用new关键字创建对象会带来诸多问题,比如代码的可维护性变差、难以扩展等。工厂模式应运而生,它为对象的创建提供了一
HarmonyOS组件开发规范文档之理解与总结
向贤
HarmonyOS harmonyos
HarmonyOS组件开发规范文档之理解与总结结合之前的项目整改总结和HarmonyOS开发规范要求,被采纳为团队标准开发范式的组件开发规范文档主要包含以下核心内容,这些规范在华为UX团队A级验收中体现出显著价值:一、组件工程化规范模块化架构设计工程分层:明确区分业务逻辑层(entry目录)与组件封装层(Library目录),组件需独立编译为可复用的har包,实现"一次开发,多场景复用"包名规范:
货车一键启动正确方法,新手司机可以看看,汽车,驾驶技巧
zsmydz888
汽车无钥匙启动 汽车 货车一键启动 货车无钥匙启动 卡车一键启动
货车无钥匙进入一键启动手机联控等配置高到满足您对货车的所有期待,由于霸气的外观和较高的配置,深受国内货车用户关注。货车一键启动手机控车是一种通过智能手机应用程序(APP)控制汽车启动和多种车辆功能的智能化系统。这种系统简化了传统钥匙启动的繁琐步骤,通过一个按钮即可实现车辆的启动和熄火,并且提供了多种智能功能,如无钥匙进入、一键启动、远程启动、手机撑控、智能防盗等。要实现货车一键启动手机控车,
新能源客车一键启动系统,新能源公交车一键启动系统,新能源汽车一键启动系统,
zsmydz888
汽车无钥匙进入系统 汽车无钥匙启动 手机智能管车系统
汽车蓝牙智能手机无钥匙进入一键启动系统移动管家新能源YD828-6A满足智能用车需求。汽车智能钥匙一键启动无钥匙时入,汽车智控装置的一部分,实现简约打火免钥匙的便捷装置,同时也免钥匙熄火。智能感应开门,关门,以及防盗,一键启动点火开关按扭可以在原车钥匙锁头的位置加装,也可以独立面板加装。明确一点,无钥匙进入和一键启动的目的都是为了降低机械钥匙的使用频率,设计之初也是为了方便,快捷智能安全.一键启动
VSCode 使用import导入js/vue等时添加智能提示,并可跳转到定义
zsd_666
Web前端 javascript vscode vue.js
VSCode使用import导入js/vue等时添加智能提示,并可跳转到定义如://按住ctrl+鼠标点击getDataList,可以跳转到homeApi.js中的定义位置import{getDataList}from'@/api/homeApi.js'安装VuePeek插件在项目根目录下新建jsconfig.json文件{"compilerOptions":{"baseUrl":"./","pa
乡村振兴背景下县域农业数字化转型的关键要素与持续路径——基于30个案例的模糊集定性比较分析
罗伯特之技术屋
人工智能与智能系统专栏 人工智能 大数据 政务
摘要:县域农业数字化转型是大力推进以县城为重要载体的城镇化建设及实现乡村振兴战略的重要途径。基于TOE理论框架,以我国30个县为案例,运用模糊集定性比较分析(fsQCA)方法探讨技术、组织和环境条件对县域农业数字化转型的组态效应及其持续路径。研究发现:存在驱动高水平县域农业数字化转型的四条路径,分别是以技术基础设施、财政资源供给和社会资本参与为核心条件的全能型,以财政资源供给和社会资本参与为核心条
大模型和数据要素赋能农业生产数智化解决方案
数智化领地
数字化转型 数据治理 主数据 数据仓库 数字乡村 数字农业农村 智慧农业 乡村振兴 架构 大数据 运维 安全 数据库
大模型和数据要素赋能农业生产数智化解决方案大模型和数据要素赋能农业生产数智化解决方案引言背景与意义解决方案概述大模型在农业生产中的应用作物生长模型病虫害预测模型农业气象模型数据要素在农业生产中的作用土壤数据气象数据作物生长数据数智化解决方案的设计与实现总体架构设计数据处理与分析模块智能决策与支持模块解决方案应用效果评估及推广前景应用效果评估方法推广前景展望第1张大家好!我今天要介绍的主题是:大模型
手把手教你使用CloudCanal数据同步工具
高阳很捷迅
数据分析 数据库 大数据 数据库开发 数据结构
本文向大家介绍的是CloudCanal数据迁移同步工具,能够实现多种数据源之间的数据同步,并且提供可视化操作界面,帮助我们提升开发效率,让我们一起快速了解CloudCanal并掌握数据同步操作吧~CloudCanal数据同步工具官网:CloudCanal-企业级数据实时同步工具,可视化操作,高效进行多源异构数据源间的数据互通与融合,助力企业构建丰富的数据应用场景社区:主页|Clougence问答社
rabbitmq 同步策略_数据同步解决方案-canal与rabbitmq
weixin_39996739
rabbitmq 同步策略
学习目标能够完成canal环境的搭建与数据监控微服务的开发能够完成首页广告缓存更新的功能,掌握OkHttpClient的基本使用方法能够完成商品上架索引库导入数据功能,能够画出流程图和说出实现思路能够完成商品下架索引库删除数据功能,能够画出流程图和说出实现思路该工程使用lua+nginx+rabbitmq+redis等技术的第一个主要目的是实现轮播图的读取,具体图解:其中nginx的作用包括了从数
【深度学习】PYTORCH框架中采用训练数据“CIFAR-10”实现RESNET50
别出BUG求求了
深度学习 深度学习 pytorch cifar-10 resnet50 神经网络
一、ResNet网络结构二、基本块三、RESNET50代码实现resnet50.pyimporttorchimporttorch.nnasnnfromtorch.nnimportfunctionalasFclassResNet50BasicBlock(nn.Module):def__init__(self,in_channel,outs,kernerl_size,stride,padding):s
Java 的 JDK 8,11,17,21 新特性 ,最新面试题
扫地僧009
互联网大厂面试题 java 开发语言
JDK8中lambda表达式的引入有什么意义?JDK8中引入的lambda表达式标志着Java对函数式编程范式的支持。这一新特性有以下几个重要意义:1、代码更简洁:使用lambda表达式可以用更少的代码实现相同的功能,尤其是在使用匿名内部类的地方。2、增强集合库的功能:通过引入StreamAPI,lambda表达式使得对集合进行序列化操作变得更加简单和高效。3、提高编程效率:lambda表达式使得
怎么样才能成为专业的程序员?
cocos2d-x小菜
编程 PHP
如何要想成为一名专业的程序员?仅仅会写代码是不够的。从团队合作去解决问题到版本控制,你还得具备其他关键技能的工具包。当我们询问相关的专业开发人员,那些必备的关键技能都是什么的时候,下面是我们了解到的情况。
关于如何学习代码,各种声音很多,然后很多人就被误导为成为专业开发人员懂得一门编程语言就够了?!呵呵,就像其他工作一样,光会一个技能那是远远不够的。如果你想要成为
java web开发 高并发处理
BreakingBad
java Web 并发 开发 处理 高
java处理高并发高负载类网站中数据库的设计方法(java教程,java处理大量数据,java高负载数据) 一:高并发高负载类网站关注点之数据库 没错,首先是数据库,这是大多数应用所面临的首个SPOF。尤其是Web2.0的应用,数据库的响应是首先要解决的。 一般来说MySQL是最常用的,可能最初是一个mysql主机,当数据增加到100万以上,那么,MySQL的效能急剧下降。常用的优化措施是M-S(
mysql批量更新
ekian
mysql
mysql更新优化:
一版的更新的话都是采用update set的方式,但是如果需要批量更新的话,只能for循环的执行更新。或者采用executeBatch的方式,执行更新。无论哪种方式,性能都不见得多好。
三千多条的更新,需要3分多钟。
查询了批量更新的优化,有说replace into的方式,即:
replace into tableName(id,status) values
微软BI(3)
18289753290
微软BI SSIS
1)
Q:该列违反了完整性约束错误;已获得 OLE DB 记录。源:“Microsoft SQL Server Native Client 11.0” Hresult: 0x80004005 说明:“不能将值 NULL 插入列 'FZCHID',表 'JRB_EnterpriseCredit.dbo.QYFZCH';列不允许有 Null 值。INSERT 失败。”。
A:一般这类问题的存在是
Java中的List
g21121
java
List是一个有序的 collection(也称为序列)。此接口的用户可以对列表中每个元素的插入位置进行精确地控制。用户可以根据元素的整数索引(在列表中的位置)访问元素,并搜索列表中的元素。
与 set 不同,列表通常允许重复
读书笔记
永夜-极光
读书笔记
1. K是一家加工厂,需要采购原材料,有A,B,C,D 4家供应商,其中A给出的价格最低,性价比最高,那么假如你是这家企业的采购经理,你会如何决策?
传统决策: A:100%订单 B,C,D:0%
&nbs
centos 安装 Codeblocks
随便小屋
codeblocks
1.安装gcc,需要c和c++两部分,默认安装下,CentOS不安装编译器的,在终端输入以下命令即可yum install gccyum install gcc-c++
2.安装gtk2-devel,因为默认已经安装了正式产品需要的支持库,但是没有安装开发所需要的文档.yum install gtk2*
3. 安装wxGTK
yum search w
23种设计模式的形象比喻
aijuans
设计模式
1、ABSTRACT FACTORY—追MM少不了请吃饭了,麦当劳的鸡翅和肯德基的鸡翅都是MM爱吃的东西,虽然口味有所不同,但不管你带MM去麦当劳或肯德基,只管向服务员说“来四个鸡翅”就行了。麦当劳和肯德基就是生产鸡翅的Factory 工厂模式:客户类和工厂类分开。消费者任何时候需要某种产品,只需向工厂请求即可。消费者无须修改就可以接纳新产品。缺点是当产品修改时,工厂类也要做相应的修改。如:
开发管理 CheckLists
aoyouzi
开发管理 CheckLists
开发管理 CheckLists(23) -使项目组度过完整的生命周期
开发管理 CheckLists(22) -组织项目资源
开发管理 CheckLists(21) -控制项目的范围开发管理 CheckLists(20) -项目利益相关者责任开发管理 CheckLists(19) -选择合适的团队成员开发管理 CheckLists(18) -敏捷开发 Scrum Master 工作开发管理 C
js实现切换
百合不是茶
JavaScript 栏目切换
js主要功能之一就是实现页面的特效,窗体的切换可以减少页面的大小,被门户网站大量应用思路:
1,先将要显示的设置为display:bisible 否则设为none
2,设置栏目的id ,js获取栏目的id,如果id为Null就设置为显示
3,判断js获取的id名字;再设置是否显示
代码实现:
html代码:
<di
周鸿祎在360新员工入职培训上的讲话
bijian1013
感悟 项目管理 人生 职场
这篇文章也是最近偶尔看到的,考虑到原博客发布者可能将其删除等原因,也更方便个人查找,特将原文拷贝再发布的。“学东西是为自己的,不要整天以混的姿态来跟公司博弈,就算是混,我觉得你要是能在混的时间里,收获一些别的有利于人生发展的东西,也是不错的,看你怎么把握了”,看了之后,对这句话记忆犹新。 &
前端Web开发的页面效果
Bill_chen
html Web Microsoft
1.IE6下png图片的透明显示:
<img src="图片地址" border="0" style="Filter.Alpha(Opacity)=数值(100),style=数值(3)"/>
或在<head></head>间加一段JS代码让透明png图片正常显示。
2.<li>标
【JVM五】老年代垃圾回收:并发标记清理GC(CMS GC)
bit1129
垃圾回收
CMS概述
并发标记清理垃圾回收(Concurrent Mark and Sweep GC)算法的主要目标是在GC过程中,减少暂停用户线程的次数以及在不得不暂停用户线程的请夸功能,尽可能短的暂停用户线程的时间。这对于交互式应用,比如web应用来说,是非常重要的。
CMS垃圾回收针对新生代和老年代采用不同的策略。相比同吞吐量垃圾回收,它要复杂的多。吞吐量垃圾回收在执
Struts2技术总结
白糖_
struts2
必备jar文件
早在struts2.0.*的时候,struts2的必备jar包需要如下几个:
commons-logging-*.jar Apache旗下commons项目的log日志包
freemarker-*.jar  
Jquery easyui layout应用注意事项
bozch
jquery 浏览器 easyui layout
在jquery easyui中提供了easyui-layout布局,他的布局比较局限,类似java中GUI的border布局。下面对其使用注意事项作简要介绍:
如果在现有的工程中前台界面均应用了jquery easyui,那么在布局的时候最好应用jquery eaysui的layout布局,否则在表单页面(编辑、查看、添加等等)在不同的浏览器会出
java-拷贝特殊链表:有一个特殊的链表,其中每个节点不但有指向下一个节点的指针pNext,还有一个指向链表中任意节点的指针pRand,如何拷贝这个特殊链表?
bylijinnan
java
public class CopySpecialLinkedList {
/**
* 题目:有一个特殊的链表,其中每个节点不但有指向下一个节点的指针pNext,还有一个指向链表中任意节点的指针pRand,如何拷贝这个特殊链表?
拷贝pNext指针非常容易,所以题目的难点是如何拷贝pRand指针。
假设原来链表为A1 -> A2 ->... -> An,新拷贝
color
Chen.H
JavaScript html css
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <HTML> <HEAD>&nbs
[信息与战争]移动通讯与网络
comsci
网络
两个坚持:手机的电池必须可以取下来
光纤不能够入户,只能够到楼宇
建议大家找这本书看看:<&
oracle flashback query(闪回查询)
daizj
oracle flashback query flashback table
在Oracle 10g中,Flash back家族分为以下成员:
Flashback Database
Flashback Drop
Flashback Table
Flashback Query(分Flashback Query,Flashback Version Query,Flashback Transaction Query)
下面介绍一下Flashback Drop 和Flas
zeus持久层DAO单元测试
deng520159
单元测试
zeus代码测试正紧张进行中,但由于工作比较忙,但速度比较慢.现在已经完成读写分离单元测试了,现在把几种情况单元测试的例子发出来,希望有人能进出意见,让它走下去.
本文是zeus的dao单元测试:
1.单元测试直接上代码
package com.dengliang.zeus.webdemo.test;
import org.junit.Test;
import o
C语言学习三printf函数和scanf函数学习
dcj3sjt126com
c printf scanf language
printf函数
/*
2013年3月10日20:42:32
地点:北京潘家园
功能:
目的:
测试%x %X %#x %#X的用法
*/
# include <stdio.h>
int main(void)
{
printf("哈哈!\n"); // \n表示换行
int i = 10;
printf
那你为什么小时候不好好读书?
dcj3sjt126com
life
dady, 我今天捡到了十块钱, 不过我还给那个人了
good girl! 那个人有没有和你讲thank you啊
没有啦....他拉我的耳朵我才把钱还给他的, 他哪里会和我讲thank you
爸爸, 如果地上有一张5块一张10块你拿哪一张呢....
当然是拿十块的咯...
爸爸你很笨的, 你不会两张都拿
爸爸为什么上个月那个人来跟你讨钱, 你告诉他没
iptables开放端口
Fanyucai
linux iptables 端口
1,找到配置文件
vi /etc/sysconfig/iptables
2,添加端口开放,增加一行,开放18081端口
-A INPUT -m state --state NEW -m tcp -p tcp --dport 18081 -j ACCEPT
3,保存
ESC
:wq!
4,重启服务
service iptables
Ehcache(05)——缓存的查询
234390216
排序 ehcache 统计 query
缓存的查询
目录
1. 使Cache可查询
1.1 基于Xml配置
1.2 基于代码的配置
2 指定可搜索的属性
2.1 可查询属性类型
2.2 &
通过hashset找到数组中重复的元素
jackyrong
hashset
如何在hashset中快速找到重复的元素呢?方法很多,下面是其中一个办法:
int[] array = {1,1,2,3,4,5,6,7,8,8};
Set<Integer> set = new HashSet<Integer>();
for(int i = 0
使用ajax和window.history.pushState无刷新改变页面内容和地址栏URL
lanrikey
history
后退时关闭当前页面
<script type="text/javascript">
jQuery(document).ready(function ($) {
if (window.history && window.history.pushState) {
应用程序的通信成本
netkiller.github.com
虚拟机 应用服务器 陈景峰 netkiller neo
应用程序的通信成本
什么是通信
一个程序中两个以上功能相互传递信号或数据叫做通信。
什么是成本
这是是指时间成本与空间成本。 时间就是传递数据所花费的时间。空间是指传递过程耗费容量大小。
都有哪些通信方式
全局变量
线程间通信
共享内存
共享文件
管道
Socket
硬件(串口,USB) 等等
全局变量
全局变量是成本最低通信方法,通过设置
一维数组与二维数组的声明与定义
恋洁e生
二维数组 一维数组 定义 声明 初始化
/** * */ package test20111005; /** * @author FlyingFire * @date:2011-11-18 上午04:33:36 * @author :代码整理 * @introduce :一维数组与二维数组的初始化 *summary: */ public c
Spring Mybatis独立事务配置
toknowme
mybatis
在项目中有很多地方会使用到独立事务,下面以获取主键为例
(1)修改配置文件spring-mybatis.xml <!-- 开启事务支持 --> <tx:annotation-driven transaction-manager="transactionManager" /> &n
更新Anadroid SDK Tooks之后,Eclipse提示No update were found
xp9802
eclipse
使用Android SDK Manager 更新了Anadroid SDK Tooks 之后,
打开eclipse提示 This Android SDK requires Android Developer Toolkit version 23.0.0 or above, 点击Check for Updates
检测一会后提示 No update were found