- 【网络安全】漏洞挖掘:php代码审计
秋说
网络安全phpweb安全漏洞挖掘
未经许可,不得转载。文章目录正文正文在应用程序中,通过一个JavaScript注释发现了一个备份ZIP文件。解压后,获取了应用程序的代码,其中包含如下代码片段:代码首先检查变量$action是否等于'convert',如果是,则继续执行。随后对传入的变量$data使用trim()函数去除两端空白字符,并使用eval()函数执行$data的内容。显然,代码对$data没有进行任何过滤或验证,因此可以
- 【web | CTF】BUUCTF [网鼎杯 2020 青龙组]AreUSerialz
星盾网安
CTFphp
天命:php的序列化题目简直是玄学,既不能本地复现,也不能求证靶场环境天命:本地php是复现不了反序列化漏洞的,都不知道是版本问题还是其他问题天命:这题也是有点奇怪的,明明用字符串2也应该是可以,但偏偏就不行,神奇了进来题目先看到php代码审计,是反序列化漏洞先看进来入口的逻辑,判断是不是正常的ascii码字符,然后反序列化,可以忽略校验,都是正常的//校验你是不是ascii码里面的合法字符fun
- 渗透测试练习题解析 3(CTF web)
安全不再安全
CTFweb前端安全网络安全web安全
1、[网鼎杯2020朱雀组]phpweb1考点:反序列化漏洞利用进入靶场,查看检查信息,发现存在两个参数func和p查看页面源代码payload:func=file_get_contents&p=php://filter/resource=index.php整理后,就是PHP代码审计了 func!=""){ echogettime($this->func,$this->p);
- PHP代码审计之任意文件读取
order by
PHP代码审计php安全web安全
文章目录一、任意文件读取原理二、任意文件读取危害三、任意文件读取相关函数任意文件读取代码审计总结一、任意文件读取原理在一些文件下载以及浏览的工能点中,存在一些文件读取的函数,且参数中的文件名或者路径可以由于控制关键字符未能进行有效的过滤就会造成任意文件读取。二、任意文件读取危害①如果读取路径没有限制可以读取系统下任意敏感文件,如数据库账号密码,后台账号密码等…②通过任意文件读取将后端源码全部读取到
- 【BUUCTF】 HCTF2018 WarmUp
90wunch
php安全
这是一道有关php代码审计的入门题目,进入所给链接后看到的是一张滑稽的表情包按照常规思路f12,看一看有什么,结果发现了一个名为source.php的注释访问这个php页面,发现有一段代码代码先定义了一个checkFile函数,然后主函数在下大致意思是,只有链接中包含了file文件请求且通过了checkFile函数的验证,那么将把链接包含的file文件include到页面中,否则输出一张图片(推测
- PHP代码审计之实战审代码篇2
昵称还在想呢
PHP代码审计php开发语言
4.仔细观察如下代码,思考代码有什么缺陷,可能由此引发什么样的问题?logged_in){echo'Don\'tbothertryingtohackme!!!!!Thishackattempthasbeenlogged';$log->Warn("SecurityIssue:SometriedtoaccessthisfiledirectlyfromIP:".$_SERVER['REMOTE_ADDR
- php代码审计知识点,PHP代码审计基础知识点
幸福暗恋我
php代码审计知识点
一,PHP核心配置一·配置典型两个文件(配置目录的规则文件)php.ini(即仅在重启的时候可用).user.ini二·配置典型的命令语句1.用户限制语句,函数类变量类大小写敏感directive=value大小写敏感全局变量配置register_globals=off(作用是关闭自动注册的全局变量)可使用的符号与参数类(ini文件中)!、()、|位或、&位与、~位非、Value可以使:用引号界定
- php代码审计基础,PHP代码审计基础-初级篇
weixin_39612720
php代码审计基础
对于php代码审计我也是从0开始学的,对学习过程进行整理输出沉淀如有不足欢迎提出共勉。对学习能力有较高要求,整个系列主要是在工作中快速精通php代码审计,整个学习周期5天,建议花一天时间熟悉php语法。我是直接phpstudy2019一键搭建小白首选所谓工欲善其事必先利其器,找一款适合自己的php开发工具自行百度搭建,我用的是phpstrom.初级篇主要讲1.php历史版本漏洞。2.变量配置缺陷。
- DAY31:代码审计基础( PHP 篇)
EdmunDJK
phpapache开发语言
DAY31:代码审计基础(PHP篇)1、PHP代码审计基础1.1、代码审计概述代码审计(Codeaudit)是一种以发现程序错误,安全漏洞和违反程序规范为目标的源代码分析。软件代码审计是对编程项目中源代码的全面分析,旨在发现错误,安全漏洞或违反编程约定。它是防御性编程范例的一个组成部分,它试图在软件发布之前减少错误1.2、基本的PHP语法PHP脚本可以放在文档中的任何位置。PHP脚本以结束:PHP
- php代码审计知识点,php代码审计知识点总结
翔宇情
php代码审计知识点
**Php可以命令执行的函数**stringshell_exec(stringcommand)Shell_exec通过shell环境执行命令,并且将完整的输出以字符串的方式返回。PHP先运行一个shell环境,然后让shell进程运行你的命令,并且把所有输出以字符串形式返回,如果程序执行有错误或者程序没有输出,则返回null。$output=shell_exec('whoami');echo"$o
- PHP代码审计基础知识
廾匸0705
网络安全代码审计网络安全代码审计php
前言本文章主要是PHP代码审计的一些基础知识,包括函数的用法,漏洞点,偏向基础部分,个人能力有限,部分可能会出现错误或者遗漏,读者可自行补充。代码执行代码执行是代码审计当中较为严重的漏洞,主要是一些命令执行函数的不适当使用。那么,常见的能够触发这类漏洞的函数有哪些呢?eval()想必大家对eval()函数应该并不陌生,简而言之eval()函数就是将传入的字符串当作PHP代码来进行执行。eval(s
- HCTF 2018 Warm up
MiaoA知识
CTF-web刷题php
HCTF2018Warmup题目分析1.查看题目显示是一个php代码审计的题目2.登入网页查看3.既然是代码审计,就查看页面源代码看到源代码里提示一个source.php文件,所以我们猜测,要么是加载过来一个php文件(可是F12以后,没有发现),要么就是当前目录下有个source.php4.访问当前目录下的source.php,果然成功5.分析php代码直接复制到md,清除转义为html的字符,
- PHP代码审计之入门实战
zsoft
系统介绍CMS名称:新秀企业网站系统PHP版官网:www.sinsiu.com版本:这里国光用的1.0正式版(官网最新的版本有毒,网站安装的时候居然默认使用远程数据库???迷之操作那站长的后台密码岂不是直接泄露了?疑似远程数据库地址:server.sinsiu.net)下载地址:蓝奏云Windows下使用PHPStudy可以直接安装,搭建起来还是很简单的。防护策略虽然这是一个不知名的小系统,但是安
- Writeup 实验吧/WEB/Guess Next Session/1788 【PHP代码审计】
growing27
http://www.shiyanbar.com/ctf/1788http://ctf5.shiyanbar.com/web/Session.php源码:Wrongguess.';}mt_srand((microtime()^rand(1,10000))%rand(1,10000)+rand(1,10000));?>burp抓包,提交如下,另两者都为空,可以绕过判断password=PHPSESS
- PHP代码审计之实战审代码篇1
昵称还在想呢
PHP代码审计phpandroid开发语言
本章代码来之各种php的cms历史漏洞源码,供小伙伴们学习,本次三题1.仔细观察如下代码,思考代码有什么缺陷,可能由此引发什么样的问题?//检测旧密码是否正确if($password!=''){$oldpassword=md5(md5($oldpassword));$r=$dosql->GetOne("SELECT`password`FROM`#@__member`WHERE`username`=
- PHP代码审计之反序列化攻击链CVE-2019-6340漏洞研究
昵称还在想呢
PHP代码审计php开发语言web安全安全
关键词php反序列化cmsDrupalCVE-2019-6340DrupalKernel前言简简单单介绍下php的反序列化漏洞php反序列化漏洞简单示例来看一段简单的php反序列化示例isValid){if(filter_var($this->ipAddress,FILTER_VALIDATE_IP)){$this->isValid=True;}}$this->ping();}publicfunc
- 3.[BUUCTF HCTF 2018]WarmUp1
图灵·飞︿( ̄︶ ̄)︿
WEB刷题web基础
1.看题目提示分析题目内容盲猜一波~:是关于PHP代码审计的2.打开链接,分析题目给你提示了我们访问source.php来看一下大boss出现,开始详细手撕~3.手撕PHP代码(代码审计)本人是小白,所以第一步,先问chatGPT的意见:这个主要是对classemmm类的分析,然后还有后面的三个&&条件判断:结合代码去理解GPT给的解释,就可以很容易形成一个思路:重点在:if(!empty($_R
- PHP代码审计之基础 方法 思路 流程
st3pby
渗透测试网络安全web安全
工具Fotify|代码审计静态扫描工具,商业化静态代码扫描工具,误报率相对较低。seay|源代码审计工具PHPStorm|是PHP编程语言开发的集成环境。chrome&burp&HackerBar插件&xdebug插件Xcheck|Xcheck是一个由腾讯公司CSIG质量部代码安全检查团队自研的静态应用安全测试工具。Xcheck在基于成熟的污点分析技术与对抽象语法树的精准剖解上,通过巧妙优雅的实现
- [BJDCTF2020]Mark loves cat1
怪兽不会rap_哥哥我会crash
BUUCTFweb题phpgit泄露php代码审计ctf
提示-信息收集.git泄露php代码审计拿到题先做信息收集这里用dirsearch扫了下目录###如果没有dirsearch我在之前的这篇博客有写dirsearch的安装环境以及地址还有怎么扫buuctf里的题[GXYCTF2019]禁止套娃1-CSDN博客从扫描结果来看这里存在git泄露这里使用githack拉下来git泄露的信息cd到扫描下来的文件里出现了三个文件,flag难道直接扫出来了吗读
- 攻防世界web新手练习 -unseping
sean7777777
WEB刷题记录网络安全web安全
攻防世界web新手练习-unseping新版攻防世界的这个题目有点给力,从今天开始刷题刷题本题的知识点很多,总结出来以下几点php代码审计php反序列化命令执行的绕过方式空格绕过空环境变量绕过相关命令源码分析首先对源码进行分析method=$method;$this->args=$args;}//析构函数析构函数(destructor)与构造函数相反,当对象结束其生命周期时(例如对象所在的函数已调
- 【高级渗透篇】网络安全面试
世界尽头与你
#渗透测试面试web安全安全
【高级渗透篇】网络安全面试1.权限维持2.提权MySQL提权3.Java内存马4.代码安全Java代码审计PHP代码审计1.权限维持Linux权限维持方法论Windows权限维持方法论2.提权MySQL提权1、MySQLudf提权原理:MySQL可以通过创建UDF函数的方式来扩展其自定义的功能。如果UDF动态链接库中包含恶意代码,当MySQL数据库服务器加载这个恶意的UDF动态链接库时,这个恶意代
- sqli-labs靶场详解less-24(二次注入)
网安小t
SQL注入sqli-labs靶场安全web安全sql网络安全安全性测试
less-24对于一个像我一样的小白来说这关就像php代码审计一开始进行判断注入点的时候怎么都找不到一点思路都没有只能搜教程说是二次注入从来没遇见的题型于是从代码审计开始先说一下什么叫二次注入二次注入二次注入是指通过SQL语句存储到数据库的用户输入被读取后再次被SQL语句执行导致的注入。原理在第一次进行数据库插入数据的时候,仅仅只是使用了个别函数对其中的特殊字符进行了转义,在后端代码中可能被转义,
- BUUCTF—[MRCTF2020]Ez_bypass1
热爱可抵岁月漫长_
phpweb安全
题目链接:BUUCTF在线评测一、知识点1.PHP代码审计2.MD5碰撞(强碰撞,"===")3.PHP类型比较二、解题过程1.代码审计,打开题目链接后页面显示如下涉及的函数功能:$符号是PHP语言中用来表示变量的标识符整形变量:$age=25;字符串变量:$name="John";⚪include('flag.php'):执行结果:包含并运行指定的外部文件'flag.php'。返回值:无。如果文
- PHP代码审计10—命令执行漏洞
W0ngk
PHP代码审计php安全命令执行CTF
文章目录一、命令执行漏洞基础1、漏洞概述与原理2、漏洞检测3、常见命令拼接符4、常见防御方法绕过1)空格过滤绕过2)黑名单绕过3)命令无回显绕过二、CTF例题分析1、BUUCTF2018Onlinetool2、CTF.showweb31三、参考资料一、命令执行漏洞基础1、漏洞概述与原理应用程序有时需要调用一些执行系统命令的函数,如在PHP中,使用system、exec、shell_exec、pas
- 熊海CMS 靶场
diaobusi-puls
网络安全专栏CMS靶场安全网络
熊海CMS靶场0x01前言初步了解cms,ContentManagementSystem内容管理系统。它是一种用于创建、编辑、管理和发布内容的软件程序或工具。内容管理系统通常用于网站、博客、企业内部系统等各种应用中,可以帮助用户管理和发布各种类型的内容,如文章、图片、视频、文件等。进行PHP代码审计,代码审计是一种白盒测试,以发现程序错误,安全漏洞和违反程序规范为目标的源代码分析。软件代码审计是对
- 通过一道题目带你深入了解WAF特性、PHP超级打印函数、ASCII码chr()对应表等原理[RoarCTF 2019]Easy Calc 1
白猫a٩
CTF做题笔记php开发语言web安全网络安全后端前端android
题目环境:依此输入以下内容并查看回显结果1+11’index.phpls到这里没思路了F12查看源代码一定要仔细看啊,差点没找到,笑哭访问calc.php文件果然有点东西PHP代码审计error_reporting(0);关闭错误报告通过GET方式传参的参数numshow_source函数将文件内容显示出来参数num的值赋值给变量str创建一个了名为blacklist的数组,该数组包含一系列字符,
- 攻防世界新手练习区——unseping
Redemption8
Ctf刷题phpctf网络安全
目录知识点解读题目源码:命令绕过知识点PHP代码审计PHP序列化和反序列化PHP中魔术方法命令执行绕过方式解读题目源码:这道题首先一上来就是一段PHP代码,其中看到unserialize()就知道考的是反序列化,但是我们再往上看代码会发现还有命令执行绕过的知识点。做出这道题的第一步就是能够理清代码执行顺序和各个函数的功能。接下来我们先分析一下源码。method=$method;$this->arg
- [网鼎杯 2020 青龙组]AreUSerialz 1
bazzza
学习后端php安全http
打开靶场,是一道php代码审计的题目,是个反序列化的题目分块对代码进行分析,先分析输入部分functionis_valid($s){for($i=0;$i=32&&ord($s[$i])<=125))//限制字符串的范围returnfalse;returntrue;}if(isset($_GET{'str'})){$str=
- “零基础”PHP代码审计入门
渗透测试老鸟-九青
代码审计android安全php
目录一、代码审计目的二、代码审计基础三、代码审计思路四、PHP核心配置五、代码审计环境六、手动调试代码七、PHP的弱类型八、学习漏洞函数九、审计入门总结推荐一些demo:一、代码审计目的代码审计指的是对源代码进行检查,寻找代码中的bug以及安全缺陷(漏洞)。代码审计这是一个需要多方面技能的技术,也是需要一定的知识储备。我们需要掌握编程,安全工具的使用、漏洞原理、漏洞的修复方式、函数的缺陷等等,如果
- ctf-web
ch1762
ctf
ctf-web信息搜集认证绕过SQL注入文件上传文件包含PHP代码审计信息搜集源码泄露页面源代码敏感文件泄漏备份文件(.swp/.bak/.beifen/~/phps等)[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MGonEuLW-1604453612546)(https://i.loli.net/2020/11/02/kUboAxLhtRvD85z.png)]数
- 对股票分析时要注意哪些主要因素?
会飞的奇葩猪
股票 分析 云掌股吧
众所周知,对散户投资者来说,股票技术分析是应战股市的核心武器,想学好股票的技术分析一定要知道哪些是重点学习的,其实非常简单,我们只要记住三个要素:成交量、价格趋势、振荡指标。
一、成交量
大盘的成交量状态。成交量大说明市场的获利机会较多,成交量小说明市场的获利机会较少。当沪市的成交量超过150亿时是强市市场状态,运用技术找综合买点较准;
- 【Scala十八】视图界定与上下文界定
bit1129
scala
Context Bound,上下文界定,是Scala为隐式参数引入的一种语法糖,使得隐式转换的编码更加简洁。
隐式参数
首先引入一个泛型函数max,用于取a和b的最大值
def max[T](a: T, b: T) = {
if (a > b) a else b
}
因为T是未知类型,只有运行时才会代入真正的类型,因此调用a >
- C语言的分支——Object-C程序设计阅读有感
darkblue086
applec框架cocoa
自从1972年贝尔实验室Dennis Ritchie开发了C语言,C语言已经有了很多版本和实现,从Borland到microsoft还是GNU、Apple都提供了不同时代的多种选择,我们知道C语言是基于Thompson开发的B语言的,Object-C是以SmallTalk-80为基础的。和C++不同的是,Object C并不是C的超集,因为有很多特性与C是不同的。
Object-C程序设计这本书
- 去除浏览器对表单值的记忆
周凡杨
html记忆autocompleteform浏览
&n
- java的树形通讯录
g21121
java
最近用到企业通讯录,虽然以前也开发过,但是用的是jsf,拼成的树形,及其笨重和难维护。后来就想到直接生成json格式字符串,页面上也好展现。
// 首先取出每个部门的联系人
for (int i = 0; i < depList.size(); i++) {
List<Contacts> list = getContactList(depList.get(i
- Nginx安装部署
510888780
nginxlinux
Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,第一个公开版本0.1.0发布于2004年10月4日。其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源
- java servelet异步处理请求
墙头上一根草
java异步返回servlet
servlet3.0以后支持异步处理请求,具体是使用AsyncContext ,包装httpservletRequest以及httpservletResponse具有异步的功能,
final AsyncContext ac = request.startAsync(request, response);
ac.s
- 我的spring学习笔记8-Spring中Bean的实例化
aijuans
Spring 3
在Spring中要实例化一个Bean有几种方法:
1、最常用的(普通方法)
<bean id="myBean" class="www.6e6.org.MyBean" />
使用这样方法,按Spring就会使用Bean的默认构造方法,也就是把没有参数的构造方法来建立Bean实例。
(有构造方法的下个文细说)
2、还
- 为Mysql创建最优的索引
annan211
mysql索引
索引对于良好的性能非常关键,尤其是当数据规模越来越大的时候,索引的对性能的影响越发重要。
索引经常会被误解甚至忽略,而且经常被糟糕的设计。
索引优化应该是对查询性能优化最有效的手段了,索引能够轻易将查询性能提高几个数量级,最优的索引会比
较好的索引性能要好2个数量级。
1 索引的类型
(1) B-Tree
不出意外,这里提到的索引都是指 B-
- 日期函数
百合不是茶
oraclesql日期函数查询
ORACLE日期时间函数大全
TO_DATE格式(以时间:2007-11-02 13:45:25为例)
Year:
yy two digits 两位年 显示值:07
yyy three digits 三位年 显示值:007
- 线程优先级
bijian1013
javathread多线程java多线程
多线程运行时需要定义线程运行的先后顺序。
线程优先级是用数字表示,数字越大线程优先级越高,取值在1到10,默认优先级为5。
实例:
package com.bijian.study;
/**
* 因为在代码段当中把线程B的优先级设置高于线程A,所以运行结果先执行线程B的run()方法后再执行线程A的run()方法
* 但在实际中,JAVA的优先级不准,强烈不建议用此方法来控制执
- 适配器模式和代理模式的区别
bijian1013
java设计模式
一.简介 适配器模式:适配器模式(英语:adapter pattern)有时候也称包装样式或者包装。将一个类的接口转接成用户所期待的。一个适配使得因接口不兼容而不能在一起工作的类工作在一起,做法是将类别自己的接口包裹在一个已存在的类中。 &nbs
- 【持久化框架MyBatis3三】MyBatis3 SQL映射配置文件
bit1129
Mybatis3
SQL映射配置文件一方面类似于Hibernate的映射配置文件,通过定义实体与关系表的列之间的对应关系。另一方面使用<select>,<insert>,<delete>,<update>元素定义增删改查的SQL语句,
这些元素包含三方面内容
1. 要执行的SQL语句
2. SQL语句的入参,比如查询条件
3. SQL语句的返回结果
- oracle大数据表复制备份个人经验
bitcarter
oracle大表备份大表数据复制
前提:
数据库仓库A(就拿oracle11g为例)中有两个用户user1和user2,现在有user1中有表ldm_table1,且表ldm_table1有数据5千万以上,ldm_table1中的数据是从其他库B(数据源)中抽取过来的,前期业务理解不够或者需求有变,数据有变动需要重新从B中抽取数据到A库表ldm_table1中。
- HTTP加速器varnish安装小记
ronin47
http varnish 加速
上午共享的那个varnish安装手册,个人看了下,有点不知所云,好吧~看来还是先安装玩玩!
苦逼公司服务器没法连外网,不能用什么wget或yum命令直接下载安装,每每看到别人博客贴出的在线安装代码时,总有一股羡慕嫉妒“恨”冒了出来。。。好吧,既然没法上外网,那只能麻烦点通过下载源码来编译安装了!
Varnish 3.0.4下载地址: http://repo.varnish-cache.org/
- java-73-输入一个字符串,输出该字符串中对称的子字符串的最大长度
bylijinnan
java
public class LongestSymmtricalLength {
/*
* Q75题目:输入一个字符串,输出该字符串中对称的子字符串的最大长度。
* 比如输入字符串“google”,由于该字符串里最长的对称子字符串是“goog”,因此输出4。
*/
public static void main(String[] args) {
Str
- 学习编程的一点感想
Cb123456
编程感想Gis
写点感想,总结一些,也顺便激励一些自己.现在就是复习阶段,也做做项目.
本专业是GIS专业,当初觉得本专业太水,靠这个会活不下去的,所以就报了培训班。学习的时候,进入状态很慢,而且当初进去的时候,已经上到Java高级阶段了,所以.....,呵呵,之后有点感觉了,不过,还是不好好写代码,还眼高手低的,有
- [能源与安全]美国与中国
comsci
能源
现在有一个局面:地球上的石油只剩下N桶,这些油只够让中国和美国这两个国家中的一个顺利过渡到宇宙时代,但是如果这两个国家为争夺这些石油而发生战争,其结果是两个国家都无法平稳过渡到宇宙时代。。。。而且在战争中,剩下的石油也会被快速消耗在战争中,结果是两败俱伤。。。
在这个大
- SEMI-JOIN执行计划突然变成HASH JOIN了 的原因分析
cwqcwqmax9
oracle
甲说:
A B两个表总数据量都很大,在百万以上。
idx1 idx2字段表示是索引字段
A B 两表上都有
col1字段表示普通字段
select xxx from A
where A.idx1 between mmm and nnn
and exists (select 1 from B where B.idx2 =
- SpringMVC-ajax返回值乱码解决方案
dashuaifu
AjaxspringMVCresponse中文乱码
SpringMVC-ajax返回值乱码解决方案
一:(自己总结,测试过可行)
ajax返回如果含有中文汉字,则使用:(如下例:)
@RequestMapping(value="/xxx.do") public @ResponseBody void getPunishReasonB
- Linux系统中查看日志的常用命令
dcj3sjt126com
OS
因为在日常的工作中,出问题的时候查看日志是每个管理员的习惯,作为初学者,为了以后的需要,我今天将下面这些查看命令共享给各位
cat
tail -f
日 志 文 件 说 明
/var/log/message 系统启动后的信息和错误日志,是Red Hat Linux中最常用的日志之一
/var/log/secure 与安全相关的日志信息
/var/log/maillog 与邮件相关的日志信
- [应用结构]应用
dcj3sjt126com
PHPyii2
应用主体
应用主体是管理 Yii 应用系统整体结构和生命周期的对象。 每个Yii应用系统只能包含一个应用主体,应用主体在 入口脚本中创建并能通过表达式 \Yii::$app 全局范围内访问。
补充: 当我们说"一个应用",它可能是一个应用主体对象,也可能是一个应用系统,是根据上下文来决定[译:中文为避免歧义,Application翻译为应
- assertThat用法
eksliang
JUnitassertThat
junit4.0 assertThat用法
一般匹配符1、assertThat( testedNumber, allOf( greaterThan(8), lessThan(16) ) );
注释: allOf匹配符表明如果接下来的所有条件必须都成立测试才通过,相当于“与”(&&)
2、assertThat( testedNumber, anyOf( g
- android点滴2
gundumw100
应用服务器android网络应用OSHTC
如何让Drawable绕着中心旋转?
Animation a = new RotateAnimation(0.0f, 360.0f,
Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF,0.5f);
a.setRepeatCount(-1);
a.setDuration(1000);
如何控制Andro
- 超简洁的CSS下拉菜单
ini
htmlWeb工作html5css
效果体验:http://hovertree.com/texiao/css/3.htmHTML文件:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>简洁的HTML+CSS下拉菜单-HoverTree</title>
- kafka consumer防止数据丢失
kane_xie
kafkaoffset commit
kafka最初是被LinkedIn设计用来处理log的分布式消息系统,因此它的着眼点不在数据的安全性(log偶尔丢几条无所谓),换句话说kafka并不能完全保证数据不丢失。
尽管kafka官网声称能够保证at-least-once,但如果consumer进程数小于partition_num,这个结论不一定成立。
考虑这样一个case,partiton_num=2
- @Repository、@Service、@Controller 和 @Component
mhtbbx
DAOspringbeanprototype
@Repository、@Service、@Controller 和 @Component 将类标识为Bean
Spring 自 2.0 版本开始,陆续引入了一些注解用于简化 Spring 的开发。@Repository注解便属于最先引入的一批,它用于将数据访问层 (DAO 层 ) 的类标识为 Spring Bean。具体只需将该注解标注在 DAO类上即可。同时,为了让 Spring 能够扫描类
- java 多线程高并发读写控制 误区
qifeifei
java thread
先看一下下面的错误代码,对写加了synchronized控制,保证了写的安全,但是问题在哪里呢?
public class testTh7 {
private String data;
public String read(){
System.out.println(Thread.currentThread().getName() + "read data "
- mongodb replica set(副本集)设置步骤
tcrct
javamongodb
网上已经有一大堆的设置步骤的了,根据我遇到的问题,整理一下,如下:
首先先去下载一个mongodb最新版,目前最新版应该是2.6
cd /usr/local/bin
wget http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-2.6.0.tgz
tar -zxvf mongodb-linux-x86_64-2.6.0.t
- rust学习笔记
wudixiaotie
学习笔记
1.rust里绑定变量是let,默认绑定了的变量是不可更改的,所以如果想让变量可变就要加上mut。
let x = 1; let mut y = 2;
2.match 相当于erlang中的case,但是case的每一项后都是分号,但是rust的match却是逗号。
3.match 的每一项最后都要加逗号,但是最后一项不加也不会报错,所有结尾加逗号的用法都是类似。
4.每个语句结尾都要加分