- 浏览: 316503 次
最新评论
-
lyjilu:
作者文笔不错,公司也不错
项目经理叫你改Bug,后来就发生了…… -
chrislee1982:
我只能说那个开发的,能力是有的,情商有点让人着急
项目经理叫你改Bug,后来就发生了…… -
movingboy:
这个做法不奇怪吧?生产急用就先临时解决,回头再想办法优化
项目经理叫你改Bug,后来就发生了…… -
tcrct:
已经在项目中大部份都用到了。
Java程序员一定知道的优秀第三方库 -
xianlc:
整理的很全
Java程序员一定知道的优秀第三方库
文章列表
高并发是指在同一个时间点,有很多用户同时的访问URL地址,比如:淘宝的双11,双12,就会产生高并发,如贴吧的爆吧,就是恶意的高并发请求,也就是DDOS攻击,再屌丝点的说法就像玩撸啊撸被ADC暴击了一样,那伤害你懂得(如果 ...
你曾经碰到过现在这种情况:
你的代码非常优雅。
你代码中的抽象刚刚好,不多不少。
你的模块都各自独立。
所有的测试结果都是绿色的。代码测试覆盖率报告花了整整一分钟才打开,上面显示着 97%……
生活很美好。
然后事情就这么发生了。
对于排查问题找出性能瓶颈来说,最容易发现并解决的问题就是MYSQL的慢查询以及没有得用索引的查询。
=========================================================
方法一: 这个方法我正在用,呵呵,比较喜欢这种即时性的。
Mysql5.0以上的版本可以支持将执行比较慢的SQL语句记录下来。
mysql> show variables like 'long%'; 注:这个long_query_time是用来定义慢于多少秒的才算“慢查询”
+-----------------+---------- ...
几乎每个程序员都知道要“避免重复发明轮子”的道理——尽可能使用那些优秀的第三方框架或库,但当真正进入开发时,我却经常发现他们有时并不知道那些轮子在哪里。最近,我在业余时间带几个年轻的程序员一起做了一个很小的商业项目,而在一起开发的过程中,我几乎在所有需要判断字符串是否为空的地方,看到了下面的代码:
if(inputString == null || inputString.length == 0){......}
除了字符串判断是否为空之外,还有很多字符串处理或其他数据类型判断的方法,缺少经验的程序员们往往都会想办法自己来写。这些代码当然都没有错,但我们应该尽可能去利用那些已经非常成熟 ...
这是来自quroa的问题:Why-aren't-there-a-lot-of-old-programmers-at-software-companies下的一个回答。
很多人会疑问是不是程序员最后只能转管理,是不是到了中年之后就应该放弃编程。看到这个回答后很受触动,尽力翻译出来,有不恰当的地方欢迎指出。
下个星期我就69了。我从1967年开始编程。到现在已经48年了,从COBOL一直写到jQuery。我已经忘掉的编程语言比很多程序员这辈子遇 到的还多。我现在自己接一些项目,因为作为一个员工我完全是个工作狂,即使在我已经三十多岁的时候。我永远不会再去做一份每天工作8小时的传统编程 ...
在日常的Android开发中,日志打印是一项必不可少的操作,我们通过分析打印的日志可以分析程序的运行数据和情况。然而使用日志打印的正确姿势又是怎样呢,如何屏蔽日志信息输出呢,本文将逐一进行回答。
哪些形式
System.out.println
这是标准的Java输出方法,相信很多公司都不提倡使用,这里进行列举,目的是为了提醒大家不用。
Android Log
Android自身提供了一个日志工具类,那就是android.util.Log。使用很简单,如下
一年多,我仗著自己年轻的身体,对电脑的热情,在工作上多使用蛮力,仿佛一个使用朴素演算法实现的程式,吭赤吭赤跑个不停。一开始,朴素演算法还能在指定的工作时间内完成任务;后来任务越来越多,工作时间之内肯定 ...
写在前面:最近开始用Ubuntu系统,实在没有好用的mysql界面程序,于是....只能用终端操作之了。
操作过程:打开【终端】,直接输入以下内容,点回车即可
就这一句话哦!
用途:将远程服务器的数据库拷到本地。
命令行:
mysqldump -h 114.212.111.123 -uROSE -pxxxooo --opt --compress ITSM --skip-lock-tables | mysql -h localhost -uroot -proot ITSMC
解释:
114.212.111.123 远程服务器名称
ROSE 远 ...
#1、不在属性文件或XML文件中外化配置属性。比如,没有把批处理使用的线程数设置成可在属性文件中配置。你的批处理程序无论在DEV环境中,还是UAT(用户验收测试)环境中,都可以顺畅无阻地运行,但是一旦部署在PROD 上,把它作为多线程程序处理更大的数据集时,就会抛出IOException,原因可能是JDBC驱动版本不同,也可能是#2中讨论的问题。如果线程数目 可以在属性文件中配置,那么使它成为一个单线程应用程序就变得十分容易了。我们不再需要为了解决问题而反复地部署和测试应用了。这种方法也同样适用于配置 URL、服务器和端口号等。
#2、测试中使用的数据集规模不合适。比如,生产过程中一个 ...
大家都知道吧,这很坑,尤其是用惯了mysql里的自增字段设置,结果oracle里面没有的。oh,no
我用的是12c版本的,它有一个新特性,可以这样设置自增序列,在创建表是,把id设置为自增序列
create table t
(
id number generated by default as identity (start with 1 increment by 1),
name varchar2(20),
password varchar2(20),
Constraint Pk_T Primary Key ( Id )
);
很忧桑 ...
#1、不在属性文件或XML文件中外化配置属性。比如,没有把批处理使用的线程数设置成可在属性文件中配置。你的批处理程序无论在DEV环境中,还是UAT(用户验收测试)环境中,都可以顺畅无阻地运行,但是一旦部署在PROD 上,把它作为多线程程序处理更大的数据集时,就会抛出IOException,原因可能是JDBC驱动版本不同,也可能是#2中讨论的问题。如果线程数目 可以在属性文件中配置,那么使它成为一个单线程应用程序就变得十分容易了。我们不再需要为了解决问题而反复地部署和测试应用了。这种方法也同样适用于配置 URL、服务器和端口号等。
#2、测试中使用的数据集规模不合适。比如,生产过程中一个 ...
1、不用PreparedStatements
有意思的是,在JDBC出现了许多年后的今天,这个错误依然出现在博客、论坛和邮件列表中,即便要记住和理解它是一件很简单的事。开发者不使用PreparedStatements的原因可能有如下几个:
他们对Pre ...
【情况一】:
java.lang.OutOfMemoryError: Java heap space:这种是java堆内存不够,一个原因是真不够,另一个原因是程序中有死循环;
如果是java堆内存不够的话,可以通过调整JVM下面的配置来解决:
<jvm-arg>-Xms3062m< ...
长期以来,多线程问题颇为受到面试官的青睐。虽然我个人认为我们当中很少有人能真正获得机会开发复杂的多线程应用(在过去的七年中,我得到了一个机会),但是理解多线程对增加你的信心很有用。之前,我讨论了一个wait() ...
加密是保证数据安全的手段之一。加密是将纯文本数据转换为难以理解的密文;解密是将密文转换回纯文本。
数据的加解密属于密码学的范畴。通常,加密和解密都需要使用一些秘密信息,这些秘密信息叫做密钥,将纯文本转为密文或者转回的时候都要用到这些密钥。
对称加密指的是发送者和接收者共用同一个密钥的加解密方法。
非对称加密(又称公钥加密)指的是需要一个私有密钥一个公开密钥,两个不同的密钥的加解密体系。尽管不同,这个密钥对的这两个部分在算法上是有关联的。一个密钥将纯文本加密,另一个将密文解密。没有一个密钥能够把加密和加密的功能全部自己完成。公钥,或者用于加密数据的密钥,可以被自由分发。
...