自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 资源 (6)
  • 收藏
  • 关注

原创 腾讯云服务器Linux(Centos)挂载数据盘

查看数据盘挂载情况df -h从图中查看,目前只有一块硬盘查看磁盘分区fdisk -l 对比Disk /dev/vda,vda下面有一个Device /dev/vda1,vdb少了一个Device。说明数据盘是有的,只不过现在没有分区,还无法使用,所以接下来我们就要对它进行分区。格式化分区mkfs.ext4 /dev/vdb添加分区信息和自动挂载mkdir -p /homeecho '/dev/vdb /hom...

2022-03-10 23:58:42 331

原创 Linux下安装jdk

1.查看java的所有版本:yum list java*2.安装免费版1.8: yum install java-1.8.0-openjdk.x86_643.配置java环境 1 2 3 4 5 JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-1.el7_6.x86_64 JRE_HOME=$JAVA_HOME/jre CLASS_PATH=.:$J

2022-03-10 23:39:51 839

原创 从零实现Spring框架,彻底玩明白spring,学会造轮子技能

你有没有遇到过这种情况? 面试的时候,面试官和你深入探讨spring源码 工作的时候,需要针对spring做扩展开发 不想重复性写CRUD的代码,想成长为高阶工程师,想深入了解Spring机制和原理 Spring框架是Java开发人员的必备技能,想深入学习以便更好的应用 看Spring源码成为衡量是否为高阶工程师的一个重要标准网上解析源码的视频和文章也非常多,但是很多人看完之后,仍旧一头雾水,为什么会出现这种现象呢?原因在于源码是零零散散的读,形不成系统性

2022-03-10 23:35:58 216

原创 新浪微博图床架构解析

可以先看一下 http://c.blog.sina.com.cn/profile.php?blogid=a466bf9189000rsw 新浪微博官方发出来的文章。以下我们来解析一下如何构建高可用的图片存储系统 以满足现在日益增长的图片量,保证系统稳定高效的运行。 微博图床系统分析 图床系统 ,我们先来分析下基于此类系统的一个特性特性:1.       小文件数量巨多,

2014-03-06 10:05:53 7803

原创 Flume-ng+Kafka+storm的学习笔记

Flume-ng+Kafka+storm的学习笔记 Flume-ngFlume是一个分布式、可靠、和高可用的海量日志采集、聚合和传输的系统。      Flume的文档可以看http://flume.apache.org/FlumeUserGuide.html 官方的英文文档 介绍

2014-01-21 11:33:01 79247 6

原创 kafka Failed to send messages after 3 tries 问题解决

kafka Failed to send messages after 3 tries.在kafka0.8开发过程中 生产者测试用例碰到了Exception in thread "main" kafka.common.FailedToSendMessageException: Failed to send messages after 3 tries.at kafka.prod

2014-01-13 12:26:31 40580 31

转载 Java软件低级错误(一):资源未及时释放

¨解读:     在使用文件、IO流、数据库连接等不会自动释放的资源时,应该在使用完毕后马上将其关闭。关闭资源的代码try...catch...finally的finally内执行,否则可能造成资源无法释放。案例:FileWriter fileWriter = new

2011-08-11 19:05:14 4173

转载 Java软件低级错误(五):魔鬼数字

¨解读    在代码中使用魔鬼数字(没有具体含义的数字、字符串等)将会导致代码难以理解,应该将数字定义为名称有意义的常量。   将数字定义为常量的最终目的是为了使代码更容易理解,所以并不是只要将数字定义为常量就不是魔鬼数字了。如果常量的名称没有意义,无法帮助理解代码,同样

2011-08-11 19:03:44 8601

转载 Java软件低级错误(二):常量对象化判断避免空指针异常

¨解读:    空指针异常是编码过程中最常见的异常,在使用一个对象的时候,如果对象可能为空,需要先判断对象是否为空,再使用这个对象。在进行常量和变量的相等判断时,建议将常量定义为Java对象封装类型(如将int类型的常量定义为Integer类型),这样在比较时可以将常量放在左

2011-08-11 19:02:02 2311

转载 Java软件低级错误(六):字符串转数字时未进行异常处理

