- 为什么Swift不允许字符串使用===判断?ObjC字符串为什么有@前缀?NSLog和printf的区别?NSString *s = @“hello“变量s是不可变的吗?什么是Cocoa?
程序员小迷
Objective-cSwift小话iosioscocoaobjective-cswiftcmacoswpf
为什么Swift不允许字符串使用===判断?===判断实例是否引用同一个引用,!==判断实例不指向同一个引用,它们只能用于类类型/引用类型,而字符串在Swift是值类型。ObjC字符串为什么有@前缀?这是为了和普通C语言字符串区分开,@前缀代表字符串是NSString*类型,这种类型并不能和char*直接等价。NSLog和printf的区别NSLog是Objective-C引入的日志记录函数,pr
- NSLog输出
Johnny Tong
Swift开发iOS之旅nslogprint
OC中NSLog#ifdefDEBUG#defineNSLog(format,...)printf("\n[%s]%s[第%d行]%s\n",__TIME__,__FUNCTION__,__LINE__,[[NSStringstringWithFormat:format,##__VA_ARGS__]UTF8String]);#else#defineNSLog(format,...)#endifsw
- sql-labs 练习笔记
网络安全(华哥)
网络工程师网络安全sql笔记数据库安全web安全
简介#这个节不涉及过多原理,而主要是靶场练习,想获得更多原理请见上篇博客。基础知识#如何闭合括号#如果有报错则直接利用报错信息进行,否则尝试常见的闭合形式,简单的可以直接使用bool探测,而困难一点的可以尝试sleep、dnslog探测。其次注意检测时or和and的差别,当主查询结果不一致时,这两个就有区别了探测是否为数字型注入#?id=3-1?id=2若两者结果一致,则为数字型,否则为字符型。注
- SpringBoot整合Logback日志框架
洛上言
后端springboot后端java
文章目录一、引入二、默认日志格式三、控制台输出四、文件输出五、日志级别六、日志组七、自定义日志格式八、自定义log配置九、logback-spring.xml自定义注意事项一、引入SpringBoot使用CommonsLogging进行所有内部日志的记录,但默认配置也提供了对常用日志的支持,如JavaUtilLogging,Log4J2,和Logback.每种logger都可以通过配置使用控制台或
- Objective-C 静态方法可以重写吗
赵哥窟
首先来看一段代码#import@interfacePerson:NSObject+(void)pringName:(NSString*)name;@end#import"Person.h"@interfacePerson()@end@implementationPerson+(void)pringName:(NSString*)name{NSLog(@"Person-%@",name);}@end
- druid连接数据库报错
Aliyev
MySQL连接错误时区问题版本匹配jar包
信息:{dataSource-1}inited10月21,20229:26:36下午com.alibaba.druid.support.logging.JakartaCommonsLoggingImplerror严重:createconnectionSQLException,url:jdbc:mysql://localhost:3306/db1,errorCode0,state01S00java.
- 百度地图当前位置 变化回调方法(oc)
fighterboy
-(void)didUpdateUserHeading:(BMKUserLocation*)userLocation{[_mapViewupdateLocationData:userLocation];NSLog(@"headingis%@",userLocation.heading);}
- C语言 Blocks
CaptainRoy
无参数无返回值的闭包void(^printMessage)(void)=^(void){NSLog(@"ThisisBlocksLog");};printMessage();//ThisisBlocksLog参数#importvoid(^paramMethod)(int,int)=^(inta,intb){NSLog(@"a:%d,b:%d",a,b);};intmain(intargc,cons
- log4j与logback(简介,配置项解释,配置示例,使用说明)
rookie19_
javalog4jlogback
文章目录共性配置项含义指定配置文件常用实践注意事项log.isDebugEnabled()开发时使用带作者名的日志代码合并到master之前检查日志附录logj.properties写法logback.xml写法commonslogging和slf4j是日志接口,而log4j和logback是日志实现。实际使用时,一般都是接口+实现的组合。(题外话:slf4j最让人印象深刻的可能就是大括号占位符了
- ios 单元测试覆盖率怎么查看_iOS单元测试简单介绍
weixin_39714835
ios单元测试覆盖率怎么查看
单元测试的特点用代码来测试代码红灯/绿灯迭代开发在日常开发中,数据大部分来自网络,很难出现'边界数据',如果不测试所有条件就上架,APP就容易发生闪退自己建立测试用例单元测试不是靠NSLog来进行测试的,是使用'断言'来测试的,提前设置的条件必须满足才能通过测试扩展:为什么有些公司讨厌单元测试,因为'代码覆盖率'不好确认,提示:不是所有的代码都需要测试例如,私有方法不需要测试!只有暴露在.h中的方
- 23.java-日志框架
猪崽早点睡
java开发语言
日志框架介绍:程序中的日志可以用来记录程序运行过程中的信息,并可以进行永久存储。生活中的日志:生活中的日志就好比日记,可以记录你生活的点点滴滴。引入:目前输出语句的弊端:信息只能展示在控制台不能将其记录到其他的位置(文件,数据库)想取消记录的信息需要修改代码才可以完成12日志体系结构JCL:JakartaCommonsLoggingJakarta:Apache基金旗下的开源Java项目社区Logb
- 三分钟读懂Spring Boot写日志
充电实践
springboot
SpringBoot在所有内部日志中使用CommonsLogging,但是对底层日志的实现是开放的。在SpringBoot生态中,为JavaUtilLogging、Log4J2和Logback这些常见的日志框架都提供了自动化配置组件,每种Logger都可以通过配置在控制台或者文件中输出日志内容。默认情况下,当我们使用各种Starter的时候,会使用Logback来实现日志管理。在代码层面,不使用默
- 005--OC对象原理探究 - 内存偏移
Mr_wick
引言本文主要讲述内存里,指针的指向与取值,是一篇补充内容指针指针的具体概述以及用法,此处不再细诉,请各位看官移步自行Google哦。普通指针废话不多说,直接上代码inta=10;intb=10;NSLog(@"%d--%p",a,&a);NSLog(@"%d--%p",b,&b);打印结果image.pnga和b的值都是10,&a与&b得到的地址不一样,说明的是不同地址可以访问同一个值,简单来说就
- iOS 关于数组删除的时候使用enumerateObjectsUsingBlock删除不全
我一不小心就
背景:今天使用enumerateObjectsUsingBlock删除数组里面的对象元素出现删除不全的问题。[indexSceneListenumerateObjectsUsingBlock:^(id_Nonnullobj,NSUIntegeridx,BOOL*_Nonnullstop){NSLog(@"obj===>%@",obj);NSLog(@"idx===>%lu",(unsignedlo
- OC对象原理探索(中)-内存对齐
U东东枪
christopher-gower-m_HRfLhgABo-unsplash.jpg什么是内存对齐关于什么是内存对齐,我们通过下面一个例子来看一下需引入#import#import//LMPerson有两个成员变量:namegendarLMPerson*p=[LMPersonalloc];p.name=@"LM";p.gendar=@"男";NSLog(@"person---sizeof-----
- 点击不同按钮切换不同按钮刷新数据
summerTa
-(void)orderButtonClick:(UIButton*)btn{self.selectedButton.enabled=YES;btn.enabled=NO;self.selectedButton=btn;self.selectBtnTag=btn.tag;switch(btn.tag){case0:NSLog(@"默认距离");_strOrderType=@"default";br
- iOS block的基本使用
越天高
block作用:保存一段代码1.block声明2.block定义4.block类型5.block调用//block的声明返回值(^block的名字)(参数)void(^myblock)();/*定义=^(参数){}*///1.没有参数,没有返回值void(^block1)()=^{//没有参数在定义的时候可以省略NSLog(@"调用了block1");};//2如果没有参数,参数可以隐藏,如果有参
- 算法相关
张无奈
字符串反转链表反转有序数组合并Hash算法查找两个子视图的共同父视图求无序数组当中的中位数一、字符串反转给定字符串"hello,world",实现将其反转。输出结果:dlrow,olleh-(void)charReverse{NSString*string=@"hello,world";NSLog(@"%@",string);NSMutableString*reverString=[NSMutab
- 控制器View的生命周期
weyan
//第一次使用控制器View时调用,创建控制器的View,控制器的view是通过懒加载的方式创建的.//-(void)loadView{//////}//当控制器View加载完毕时调用-(void)viewDidLoad{[superviewDidLoad];NSLog(@"%s",__func__);}//当控制器Veiw即将显示时调用-(void)viewWillAppear:(BOOL)an
- 我是程序员,我用这种方式铭记历史
✨抗战直播:以图文方式“直播”1931年9月18日至1945年9月2日14年间抗战的日日夜夜✨开源地址:https://github.com/nslogx/WarOfResistanceLive欢迎star收藏一波✨预览地址:https://nslogx.github.io/WarOfResistanceLive前言在目前浮躁的互联网环境下,做一件好事不难,难的是连续8年做一件有意义的事。在微博上
- Objective - C block(二)block的类型及捕获变量
爱玩游戏的iOS菜鸟
(一)block捕获变量类型为了保证block内部能够正确访问外部的变量,block有一个变量捕获机制不同的变量类型捕获(1)变量捕获为autointmain(intargc,constchar*argv[]){@autoreleasepool{intage=10;//auto变量void(^block2)(int,int)=^(inta,intb){NSLog(@"thisisablock==%
- (IOS)查看系统所有字体
rightmost
//打印字体for(idfamilyNamein[UIFontfamilyNames]){NSLog(@"%@",familyName);for(idfontNamein[UIFontfontNamesForFamilyName:familyName])NSLog(@"%@",fontName);}
- 渗透测试之SQL注入基础
HACKNOE
web测试mysql渗透测试
渗透测试之SQL注入基础SQL注入类型按照数据类型类型来分类按照执行效果来分类(页面回显效果)按照数据提交的方式来分类判断注入类型的方法MySQL注入基础联合查询注入布尔注入时间盲注注入报错注入宽字节注入二次注入堆叠注入偏移注入DNSlog注入注入写webshellMySQL注入绕过空格绕过(过滤空过)关键字过滤SQL注入绕WAFMySQL注入的防御措施SQL注入类型按照数据类型类型来分类数字型注
- slf4j log4j log4j-over-slf4j self-log4j12
song854601134
Jave学习总结log4jspringjava
一、Java日志体系概述图1-1Java日志体系概况日志门面接口(SLF4J、JCL)一系列绑定和桥接具体的日志实现先来两个例子:Spring项目中通过CommonsLogging直接使用log4j图1-2通过CommonsLogging使用log4j本例中由于spring-core中原生依赖commons-logging,所以只需要添加log4j和log4j的配置文件就能work(当然引入其它依
- 2018 iOS面试题---算法相关
luonaerduo
字符串反转链表反转有序数组合并Hash算法查找两个子视图的共同父视图求无序数组当中的中位数一、字符串反转给定字符串"hello,world",实现将其反转。输出结果:dlrow,olleh-(void)charReverse{NSString*string=@"hello,world";NSLog(@"%@",string);NSMutableString*reverString=[NSMutab
- RunLoop 三 : 使用RunLoop线程保活的封装
小心韩国人
在RunLoop二:RunLoop在实际中的应用篇幅中我们介绍了runloop在项目中的具体用法,并且创建了一个可以控制生命周期的线程.今天我们就用OC和C语言两种方法封装一个线程保活的工具类:一:使用OC语言封装://监控线程生命周期@interfaceMYThread:NSThread@end@implementationMYThread-(void)dealloc{NSLog(@"%s",_
- 主线程阻塞问题
愤怒小鸟飞呀飞
问题主线程阻塞会导致新添加在父视图的view不能及时显示。如下代码:-(void)saveButtonAction:(UIButton*)button{[SVProgressHUDshowWithStatus:@"保存中。。。"maskType:SVProgressHUDMaskTypeClear];intm=0;while(m<100){m++;NSLog(@"test");}}上述代码中,SV
- log4j2核弹级漏洞靶场复现(反弹shell)
r00t_BRAVE
笔记log4j2安全漏洞
环境搭建:本次漏洞复现采用vulfocus的log4j2靶场docker使用Kali系统进行复现实验搭建docker拉取漏洞镜像可参考以下链接:https://blog.csdn.net/weixin_47019868/article/details/122010972log4漏洞镜像启动环境漏洞验证:dnslog回显则漏洞存在漏洞利用:接下来利用漏洞反弹shell,这里用的是大佬的exp,百度云
- Objective-C学习笔记-回调
土豆吞噬者
1.OC中有四种方法实现回调,分别是目标-动作对,辅助对象,通知,Block对象2.目标-动作对,是指当某个事件发生时,向指定对象发送指定消息,计时器使用的就是目标-动作对机制,如下代码所示,每隔两秒会执行一次updateLastTime方法,其中NSRunLoop用来保持线程允许并处理事件-(void)updateLastTime:(NSTimer*)t{NSLog(@"timeris%@",t
- com.alibaba.druid.support.logging.JakartaCommonsLoggingImpl error
阡陌昏晨
用spring整合mybatis的时候出现com.alibaba.druid.support.logging.JakartaCommonsLoggingImplerror错误解决方案1、对比pom.xml文件与properties文件名称jdbc.url=jdbc:mysql://localhost:3306/spring_testjdbc.username=rootjdbc.password=1
- [黑洞与暗粒子]没有光的世界
comsci
无论是相对论还是其它现代物理学,都显然有个缺陷,那就是必须有光才能够计算
但是,我相信,在我们的世界和宇宙平面中,肯定存在没有光的世界....
那么,在没有光的世界,光子和其它粒子的规律无法被应用和考察,那么以光速为核心的
&nbs
- jQuery Lazy Load 图片延迟加载
aijuans
jquery
基于 jQuery 的图片延迟加载插件,在用户滚动页面到图片之后才进行加载。
对于有较多的图片的网页,使用图片延迟加载,能有效的提高页面加载速度。
版本:
jQuery v1.4.4+
jQuery Lazy Load v1.7.2
注意事项:
需要真正实现图片延迟加载,必须将真实图片地址写在 data-original 属性中。若 src
- 使用Jodd的优点
Kai_Ge
jodd
1. 简化和统一 controller ,抛弃 extends SimpleFormController ,统一使用 implements Controller 的方式。
2. 简化 JSP 页面的 bind, 不需要一个字段一个字段的绑定。
3. 对 bean 没有任何要求,可以使用任意的 bean 做为 formBean。
使用方法简介
- jpa Query转hibernate Query
120153216
Hibernate
public List<Map> getMapList(String hql,
Map map) {
org.hibernate.Query jpaQuery = entityManager.createQuery(hql);
if (null != map) {
for (String parameter : map.keySet()) {
jp
- Django_Python3添加MySQL/MariaDB支持
2002wmj
mariaDB
现状
首先,
[email protected] 中默认的引擎为 django.db.backends.mysql 。但是在Python3中如果这样写的话,会发现 django.db.backends.mysql 依赖 MySQLdb[5] ,而 MySQLdb 又不兼容 Python3 于是要找一种新的方式来继续使用MySQL。 MySQL官方的方案
首先据MySQL文档[3]说,自从MySQL
- 在SQLSERVER中查找消耗IO最多的SQL
357029540
SQL Server
返回做IO数目最多的50条语句以及它们的执行计划。
select top 50
(total_logical_reads/execution_count) as avg_logical_reads,
(total_logical_writes/execution_count) as avg_logical_writes,
(tot
- spring UnChecked 异常 官方定义!
7454103
spring
如果你接触过spring的 事物管理!那么你必须明白 spring的 非捕获异常! 即 unchecked 异常! 因为 spring 默认这类异常事物自动回滚!!
public static boolean isCheckedException(Throwable ex)
{
return !(ex instanceof RuntimeExcep
- mongoDB 入门指南、示例
adminjun
javamongodb操作
一、准备工作
1、 下载mongoDB
下载地址:http://www.mongodb.org/downloads
选择合适你的版本
相关文档:http://www.mongodb.org/display/DOCS/Tutorial
2、 安装mongoDB
A、 不解压模式:
将下载下来的mongoDB-xxx.zip打开,找到bin目录,运行mongod.exe就可以启动服务,默
- CUDA 5 Release Candidate Now Available
aijuans
CUDA
The CUDA 5 Release Candidate is now available at http://developer.nvidia.com/<wbr></wbr>cuda/cuda-pre-production. Now applicable to a broader set of algorithms, CUDA 5 has advanced fe
- Essential Studio for WinRT网格控件测评
Axiba
JavaScripthtml5
Essential Studio for WinRT界面控件包含了商业平板应用程序开发中所需的所有控件,如市场上运行速度最快的grid 和chart、地图、RDL报表查看器、丰富的文本查看器及图表等等。同时,该控件还包含了一组独特的库,用于从WinRT应用程序中生成Excel、Word以及PDF格式的文件。此文将对其另外一个强大的控件——网格控件进行专门的测评详述。
网格控件功能
1、
- java 获取windows系统安装的证书或证书链
bewithme
windows
有时需要获取windows系统安装的证书或证书链,比如说你要通过证书来创建java的密钥库 。
有关证书链的解释可以查看此处 。
public static void main(String[] args) {
SunMSCAPI providerMSCAPI = new SunMSCAPI();
S
- NoSQL数据库之Redis数据库管理(set类型和zset类型)
bijian1013
redis数据库NoSQL
4.sets类型
Set是集合,它是string类型的无序集合。set是通过hash table实现的,添加、删除和查找的复杂度都是O(1)。对集合我们可以取并集、交集、差集。通过这些操作我们可以实现sns中的好友推荐和blog的tag功能。
sadd:向名称为key的set中添加元
- 异常捕获何时用Exception,何时用Throwable
bingyingao
用Exception的情况
try {
//可能发生空指针、数组溢出等异常
} catch (Exception e) {
 
- 【Kafka四】Kakfa伪分布式安装
bit1129
kafka
在http://bit1129.iteye.com/blog/2174791一文中,实现了单Kafka服务器的安装,在Kafka中,每个Kafka服务器称为一个broker。本文简单介绍下,在单机环境下Kafka的伪分布式安装和测试验证 1. 安装步骤
Kafka伪分布式安装的思路跟Zookeeper的伪分布式安装思路完全一样,不过比Zookeeper稍微简单些(不
- Project Euler
bookjovi
haskell
Project Euler是个数学问题求解网站,网站设计的很有意思,有很多problem,在未提交正确答案前不能查看problem的overview,也不能查看关于problem的discussion thread,只能看到现在problem已经被多少人解决了,人数越多往往代表问题越容易。
看看problem 1吧:
Add all the natural num
- Java-Collections Framework学习与总结-ArrayDeque
BrokenDreams
Collections
表、栈和队列是三种基本的数据结构,前面总结的ArrayList和LinkedList可以作为任意一种数据结构来使用,当然由于实现方式的不同,操作的效率也会不同。
这篇要看一下java.util.ArrayDeque。从命名上看
- 读《研磨设计模式》-代码笔记-装饰模式-Decorator
bylijinnan
java设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
import java.io.BufferedOutputStream;
import java.io.DataOutputStream;
import java.io.FileOutputStream;
import java.io.Fi
- Maven学习(一)
chenyu19891124
Maven私服
学习一门技术和工具总得花费一段时间,5月底6月初自己学习了一些工具,maven+Hudson+nexus的搭建,对于maven以前只是听说,顺便再自己的电脑上搭建了一个maven环境,但是完全不了解maven这一强大的构建工具,还有ant也是一个构建工具,但ant就没有maven那么的简单方便,其实简单点说maven是一个运用命令行就能完成构建,测试,打包,发布一系列功
- [原创]JWFD工作流引擎设计----节点匹配搜索算法(用于初步解决条件异步汇聚问题) 补充
comsci
算法工作PHP搜索引擎嵌入式
本文主要介绍在JWFD工作流引擎设计中遇到的一个实际问题的解决方案,请参考我的博文"带条件选择的并行汇聚路由问题"中图例A2描述的情况(http://comsci.iteye.com/blog/339756),我现在把我对图例A2的一个解决方案公布出来,请大家多指点
节点匹配搜索算法(用于解决标准对称流程图条件汇聚点运行控制参数的算法)
需要解决的问题:已知分支
- Linux中用shell获取昨天、明天或多天前的日期
daizj
linuxshell上几年昨天获取上几个月
在Linux中可以通过date命令获取昨天、明天、上个月、下个月、上一年和下一年
# 获取昨天
date -d 'yesterday' # 或 date -d 'last day'
# 获取明天
date -d 'tomorrow' # 或 date -d 'next day'
# 获取上个月
date -d 'last month'
#
- 我所理解的云计算
dongwei_6688
云计算
在刚开始接触到一个概念时,人们往往都会去探寻这个概念的含义,以达到对其有一个感性的认知,在Wikipedia上关于“云计算”是这么定义的,它说:
Cloud computing is a phrase used to describe a variety of computing co
- YII CMenu配置
dcj3sjt126com
yii
Adding id and class names to CMenu
We use the id and htmlOptions to accomplish this. Watch.
//in your view
$this->widget('zii.widgets.CMenu', array(
'id'=>'myMenu',
'items'=>$this-&g
- 设计模式之静态代理与动态代理
come_for_dream
设计模式
静态代理与动态代理
代理模式是java开发中用到的相对比较多的设计模式,其中的思想就是主业务和相关业务分离。所谓的代理设计就是指由一个代理主题来操作真实主题,真实主题执行具体的业务操作,而代理主题负责其他相关业务的处理。比如我们在进行删除操作的时候需要检验一下用户是否登陆,我们可以删除看成主业务,而把检验用户是否登陆看成其相关业务
- 【转】理解Javascript 系列
gcc2ge
JavaScript
理解Javascript_13_执行模型详解
摘要: 在《理解Javascript_12_执行模型浅析》一文中,我们初步的了解了执行上下文与作用域的概念,那么这一篇将深入分析执行上下文的构建过程,了解执行上下文、函数对象、作用域三者之间的关系。函数执行环境简单的代码:当调用say方法时,第一步是创建其执行环境,在创建执行环境的过程中,会按照定义的先后顺序完成一系列操作:1.首先会创建一个
- Subsets II
hcx2013
set
Given a collection of integers that might contain duplicates, nums, return all possible subsets.
Note:
Elements in a subset must be in non-descending order.
The solution set must not conta
- Spring4.1新特性——Spring缓存框架增强
jinnianshilongnian
spring4
目录
Spring4.1新特性——综述
Spring4.1新特性——Spring核心部分及其他
Spring4.1新特性——Spring缓存框架增强
Spring4.1新特性——异步调用和事件机制的异常处理
Spring4.1新特性——数据库集成测试脚本初始化
Spring4.1新特性——Spring MVC增强
Spring4.1新特性——页面自动化测试框架Spring MVC T
- shell嵌套expect执行命令
liyonghui160com
一直都想把expect的操作写到bash脚本里,这样就不用我再写两个脚本来执行了,搞了一下午终于有点小成就,给大家看看吧.
系统:centos 5.x
1.先安装expect
yum -y install expect
2.脚本内容:
cat auto_svn.sh
#!/bin/bash
- Linux实用命令整理
pda158
linux
0. 基本命令 linux 基本命令整理
1. 压缩 解压 tar -zcvf a.tar.gz a #把a压缩成a.tar.gz tar -zxvf a.tar.gz #把a.tar.gz解压成a
2. vim小结 2.1 vim替换 :m,ns/word_1/word_2/gc  
- 独立开发人员通向成功的29个小贴士
shoothao
独立开发
概述:本文收集了关于独立开发人员通向成功需要注意的一些东西,对于具体的每个贴士的注解有兴趣的朋友可以查看下面标注的原文地址。
明白你从事独立开发的原因和目的。
保持坚持制定计划的好习惯。
万事开头难,第一份订单是关键。
培养多元化业务技能。
提供卓越的服务和品质。
谨小慎微。
营销是必备技能。
学会组织,有条理的工作才是最有效率的。
“独立
- JAVA中堆栈和内存分配原理
uule
java
1、栈、堆
1.寄存器:最快的存储区, 由编译器根据需求进行分配,我们在程序中无法控制.2. 栈:存放基本类型的变量数据和对象的引用,但对象本身不存放在栈中,而是存放在堆(new 出来的对象)或者常量池中(字符串常量对象存放在常量池中。)3. 堆:存放所有new出来的对象。4. 静态域:存放静态成员(static定义的)5. 常量池:存放字符串常量和基本类型常量(public static f