- webug4.0 第一关到第三十关笔记
littlebin404
Webug官网:http://www.webug.org一个不错的靶机,可以直接下载server2003虚拟机,即可直接打靶:第一关:显错注入用’会报错:url:id=3'UNIONSELECT1,flagFROMflagwhereflag.id=1%23第二关:布尔注入单引号:url?id=1'andlength(user())>15--+第三关:延时注入单引号:url?id=1'andslee
- webug4.0靶场通关笔记
青衫木马牛
网络安全web安全
文章目录注入显错注入布尔注入延时注入post注入过滤注入宽字节注入xxe注入csv注入万能密码登陆XSS反射型xss存储型xssDOM型xss过滤xss链接注入任意文件下载任意文件下载mysql配置文件下载上传漏洞文件上传(前端拦截)文件上传(解析漏洞)文件上传(畸形文件)文件上传(截断上传)文件上传(htaccess)逻辑漏洞越权修改密码支付漏洞邮箱轰炸越权查看admin其它url跳转文件包含结
- Webug4.0 打靶笔记
清丶酒孤欢ゞ
打靶笔记php安全web安全
目录一、Webug的安装(1)基本信息(2)虚拟机的安装(3)webug下载二、Webug打靶笔记(1)显错注入(2)布尔注入(3)延时注入(4)POST注入(5)过滤注入(6)宽字节注入(7)xxe注入(8)csv注入(9)反射型xss(10)存储型xss(11)DOM型xss(12)xss过滤(13)万能密码登录(14)链接注入(15)任意文件下载(16)MySQL配置文件下载(17)文件上传
- webug4.0通关笔记----(第一天:显错注入)
liver100day
学习漏洞原理与分析靶场安全漏洞sql
显错注入开始注入如果还没有搭建webug靶场环境的,可以参考我写到这个教程进行搭建https://blog.csdn.net/liver100day/article/details/1158570581.寻找注入点,打开靶场判断是否存在注入,在网页导航栏输入'判断是否存在注入点发现显示“这里有一个SQL语法错误”,说明此处有显错注入2.判断注入类型是字符型还是数字型输入1’and‘1’='1,如果
- Webug4.0靶场通关笔记(第五天)--------9-13
天煞二宝
一、反射型XSS二、存储型XSS三、万能密码登陆四、DOM型xss五、过滤xss一、反射型XSS跨站脚本(XSS)是一种网站应用程序的安全漏洞攻击,是代码注入的一种,允许恶意用户将代码注入网页,这类攻击常包含HTML和用户端脚本语言。这道题没有过滤。经测试发现,标红的地方1是我们可以注入的点我们测试发现,可以注入代码标签alert(123)我们获取一下cookiealert(document.co
- Webug4.0靶场通关笔记(第四天)--------xxe注入和csv注入
天煞二宝
一、xxe注入这道题应该是XXE漏洞最基础的任意文件读取打开是一个输入框在C盘构造一个flag。别问我为啥,为也不知道bp抓个包随便输入个什么都有回显,应该是基础的XXE注入这是一段读取文件的xml]>&B;由于存在换行,所以转化为URL编码:%3C%3F%78%6D%6C%20%76%65%72%73%69%6F%6E%3D%22%31%2E%30%22%3F%3E%0D%0A%3C%21%44
- webug4.0逻辑漏洞篇22-26
小样!!!
#webug4.0
22、越权修改密码修改admin权限的密码。一共两个界面:1、在页面1输入admin’#,密码随意,点击GO,接下来我们来到了admin用户的改密码处。在网址中我们可以发现admin用户的id=1,那么我们将id改为2呢。然后进行修改密码。改密成功后,我们查看另外一个账户aaaaa,然后用密码12345登陆,可以登录。即越权成功。23、支付漏洞任意点击一个商品购买。可以发现商品的价格直接以get请
- webug4.0最后几篇27-30
小样!!!
#webug4.0
27、文件包含漏洞1、打开靶场,如下,请不要忘了来自网址的关怀。即这个网址是不是让你可以浮想联翩了。2、读取敏感文件,boot.ini(这个是windows系统的)关于其它系统敏感文件的链接请查看:https://blog.csdn.net/nex1less/article/details/100009331http://XXXXXX/control/more/file_include.php?f
- webug4.0——任意文件下载篇
A_dmins
靶场实战
webug4.0——任意文件下载篇第十五关任意文件下载第十六关mysql配置文件下载关于任意文件下载,我们要先知道什么是任意文件下载漏洞。其实我们看这个漏洞名字都知道这个漏洞就是可以让用户下载任意文件,下载服务器文件等,如脚本代码,服务器配置或者是系统配置等等,,,,造成漏洞原因就是读取文件的路径用户可控且未校验或校验不严,输出了文件内容。如何简单利用看下webug上的靶场吧~第十五关任意文件下载
- Webug4.0 文件上传篇——截断上传
angry_program
Webug4.0
截断上传,前面的文章解释过了,这里不再阐述直接实战尝试大小写绕过未果看看是否是黑名单绕过看出是白名单绕过....(有点麻烦)使出截断绕过注意,这里新手特别容易犯错:%00是url解码后的,它解码前是乱码的汉字,要进行如下的转换最后发现截断竟然不行....试试其他截断符号:\0,?也都不行....只能查看源码了...发现不管截断还是怎样,最终的文件后缀只要不是白名单里面的,都会被过滤掉...这题又需
- webug4.0文件上传篇17-21
小样!!!
#webug4.0
17、文件上传(前端拦截)start1、上传一个普通的文件,返回结果如下。可以发现图片是直接放在WWW的目录下,而我们的php网页代码也是放在www下的,所以我们直接ip+www后面的路径地址便可以访问我们上传的图片了。如下图:2、上传一个简单的webshell刚选好文件就被拦截了(前端)。过拦截关于本关的详细方法请参考:https://blog.csdn.net/ONS_cukuyo/artic
- Webug4.0 文件包含漏洞
angry_program
Webug4.0
文件包含漏洞参考之前的博客:漏洞之文件包含漏洞实战1.读取网站文件2.本地包含执行文件(各种格式都会被当做php解析执行)3.远程文件包含1.读取网站文件可以在此之前进行网站信息收集,知道是什么操作系统(unix)等等。对于网站有了一个大概的了解之后,再对filename参数一个个尝试(社工),知道获取到myql的配置文件my.cnf:2.本地文件包含先上传可执行文件的图片格式,比如文件inclu
- Webug4.0 文件上传篇——前端拦截
angry_program
Webug4.0
首先,直接找有文件上传功能的地方\尝试上传php脚本,发现被过滤了,但是不知道是白名单过滤还是黑名单(相对容易绕过)这里有两种方法:修改前端代码,brup抓包修改文件类型修改js过滤代码查看网页源码,果然有猫腻然后在oncharge属性处,不调用type_filter()函数然后选择上传事先写好的flag.php脚本:发现可以选择了:然后上传成功,返回路劲:访问路径,执行脚本抓包修改文件类型用br
- Webug4.0 文件上传篇——解析漏洞
angry_program
Webug4.0
解析漏洞,实质上就是寻找(google或者百度查)对应的框架漏洞并利用之。尽管如此,我们还是试试老方法走一遍:发现不管是修改js代码还是抓包修改都不行:然后,再试试大小写绕过,文件名长度,畸形上次,各种花里胡哨的方法,甚至%00截断都不行预测是白名单过滤查看网站源码证实一下(看答案==):(图片来源于:webug4.0——上传漏洞篇)在抓个包看下是什么中间件:是apache2.4.7版本的,尝试找
- webug4.0—布尔注入
Stephen Wolf
webug4.0
盲注是注入的一种,指的是在不知道数据库返回值的情况下对数据中的内容进行猜测,实施SQL注入。盲注一般分为布尔盲注和基于时间的盲注和报错的盲注。本次主要讲解的是基于布尔的盲注。Length()函数返回字符串的长度sleep(n):将程序挂起一段时间n为n秒if(expr1,expr2,expr3):判断语句如果第一个语句正确就执行第二个语句如果错误执行第三个语句left(database(),n)d
- webug4.0注入篇1-8
小样!!!
#webug4.0
1、显错注入shot0、查找闭合方式数字型:?id=1正常单引号:?id=1'报错,双引号:?id=1”正常括号:?id=1)正常综上,可知闭合方式为单引号闭合。单引号报错如下:1、查询数据库?id=1'unionselect1,group_concat(schema_name)frominformation_schema.schemata%23前三个是mysql自带的,我们只需要注意后面的几个就
- webug4.0宽字节注入-6
weixin_34324081
0x00前言GBK是一种多字符编码,一个汉字占2个字节,utf-8编码的汉字占3个字节。addslashes()函数会对括号里(')、(")、(\)、(NULL)、的四个字符添加反斜杠并将其返回。Mysql有一个特性,在进行GBK编码时会将两个字符认为一个汉字(前提是第一个字符的ASCII大于128才能达到汉字范围)。如果SQL输入经过了addslashes()函数处理,我们输入'时会变成\’。一
- webug4.0—宽字节注入
Stephen Wolf
webug4.0
宽字节注入原理即是利用编码转换,将服务器端强制添加的本来用于转义的\符号绕过,从而能使攻击者输入的引号起到闭合作用,以至于可以进行SQL注入。前言GBK是一种多字符编码,一个汉字占2个字节,utf-8编码的汉字占3个字节。addslashes()函数会对括号里(')、(")、(\)、(NULL)、的四个字符添加反斜杠并将其返回。Mysql有一个特性,在进行GBK编码时会将两个字符认为一个汉字(前提
- webug4.0——其他篇
A_dmins
靶场实战
webug4.0——其他篇第二十六关URL跳转第二十七关文件包含漏洞第二十八关命令执行第二十九关webshell爆破第三十关ssrf第二十六关URL跳转打开就是一个完美的页面:感觉这个网站完全可以拿来当作一个相册网站~~直接找URL跳转的地方~ok,可以直接修改跳转,应该是可以利用这个当作跳板吧第二十七关文件包含漏洞一进入页面就可以发现URL有东西:看题目意思就是文件包含了,直接修改路径,进行读取
- webug4.0——注入篇
A_dmins
靶场实战
webug4.0——注入篇第一关显错注入第二关布尔注入第三关延时注入第四关post注入第五关过滤注入第六关宽字节注入第七关xxe注入第八关CSV注入第十一关万能密码登陆今天接触到一个好玩的靶场环境~~webug就去下载安装玩了一下,网盘速度是真的慢,下载下一个下午!!!附上下载链接:(内附安装教程)链接:https://pan.baidu.com/s/1WlKzFXsNkfkzzCUR_PYtfA
- webug4.0下载安装详细教程
java web
渗透测试信息安全技术
一、背景:很久没更新博客了,在工作过程中解除到渗透测试相关内容,首先给小白介绍一个入门渗透测试很好的训练场,就是webug4.0(-是226安全团队送来的新年礼物);二、详细操作流程:1、前期材料准备:a、需要用到vm,大家可以自行下载VMware,但是考虑到大家还是想早点入门,此处付一官方下载链接:https://www.vmware.com/cn/products/workstation-pr
- Webug4.0 sql布尔注入
angry_program
Webug4.0
布尔注入也叫布尔型盲注手工注入,虽然可以使用工具一步完成,但是最好还是需要懂得原理布尔型布尔(Boolean)型是计算机里的一种数据类型,只有True(真)和False(假)两个值。一般也称为逻辑型。盲注在注入时页面无具体数据返回的注入称之为盲注,一般是通过其他表现形式来判断数据的具体内容ps:这就区别与上篇文章的Webug4.0sql显错注入中会直接返回错误信息布尔型盲注页面在执行sql语句后,
- Webug4.0 sql显错注入
angry_program
Webug4.0
第一次实战SQL注入作战类型:显错注入目标:拿下flag数据目标长相:1.判断注入类型输入:and1=1=>正常,再输入:and1=2=>还正常,排除数字型输入单引号:'=>网页发生变化,则为字符型从报错信息可以看出是字符型,故类型为显错注入2.判断字段数接下来判断字段个数:3个报错,2个正常,可知字段数为2个注意:由于是字符型,注入sql语句时,注意最后一个引号的闭合,要使用双引号内嵌或者使用#
- webug4.0 宽字节注入
angry_program
Webug4.0
防止sql手工注入在php+mysql中,可以通过转义特殊字符来防止污染sql语句(防注入),有两种情况:魔术引号,magic_quote_gpc开关,不过高版本的PHP将去除这个特性安全函数,addslashes,mysql_real_escape_string,mysql_escape_string等。宽字节注入上有计策下有对策,当程序员设置数据库编码与php编码为不同的两种编码,那么就可能产
- Webug4.0 万能密码登陆
angry_program
Webug4.0
概念顾名思义,万能密码登录就是只要有输入一个"特殊"的用户名,密码随意输入就可以登录系统分析1.我们先分析一下目标网站,随便输入用户名和密码,查看post包:发现存储用户名和密码的变量分别是:username,password2.猜想登录的sql语句,大体思路是,只要输入的用户名和密码与数据库中的用户名和密码匹配,就登录成功,sql语句如下:select*fromUSERSwhereusernam
- Webug4.0 sql延时注入
angry_program
Webug4.0
延时注入延时注入是基于布尔注入的,简单来说,是通过if语句返回的真(true)或假(false)来确定是否执行网页延迟响应当布尔注入不成功时,即不能直接观察页面的返回正常与否来判断sql语句是否执行成功,我们这时候就可以采用延迟注入.原理通过构造真或假的条件sql语句,sql语句中根据真假使用sleep()函数向服务器发送请求,观察服务器响应结果是否会执行所设置时间的延迟响应,以此来判断所构造条件
- webug4.0布尔注入-2
weixin_34405925
/*做这个到最后爆表的时候手工终于爆完了,然后发现爆错表了真是暴风哭泣*/布尔注入是盲注之一,进行sql语句注入后,选择的数据并不能返回到前端。只能利用其他方法来判断,还是简单介绍下学到的知识点。1.left(database(),n)database()数据库名称left()函数表示截取数据库左侧n个字符2.substr(a,b,c)从字符串a的b位置开始截取c个字符,当b为负数时截取位置是从字
- webug4.0 后面持续更新
uihijio
第四关:post注入打开网站在搜索框中输入‘,之后报错用bp抓包之后保存在本地直接用sqlmap跑,跑数据库sqlmap-rC:\Users\Administrator\Desktop\2.txt-p“keyWordName”--level=2--dbs--batch表名sqlmap-rC:\Users\Administrator\Desktop\2.txt-p“keyWordName”--lev
- Docker搭建渗透测试靶场教程
h5-css3-js
Docker
Docker搭建渗透测试靶场:webug4.0靶场内容1.注入1.1报错注入-flag1.2布尔注入-flag1.3延时注入-flag1.4CSV注入1.5POST注入-flag1.6XML注入-flag1.7注入过滤-flag2.XSS2.1反射型XSS-flag2.2存储型XSS-flag2.3DOM型XSS-flag2.4链接注入2.5基于过滤的存储型XSS-flag3.任意文件下载4.上传
- centos7 docker靶场
Aidang
网络安全
webug4.0从Dockerhub上拉取镜像dockerpullarea39/webug启动过程dockerrun-d-Parea39/webug后台管理员:admin/admin数据库密码:root/toor127.0.0.1:32768upload-labs上传漏洞https://github.com/c0ny1/upload-labs#创建镜像$cdupload-labs/docker$d
- 怎么样才能成为专业的程序员?
cocos2d-x小菜
编程PHP
如何要想成为一名专业的程序员?仅仅会写代码是不够的。从团队合作去解决问题到版本控制,你还得具备其他关键技能的工具包。当我们询问相关的专业开发人员,那些必备的关键技能都是什么的时候,下面是我们了解到的情况。
关于如何学习代码,各种声音很多,然后很多人就被误导为成为专业开发人员懂得一门编程语言就够了?!呵呵,就像其他工作一样,光会一个技能那是远远不够的。如果你想要成为
- java web开发 高并发处理
BreakingBad
javaWeb并发开发处理高
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
htmlWebMicrosoft
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浏览器easyuilayout
在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
JavaScripthtmlcss
<!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
oracleflashback queryflashback 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
cprintfscanflanguage
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
linuxiptables端口
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
虚拟机应用服务器陈景峰netkillerneo
应用程序的通信成本
什么是通信
一个程序中两个以上功能相互传递信号或数据叫做通信。
什么是成本
这是是指时间成本与空间成本。 时间就是传递数据所花费的时间。空间是指传递过程耗费容量大小。
都有哪些通信方式
全局变量
线程间通信
共享内存
共享文件
管道
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