写在前面网上看帖子的时候,经常会看到说尽量用exists,少用in。那么问题来了,是所有场景下都尽量用exists吗,还是具体场景具体分析。给你答案mysql做子查询的时候,永远记得要小表驱动大表。inselect * from A where id in (select id from B);相当于先循环B,再循环A。B表驱动A表。也就是当B表数据少于A表时,用in最佳。existsselect * from A whereexists(select 1 ...
原创
2021-12-29 16:09:09
148阅读
如下情况使用GET方法:客户端与服务端的交互像是一个提问(如查询操作、搜索操作、读操作) 如下情况使用POST方法: 1.交互是一个命令或订单(order),比提问包含更多信息 2.交互改变了服务器端的资源并被用户察
assert用在那些你知道绝对不会发生的事情上,但是因为人总是会犯错误,保不准你写出来的东西跟你想的不一样。所以assert用来捕捉的是程序员自己的错误。 同理,exception捕捉的是用户或者环境的错误。
转载
2019-01-02 21:47:00
281阅读
2评论
刚开始学习Web开发的时候,总会遇到提交表单时使用GET方法还是POST方法的问题,最开始的时候因为没有经验并没有领悟,后来框架开发做多了,更是 把这些原始基础知识扔出了银河系。最近开到一段W3的资料,写的不错,原文地址如下:http://bu-choreography.iteye.com /admin/blogs/new。翻译总结如下: 快速判断:
如下情况使用GET方法:客户端与服务端的交互像
转载
2013-01-31 00:24:00
105阅读
2评论
什么时候用button,什么时候用a标签 一、问题 能实现链接功能的标签一般就a标签,button标签,input submit标签 input submit肯定是提交表单的时候用 那
转载
2018-04-25 16:14:00
143阅读
书得到的信息好像是Vector是从java1开始就有了,ArrayList是后来才有的.用途几乎都一样,(不需要定
转载
2012-08-28 10:05:00
144阅读
2评论
什么时候用接口?什么时候用抽象类?接口相对于抽象类和实体类的好处.实现多继承.
“接口是完全抽象的成员集合,它的成员都无法在接口定义时实现,我们可以将它看作是为操作定义合同,接口的实现完全 留给开发者去做。它们之间的区别,如果认真分析,还是有不少的:在JAVA中,类只能是从一个基类继承,所以如果要使用抽象类为一组类提供多态性,这些类 必须都是从那个类继承的;接口就不一样了,它不但可以用一个类或结构实现多个接口,一个接口还可以有多个实现。” 抽象类是一种...
转载
2009-10-16 10:44:00
164阅读
2评论
1. 需要改变实参的时候, 只能用指针.
2. 传递大型结构并且"只读"其元素的时候,
因为大型结构通过值传递, 需要拷贝其每个元素, 这样效率太低.
3. 需要遍历数组或频繁引用其元素时, 这样效率比使用下标高.
4. 动态分配空间时, 必须使用指针.
5. 传递数组时, 必
转载
2017-08-20 13:20:10
5900阅读
原文网址:http://www.cocoachina.com/ios/20150512/11805.html 我们在声明一个NSString属性时,对于其内存相关特性,通常有两种选择(基于ARC环境):strong与copy。那这两者有什么区别呢?什么时候该用strong,什么时候该用copy呢?让
转载
2016-12-07 15:53:00
85阅读
2评论
什么时候用Go,什么时候用Rust | Gopher Daily (2020.09.29) ʕ◔ϖ◔ʔ
原创
2021-07-06 14:31:24
66阅读
什么时候用堆,什么时候用栈程序编译时内存分为5大存储区:堆区、栈区、静态区(全局区)、文字常量区(存储字符串常量)、程序代码区(存放二进制程序)(1)静态存储区域:静态存储区域的内存在程序编译时就已经分配好了,这块内存在程序整个运行时期都存在。速度块、不易出错,例如全局变量,static变量等(2)栈在执行函数时,函数内局部变量的存储单元都在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分
原创
2021-12-27 00:06:11
338阅读
1.首先scanf是格式输入函数,&是取地址运算符,使用scanf时,对于本身无法表示地址信息的,往往要加&来“获取地址”,本身表示的就是地址信息的,就不需要加&来取地址。判断的依据可以看,scanf后面的参数,是否能够反应地址信息,不能你就需要使用&或使用指向该位置的指针的方式来传给给scanf地址,能就不需要取地址。2.记住常见的类型(1). 整型变量类型#de
先,故障分软故障,硬故障,人为故障,可恢复故障,不可恢复故障,集群不能解决所有问题,关键还是人和规范流程.
好的系统可以提高可用性,也可以提高性能,更需要好的设计和维护.
VCS可以检测到应用失败和节点失败
应用需要提供各种行为的脚本(启动,关闭,监控),也依赖于文件系统和网络接口
VCS可以区分节点失败和节点通讯失败,采用心跳线,共享存储,冗余数据接口来保护系统.
&n
转载
精选
2009-04-18 02:41:03
926阅读
assertion(断言)在软件开发中是一种常用的调试方式,很多开发语言中都支持这种机制。在实现中,assertion就是在程序中的一条语句,它对一个boolean表达式进行检查,一个正确程序必须保证这个boolean表达式的值为true;如果该值为false,说明程序已经处于不正确的状态下,ass
转载
2020-11-17 19:28:00
117阅读
2评论
消息总线(Message Queue),后文称MQ,是一种跨进程的通信机制,用于上下游传递消息。 画外音:这两个进程,一般不在同一台服务器上。 在互联网架构中,MQ经常用做“上下游解耦”: 消息发送方只依赖MQ,不关注消费方是谁; 消息消费方也只依赖MQ,不关注发送方是谁; 画外音:发送方与消费方,
转载
2020-08-05 16:42:00
72阅读
2评论
C#中有两种常量类型,分别为readonly(运行时常量)与const(编译时常量),本文将就这两种类型的不同特性进行比较并说明各自的适用场景。 工作原理 readonly为运行时常量,程序运行时进行赋值,赋值完成后便无法更改,因此也有人称其为只读变量。 const为编译时常量,程序编译时将对常量值进行解析,并将所有常量引用替换为相应值。 下面声明两个常量: public sta...
转载
2008-09-08 17:30:00
33阅读
2评论
何为断言 断言一般是用于检测在某个程序位置程序必须满足某些条件的宏。一般用的多的可以分两种种情况:前置条件:在某个程度点开始的地方后置条件:在某段程序执行结束后,一般用于检测执行结果断言发...
转载
2021-11-25 10:42:15
4408阅读