访问Hbase,以及操作hbase,命令不用使用分号 1、hbase shell 进入hbase
2、list 查看表 hbase shell -d
hbase(main):024:0> scan '.META.'
编程实例
1. 创建一个表member
create '表名’,'列族名1','列族名2','列族名3'...
第一次创建时,提示错误如下:
ERROR: KeeperErrorCode = NoNode for /hbase/master
For usage try 'help "create"'
Took 8.3604 seconds
对于这样的错误可以通过如下几种方式排查:
(1)jps看下zookeeper和hbase的角色是否正常启动 (2)ps命令查看相关进程是否正常,ps -ef | grep hbase 和ps -ef | grep zookeeper (3)查看zookeeper的/hbase下是否有对应的文件查看zookeeper的/hbase下是否有对应的文件 根据上面的方法进行有针对性解决,通常如果服务未正常启动,只需重启服务即可:
#停止服务 bin/stop-hbase.sh
#间隔1分钟
#启动服务 bin/start-hbase.sh
#修复之后
hbase(main):001:0> status 1 active master, 0 backup masters, 1 servers, 0 dead, 2.0000 average load Took 1.1624 seconds
重新create,成功。
2.list #查看所有表
3.查看表描述 hbase(main):028:0> describe 'member'
4. scan浏览表中数据 scan 'member'
增6.插入几条记录
使用put命令,可以插入行到一个表。它的语法如下:
put ’’,’row1’,’’,’’
HBase的表中会有一个系统默认的属性作为主键 ,主键无需自行创建,默认为put命令操作中表名后第一个数据
put'member','scutshuxue','info:age','24'
put'member','scutshuxue','info:birthday','1987-06-17'
put'member','scutshuxue','info:company','alibaba'
put'member','scutshuxue','address:contry','china'
put'member','scutshuxue','address:province','zhejiang'
put'member','scutshuxue','address:city','hangzhou'
scan 'member'
给‘scutshuxue’这个id增加'info:Go'字段,并使用counter实现递增 hbase(main):041:0> incr 'member','scutshuxue','info:go' 连续执行incr以上,COUNTER VALUE 的值会递增,通过get_counter
查
1.scan '表名' #查看所有数据
2.get是根据主键查看一列 get '表名','主键'[,'列簇名'][,'列簇名:列名']
7.获取数据 获取一个id的所有数据 hbase(main):001:0>get 'member','scutshuxue'
获取一个id,一个列族的所有数据 hbase(main):002:0>get 'member','scutshuxue','info'
获取一个id,一个列族中一个列的所有数据 hbase(main):002:0>get 'member','scutshuxue','info:age'
通过timestamp来获取两个版本的数据 hbase(main):010:0>get 'member','scutshuxue',{COLUMN=>'info:age',TIMESTAMP=>1321586238965}
过滤查询表的内容 1.FirstKeyOnlyFilter() 得到每一行的列族info的第一个列
2.查看列簇是info,LIMIT是显示的行数,STARTROW是开始行对应的是主键 hbase(main):008:0> scan 'student',{COLUMNS=>['info'],LIMIT=>4,STARTROW=>'200977100710'}
3.查看列簇是info,name hbase(main):007:0> scan 'student',{COLUMNS=>['info','name'],LIMIT=>4,STARTROW=>'200977100710'}
查询表的历史版本,需要两步。 1、在创建表的时候,指定保存的版本数。(假设指定为5)
create 'student',{NAME=>'username',VERSIONS=>5} 2、查询时,指定查询的历史版本数。默认会查询出最新的数据。(有效取值为1到5)
get 'student','1',{COLUMN=>'username',VERSIONS=>5}
获取当前count的值 hbase(main):069:0>get_counter 'member','xiaofeng','info:age'
hbase(main):058:0>get 'member','xiaofeng','info:go'
获取当前count的值 hbase(main):069:0>get_counter 'member','xiaofeng','info:age'
使用scan,指定startrow
hbase(main):031:0> scan 'student', {COLUMNS => ['info:age', 'address'], LIMIT => 10, STARTROW => '2'} ROW COLUMN+CELL 2 column=address:area, timestamp=1491533426297, value=CBD 2 column=address:city, timestamp=1491533426292, value=beijing 2 column=info:age, timestamp=1491533426269, value=21 3 column=address:area, timestamp=1491533426329, value=pudong 3 column=address:city, timestamp=1491533426323, value=shanghai 3 column=info:age, timestamp=1491533426305, value=22 2 row(s) in 0.0190 seconds
改
8. 更新一条记录
将scutshuxue的年龄改成99 hbase(main):004:0>put 'member','scutshuxue','info:age' ,'99'
删
5.删除一个列族m_id
先将表disable(如果表中之前有数据的话,会把数据清空) hbase(main):030:0> disable 'member'
hbase(main):033:0> is_enabled 'member'
hbase(main):034:0> alter 'member',{NAME=>'m_id',METHOD=>'delete'}
最后enable,否则不能进行其他操作 hbase(main):038:0> enable 'member'
11.删除id为scutshuxue的值的‘info:birthday’字段 hbase(main):016:0>delete 'member','temp','info:age'
12.删除整行 hbase(main):001:0>deleteall 'member','scutshuxue'
3.将整张表清空: hbase(main):035:0>truncate 'scores' hbase是先将其disable掉,然后drop掉后重建表来实现truncate的功能
4.drop一个表(先disable,在drop) hbase(main):029:0>disable 'scores' hbase(main):029:0>drop 'scores'
基本操作
1. 查询表是否存在 hbase(main):021:0>exists 'scores'
2. 判断表是否enable hbase(main):034:0>is_enabled 'scores' 3.判断表是否disable hbase(main):032:0>is_disabled 'scores'
6.查看表描述 hbase(main):028:0> describe 'member'
你可能感兴趣的:(Hbase编程实践(利用shell命令))
day 21
qq_50996930
C++学习专栏 c++ stl
C++11新特性智能指针右值引用和move语句auto关键字(根据初始化的值自动推导类型)lambda表达式for的范围遍历类和结构体中初始化列表nullptr代替null统一的初始化方式…智能指针:智能指针利用RAII思想将指针进行封装,使其在构造时分配内存,析构时释放内存,将动态分配的内存交给类对象管理,防止堆内存泄漏。常见的三种智能指针分别是unique_ptr,shared_ptr,wea
【人工智能 | 大数据】基于人工智能的大数据分析方法
用心去追梦
人工智能 大数据 数据分析
基于人工智能(AI)的大数据分析方法是指利用机器学习、深度学习和其他AI技术来分析和处理大规模数据集。这些方法能够自动识别模式、提取有用信息,并做出预测或决策,从而帮助企业和组织更好地理解市场趋势、客户行为以及其他关键因素。以下是几种主要的基于AI的大数据分析方法:机器学习模型:通过训练算法让计算机从历史数据中学习并做出预测或分类。常见的机器学习技术包括监督学习(如回归分析、支持向量机)、非监督学
Python爬虫工具BeautifulSoup使用详解
闲人陈二狗
python 爬虫 beautifulsoup
目录一、模块简介二、方法利用1、安装beautifulsoup2、引入模块3、选择解析器解析指定内容三、具体利用1、获取拥有指定属性的标签2、获取标签的属性值3、获取标签中的内容4、stripped_strings四、输出1、格式化输出prettify()2、get_text()一、模块简介BeautifulSoup是一个可以从HTML或XML文件中提取数据的Python库.它能够通过你喜欢的转换
二分查找(Java版)
爱学Java
Java数据结构与算法 java 算法
二分查找算法Java版算法介绍算法复杂度算法思想算法注意事项算法基础版改进版平衡版最左侧查找最右侧查找总结二分查找算法介绍算法复杂度时间复杂度:O(logn)空间复杂度:O(1)算法思想二分查找(BinarySearch)是一种高效的搜索算法,适用于在有序数组或序列中查找目标元素的位置。其核心思想是利用数组的有序性,将查找范围逐步缩小至目标值所在的子范围。1,确定查找范围:在有序数组中,设定两个指
AI赋能Flutter开发:新手也能轻松入门
前端
Flutter作为一款跨平台移动应用开发框架,凭借其“一次编写,多端运行”的特性,赢得了众多开发者的青睐。然而,Flutter的学习曲线相对陡峭,特别是对于编程新手而言,上手难度较大。大量的代码编写、复杂的UI搭建以及对Dart语言的学习,都可能成为学习过程中的阻碍。但现在,借助AI写代码工具,这一切都将变得更加轻松便捷!本文将以ScriptEcho为例,介绍如何利用AI辅助工具高效入门Flutt
Python增强办公效率的11个实用代码段,零基础入门到精通,收藏这一篇就够了
Python_chichi
互联网 程序员 网络安全 python java 大数据
引言在日常工作中,许多任务可以通过编程自动化来提高效率。本文将介绍一些实用的Python脚本,用于批量创建文件夹、重命名文件、处理Excel数据、合并PDF文件等。这些工具能显著减少重复性工作,提升工作效率。1.快速生成批量文件夹工作中经常需要创建多个文件夹来分类存储不同类型的文件。手动创建不仅耗时还容易出错。利用Python可以快速生成批量文件夹。importosdefcreate_folder
IT服务台的5个基本参与度指标
运维
当一个企业如果想要留下客户,成功的关键就在于提升客户的参与程度。以优步(Uber)为例,其以客户为中心的方法来源于他们的实时跟踪、透明定价、多种服务的便捷使用以及促销激励方式。通过这些方式,Uber利用技术实现了与客户的无缝互动,最终赢得了更多忠实客户。但是,在客户参与度方面,“参与度”究竟意味着什么呢?什么是客户参与度?客户参与度可以理解为一个持续在所有接触点上积极为客户创造互动体验的过程。这个
高性能队列Disruptor的初体验
程序员
深入理解Disruptor1.概述Disruptor是一个高性能、低延迟的无锁队列替代方案,最初由LMAX公司开发,专为处理高吞吐量和低延迟的消息传递系统而设计。它利用环形缓冲区(RingBuffer)和无锁的生产者-消费者模型,大幅提升并发性能。相比传统的基于java.util.concurrent的队列(如ArrayBlockingQueue、LinkedBlockingQueue),Disr
数据分析 基础定义
阿金要当大魔王~~
数据分析 数据分析 数据挖掘
一、大数据的定义数据分析是基于商业等目的,有目的的进行收集、整理、加工和分析数据,提炼有价值信息的过程。大数据分析即针对海量的、多样化的数据集合的分析大数据分析是一种利用大规模数据集进行分析和挖掘知识的方法。随着互联网、社交媒体、移动设备等产生庞大的数据,大数据分析成为了当今世界各行业的重要技术。这篇文章将从数据收集、存储、处理、分析、可视化、应用等方面进行全面讲解,以帮助读者更好地理解大数据分析
oracle dbms_crypto,Oracle的dbms_obfuscation_toolkit加密解密数据
weixin_39931362
oracle dbms_crypto
oracle从8i开始提供一个数据加密包:dbms_obfuscation_toolkit.利用这个包,我们可以对数据进行DES,TripleDES或者MD5加密.本文就此讲解如何使用以及使用过程需要注意的问题.1.dbms_obfuscation_toolkit简介dbms_obfuscation_toolkit主要有一下几个存储过程:-DESGETKEY--产生密钥,用于DES算法DES3GE
oracle解密加密的数据,利用Oracle的dbms_obfuscation_toolkit加密解密数据
蔡惘然
oracle解密加密的数据
利用Oracle的dbms_obfuscation_toolkit加密解密数据作者:叶枫版权声明:本文可以自由转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本声明作者:叶枫(http://blog.matrix.org.cn/page/叶枫)原文:[][/url]关键字:Oracle加密解密为了保护敏感数据,oracle从8i开始提供一个数据加密包:dbms_obfuscation_t
用Python实现办公自动化
shengyin714959
笔记 最高笔记 python 开发语言
Python作为一种简单而强大的编程语言,不仅在数据科学和软件开发领域广受欢迎,还在办公自动化方面发挥了巨大作用。通过Python,我们可以编写脚本来自动执行各种重复性任务,从而提高工作效率并减少错误。在本文中,我们将探讨如何利用Python来实现办公自动化,并提供一些示例代码来帮助你入门。自动化处理电子表格数据在许多办公场景中,我们经常需要处理电子表格数据,例如Excel文件。使用Python的
利用Redis实现付款倒计时
写完bug就找女朋友
javaWeb项目笔记 工作笔记/后端 Redis redis 订单倒计时 倒计时付款
一、前言文本源自微博客且已获授权,请尊重知识产权。公司项目最近在做一个交易系统,需要实现用户下订单以后一定时间内,不付款自动取消该订单,这种功能也是涉及到交易的系统很常见的需求,那么应该如何实现呢?二、思路为了实现上述需求,我们可以使用Redis的订阅功能,在用户创建订单的时候,保存订单信息、设置过期时间,并且订阅该缓存信息;在这段过期时间期间内,如果用户付款,那么就删除该缓存信息,否则等到缓存过
使用Sui索引框架支持自定义数据导入
Sui_Network
数据库 web3 大数据 区块链 网络 云计算
Sui索引框架通过强大的数据导入框架提供对Sui链上数据的定制化访问。它允许任何相关软件,无论是在链上还是链下运行,收集原始链上数据和派生数据。利用Sui索引框架创建定制的数据流,开发者可以轻松构建响应链上事件的软件和产品。链上数据流的强大之处区块链数据结构旨在确保交易的完整性,这通常意味着它们没有针对整个历史的随机数据访问进行优化。然而,使用Sui索引框架构建的定制化数据流克服了这一限制,使开发
Python 爱心代码实现动态爱心图案展示
从以前
python python
引言在Python中,我们可以利用tkinter库来创建有趣的图形界面,本文将为大家分享一段使用tkinter库绘制动态爱心图案的代码,并详细介绍其实现逻辑与运行方法。一、代码功能概述这段Python代码借助tkinter库创建了一个窗口,在该窗口中能够绘制出一个动态的爱心图案,效果十分美观,接下来我们一起看看代码的具体内容。二、代码详解(一)导入必要的库和模块importrandomfromma
Spring AI提示词模板PromptTemplate的使用
大龄码农有梦想
AI人工智能 spring 人工智能 PromptTemplate Prompt提示词 提示词模板 Spring AI
本文重点介绍Prompt提示词和PromptTemplate提示词模板,在SpringAI框架里,Prompt类的设计旨在简化与LLM之间的交互过程,同时提供了足够的灵活性来满足不同类型的对话需求。通过合理利用Prompt及其内部的消息结构,开发者可以有效地引导LLM生成高质量的回答,提升用户体验。1、SpringBoot集成SpringAI框架如何基于Springboot集成SpringAI框架
【人工智能】Python实战:构建高效的多任务学习模型
蒙娜丽宁
Python杂谈 AI 人工智能 python 学习
《PythonOpenCV从菜鸟到高手》带你进入图像处理与计算机视觉的大门!解锁Python编程的无限可能:《奇妙的Python》带你漫游代码世界多任务学习(Multi-taskLearning,MTL)作为机器学习领域中的一种重要方法,通过在单一模型中同时学习多个相关任务,不仅能够提高模型的泛化能力,还能有效利用任务间的共享信息。本文深入探讨了多任务学习的基本概念、优势及其在实际应用中的重要性。
域名被污染更换服务商会怎么样?
dns劫持dns运维
在当今数字化的时代,域名对于一个网站而言,就如同实体店铺的招牌,是连接用户与网络世界的关键纽带。然而,有时域名会遭遇被污染的困境,这时候,更换服务商成为不少网站所有者考虑的应对策略。那么,域名被污染更换服务商这一举措究竟会带来怎样的影响呢?1、一方面,更换服务商可能带来诸多转机。当域名被污染,原服务商若迟迟无法有效解决问题,新服务商凭借其专业的技术团队和丰富的经验,或许能迅速切入,利用先进的域名解
开发者可以利用DNS做什么?
域名服务(DNS)是互联网上用于将域名和IP地址相互映射的一个系统,它使得用户可以通过易于记忆的域名来访问互联网上的资源,而不需要记住复杂的IP地址。可以说任何需要在互联网上拥有可访问地址的个人或组织都需要使用域名服务。域名系统(DNS)对于开发者来说有许多重要的用途:一、网站开发与部署方面域名解析开发者可以通过DNS将易于用户记忆的域名(如example.com)转换为计算机能够理解的IP地址(
5分钟搞懂 Golang 堆内存
程序员
本文主要解释了堆内存的概念,介绍了Linux堆内存的工作原理,以及Golang如何管理堆内存。原文:UnderstandingHeapMemoryinLinuxwithGo你想过为什么堆内存被称为"堆"吗?想象一下杂乱堆放的对象,与此类似,在计算机中,堆内存是动态分配和释放内存的空间,通常会导致内存块的无序排列。我们可以利用这种相似性和无序排列来理解堆内存,并探讨堆内存的概念及其在计算中的意义。什
摆脱“鱼钩”:误点网络钓鱼链接后的10步自救法
网络安全
拼写错误、奇怪的语法、紧急或威胁的语言、缺乏上下文——所有这些都是网络钓鱼攻击的常见特征。然而,一些精心布局的网络钓鱼威胁通常很难被发现,因为它们往往涉及攻击者的大量时间投入以及详尽细致的计划,他们甚至会仔细检查目标过去的通信,以增加攻击成功的可能性。在大规模欺诈活动中,骗子常用的一种策略是利用当前的热门事件。例如,一封看似来自英国国家卫生服务机构提供免费COVID-19检测的电子邮件,实际上是一
前端大文件OSS上传注意事项
前端
大文件上传是一个比较重要的交互场景,如上传入库比较大的Excel表格数据、上传影音文件等。如果文件体积比较大,或者网络条件不好时,上传的时间会比较长(要传输更多的报文,丢包重传的概率也更大),用户不能刷新页面,只能耐心等待请求完成。1.利用上传控件inputtype="file"绑定一个change事件,在回调中通过事件对象的e.target.files拿到这个文件对象,进行文件对象的slice方
5G网络运维技术
伍昱燊
5G 网络 运维
概要网络监控与管理:对5G网络进行实时监控是网络运维的重要任务。通过使用网络管理系统(NMS)和监控工具,对网络中的关键参数、设备状态和性能进行监测和记录。这包括监控网络的带宽利用率、信号质量、传输速度、设备健康状态等。网络管理员需要定期检查监控数据,发现潜在的问题和异常情况,并及时采取措施解决。故障排除与维修:在5G网络运行过程中,可能会出现各种故障和问题,如设备故障、通信中断、信号弱化等。网络
学生党福利!轻松搞定Photoshop,还有这些宝藏软件等你解锁!
shelby_loo
photoshop ui
作为一名学生,想要学习设计、开发,一套趁手的软件必不可少。但动辄上千的软件价格,让不少同学望而却步。别担心!今天就来给大家分享一个“薅羊毛”的绝佳途径——利用Edu邮箱免费获取Adobe全家桶、JetBrains全家桶以及其他设计类软件!Edu邮箱,你的设计神器Edu邮箱,通常由高校或教育机构颁发,以“.edu”结尾。凭借这个邮箱,你可以申请到包括Photoshop、Illustrator、Pre
改进yolov8工业缺陷检测+swin+transformer
qq1309399183
计算机视觉实战项目集合 YOLO transformer 深度学习 人工智能 计算机视觉 机器学习 神经网络
使用NEU-DET数据集进行缺陷检测的YOLOv8改进模型应用详解在现代工业生产过程中,质量控制是至关重要的一个环节。随着机器视觉技术和人工智能算法的发展,基于深度学习的方法已经成为自动化缺陷检测的重要工具。本篇将介绍一种基于NEU-DET数据集,利用YOLOv8及其改进版本(包含坐标注意力机制和SwinTransformer)进行缺陷检测的应用开发过程。我们将详细探讨从数据准备到模型训练,再到最
《利用python进行数据分析》——3.1数据结构和序列——元组、列表、字典、集合——读书笔记
pillow_L
python数据分析
第3章Python的数据结构、函数和文件3.1数据结构和序列Python中常见的数据结构可以统称为容器。序列(如列表和元组)、映射(如字典)以及集合(set)是三类主要的容器。1.元组——tuple元组是一个固定长度,不可改变的Python序列对象。元组与列表一样,也是一种序列,唯一不同的是元组不能被修改(字符串其实也有这种特点)元组Tuple,一经初始化,就不能修改,没有列表List中的appe
Python进阶实战:利用元组作为字典键的巧妙策略
Yori_22
Python编程 python 开发语言
在Python编程中,字典(dictionary)是一种非常强大且灵活的数据结构,它允许我们通过键(key)来快速访问和存储值(value)。通常,字典的键可以是任何不可变的数据类型,如整数、浮点数、字符串或元组。在这篇文章中,我们将深入探讨如何利用元组作为字典键的巧妙策略,特别是在处理复杂数据时,这种策略能够带来意想不到的便利和效率。一、元组作为字典键的基础在Python中,元组(tuple)是
贪心与动规(动态规划)
programming expert
动态规划 算法
1.贪心与动规的区别贪心算法和动态规划的主要区别在于它们解决问题的方式、能否保证得到最优解以及算法复杂度。解决问题的方式:贪心算法:在每一步选择中都采取当前状态下最优的选择,从而希望导致结果是全局最优的。它通常不考虑未来后果,只关注当前的最优解。动态规划:将原问题分解为子问题,通过解决子问题,并将子问题的解存储下来(通常是存储在一个表格中),在解决原问题时利用这些子问题的解。它通常以自底向
改进yolov8缺陷检测+swin+transformer
QQ_1309399183
计算机视觉实战项目集锦 YOLO transformer 深度学习 人工智能 计算机视觉 opencv 机器学习
使用NEU-DET数据集进行缺陷检测的YOLOv8改进模型应用详解在现代工业生产过程中,质量控制是至关重要的一个环节。随着机器视觉技术和人工智能算法的发展,基于深度学习的方法已经成为自动化缺陷检测的重要工具。本篇将介绍一种基于NEU-DET数据集,利用YOLOv8及其改进版本(包含坐标注意力机制和SwinTransformer)进行缺陷检测的应用开发过程。我们将详细探讨从数据准备到模型训练,再到最
MacOS/C/C++下怎样进行软件性能分析(CPU/GPU/Memory)
捕鲸叉
软件调试和诊断 软件调试 软件验证
在macOS环境下进行C/C++软件性能分析,可以使用多种工具和技术来测量和优化CPU、GPU和内存的性能。macOS提供了丰富的性能分析工具,如Instruments、gprof、Perf、以及NVIDIA和Intel的专用工具。下面详细介绍了实现思想和操作方法。1.性能分析的目标CPU:分析CPU的使用情况,找出性能瓶颈、热点代码。GPU:分析GPU的使用情况,确保GPU资源被有效利用。内存:
怎么样才能成为专业的程序员?
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