¨解读    调用Java方法将字符串转换为数字时,如果字符串的格式非法,会抛出运行时异常NumberFormatException。 ¨案例 错误写法 public Integer getInteger1(String number) {

2011-08-10 09:36:51 9418

转载 Java软件低级错误(七):Calendar的错误使用

¨解读    Calendar从星期日开始到星期六为一个周期,数字表示依次为:1,2,3……7;MONTH的表示是从数字0开始,所以月份应该是该数字+1。所以我们在使用的时候一定要仔细的阅读API文档,避免类似的陷阱。¨案例     Calendar cal =

2011-08-10 09:34:42 1866

转载 Java软件低级错误(十二):Java的移位(>>和>>>)运算问题

解读   运算符>>指的是对它左边的操作数带符号右移位。我们知道数据的补码表示,如果是负数,那么它的最高位是1,所以右移位操作时左边的空缺用1填补。   运算符>>>也是右移,但它与>>的区别是对于负数,右移不是用1填补,而是用0填补。也就是>>>不考虑数的正负,机械地移

2011-08-10 09:22:56 1111

转载 重构方法进阶(十三):代码常用重构方法(临时变量内联化&&拆分临时变量)

引用解释性变量表达式可能非常复杂,难以阅读。临时变量可以帮助你将表达式分解为比较容易管理的形式。若有个复杂的表达式,把表达式的结果(或者子表达式的结果)放进临时变量,这个临时变量的名字能够解释表达式的目的。例如:对于一个长算法,可以把每一步的结果放进临时变量。示例:

2011-08-09 19:30:53 1859

转载 重构方法进阶(十一):代码常用重构方法(提取方法&将方法内联化)

简而言之,就是分解长方法,重用逻辑,也就是将功能内聚的一块代码组织为方法/函数。这样重构之后,可以有效的对代码按功能内聚进行分层组织,增加代码的可读性和可维护性。示例:void printOwing(double amount) {printBanner();

2011-08-09 19:28:45 1628

转载 重构方法进阶(十二):代码常用重构方法(临时变量内联化&以查询取代临时变量)

若有临时变量只用个表达式赋值了一次,并且这个变量妨碍其它重构。将对这个变量的所有引用换成这个表达式。大多数内联临时变量是作为“以查询方法替换临时变量”重构方法的一部分,这才是真正目的。一般临时变量是无害的,如果它妨碍其它重构方法才需要内联。这个重构可能会有很大的负作用,如

2011-08-09 19:27:41 1625

转载 Java软件低级错误(十 四):定义equals方法的同时也要定义hashCode方法

解读: equals方法用于实现对象之间逻辑上是否相等的判断,而不是判断两个引用是否指向同一个对象,hashCode用于返回对象的哈希码(也有翻译成散列码的),逻辑上相等(equals比较相等)的两个不同对象它们返回的hashCode值肯定不相等。 Java规范中规定:如果两

2011-08-09 19:22:25 1064

转载 Java软件低级错误(十 五):大小写转换的正确处理

解读:  String提供有大小写转换方法:String.toUpperCase()和String.toLowerCase(),另外还有带Locale参数的大小写转换方法:String.toUpperCase(Locale locale)和String.toLowerCase

2011-08-09 19:21:39 12605

转载 Java软件低级错误(二十 ):正确理解String/StringBuffer/ StringBuilder的性能区别

解读: StringBuffer的内部实现方式和String不同,所以StringBuffer在进行字符串处理时,不生成新的对象,在内存使用上要优于String类。 StringBuilder提供一个与StringBuffer兼容的API,该类被设计用作 StringBu

2011-08-09 19:16:02 1826

转载 Java软件低级错误(十 一):正确理解Java的浅clone和深clone

解读: 浅clone和深clone都是clone,它们本质区别是对象内部的成员属性(非原生类型属性,如int等)在clone时是否处理为引用。如果仍然保留为引用,则称为浅clone,反之称为深clone。浅clone方式得到clone对象即可,深clone方式在得到clone

2011-08-09 18:59:41 1195

转载 Java软件低级错误(十 九):静态变量的初始化问题

解读: 类的一个静态变量已经初始化,在构造函数中进行了重新赋值,但结果显示构造函数中的赋值没有生效。因为编译器是按照顺序将静态对象、静态变量搬到初始化语句块中的,而静态对象的初始化调用了构造方法,在构造方法中先改变了静态变量的值,下面再初始化静态变量时将其值复原了。案例:

2011-08-09 18:58:55 1523

转载 Java软件低级错误(十 六):使用包装器对象带来的低效问题

解读: 每个基本类型(primitive)都有相应的包装器(wrapper)对象:Integer、Long、Float、Double、Short、Byte、Character和Boolean,我们在使用时不要直接new Integer对象(这样的做法是低效的),而应该调用包装

2011-08-09 18:55:51 1083

转载 Java软件低级错误(十 七):对于Map元素的遍历使用entrySet还是KeySet?

解读: JDK实现的数据结构中常用的Map有两类:HashMap和TreeMap。keySet和entrySet在Map元素数较少时(小于10000)在查询速度上的区别不大,它们对于程序性能的影响可以忽略不计。但在元素较多时(大于100000)时entrySet的速度要明显快

2011-08-09 18:55:08 3158

转载 Java软件低级错误(十 八):忽略InputStream.skip()返回值的处理

解读: java.io.InputStream.skip(long n):跳过和放弃此输入流中的 n 个数据字节,返回的是跳过的实际字节数。如果skip方法的返回值小于要跳过得字节数,则说明有异常发生,此时需要对异常情况进行处理。¨案例: fileInputS

2011-08-09 18:51:14 8805 1

转载 Java软件低级错误(十 三):短路运算和非短路运算的区别

解读: 逻辑与(&&):如果左操作数结果为true,则继续计算右操作数;如果左操作数结果为false,则对右操作数的运算已经没有必要,直接返回结果false,忽略右操作运算。逻辑或(||):如果左操作数结果为false,则继续计算右操作数;如果左操作数结果为true,则对

2011-08-09 18:41:03 1214

转载 Java软件低级错误(九 ):Java参数传递:传值还是传引用?

解读: 对于原始数据类型,也就是int、 long、char之类的类型,是传值的,如果你在方法中修改了值,方法调用结束后,那个变量的值没有改变。      对于对象类型,也就是Object的子类,如果你在方法中修改了它的成员的值,那个修改是生效的,方法调用结束后,它的成员

2011-08-09 18:34:48 746

转载 Java软件低级错误(八 ):序列化类的多版本问题

解读: Java的序列化机制是通过在运行时判断类的serialVersionUID来验证版本一致性的。在进行反序列化时,JVM会把传来的字节流中的serialVersionUID与本地相应实体(类)的serialVersionUID进行比较,如果相同就认为是一致的,可以进行反

2011-08-09 18:31:45 1217

转载 Java软件低级错误(十 ):正确定义hashcode

解读: 类A覆写了hashCode方法,并采用A的属性value来生成A的hashCode。使用HashSet作为集合对象,把类A的一个对象a加入到HashSet中后,如果对象a的属性value发生了变化,则a的hashCode()方法返回的值也就发生变化,则无法将对象a从H

2011-08-09 18:20:05 836

面相研究院-1.2-php

面相研究院由3位国内资深相学大师整理的面相学基本概念,和5位人工智能工程师运用深度神经网络学习语言让AI学习近20万拥有108个定位点的真实人脸样本数据,AI测算最精准的数据,源码由折翼天使资源社区提供,匹配面相学大师倾囊相守的相学经验,我们尽最大可能真实还原《面相学》这一中国传统文化的精髓

2019-05-22

clojure 所需的leiningen环境的jar包和bat

clojure 所需的leiningen环境的jar包和bat

2012-12-21

dwr+java+mysql实现的推技术聊天

dwr+java+mysql实现的推技术聊天,源码 完整 可运行

2012-02-24

eclipse快捷键

eclipse快捷键eclipse快捷键eclipse快捷键eclipse快捷键eclipse快捷键eclipse快捷键eclipse快捷键eclipse快捷键eclipse快捷键

2011-06-09

汇编与C语言快速入门教程动画

汇编与C语言入门,里面有一些快速入门的技巧

2008-11-15

舞伴搭配问题

用C++编写的关于学生搭配的问题 用队列解决问题的经典例子

2008-06-30

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除