- 博客(42)
- 收藏
- 关注
原创 (转)Java四类引用权威解读
译文:理解Java中的弱引用OCT 12TH, 2014不久之前,我面试了一些求职Java高级开发工程师的应聘者。我常常会面试他们说,“你能给我介绍一些Java中得弱引用吗?”,如果面试者这样说,“嗯,是不是垃圾回收有关的?”,我就会基本满意了,我并不期待回答是一篇诘究本末的论文描述。然而事与愿违,我很吃惊的发现,在将近20多个有着平均5年开发经验和高学历背景的应聘者中,居然只...
2016-11-01 19:01:09
173
原创 (转)Java中的注解是如何工作的?
自Java5.0版本引入注解之后,它就成为了Java平台中非常重要的一部分。开发过程中,我们也时常在应用代码中会看到诸如@Override,@Deprecated这样的注解。这篇文章中,我将向大家讲述到底什么是注解,为什么要引入注解,注解是如何工作的,如何编写自定义的注解(通过例子),什么情况下可以使用注解以及最新注解和ADF(应用开发框架)。这会花点儿时间,所以为自己准备一杯咖啡,让我们来进...
2016-08-22 10:26:16
184
原创 为什么使用工厂模式而不用new来创建对象
问:为什么感觉工厂模式没什么优势呢?比如我想用三种工厂模式中的工厂方法模式,但是它用子工厂返回对象和new对象一样吧,我觉得还没有new简单。 答:new你妹,需求的变更贯穿于每一个软件项目。设计模式精髓就在于应对“未来的变化”。当然这种变化主要是扩展性。 这是我目前看到的最能解决初学者困惑的回答!...
2016-08-09 16:17:12
4556
6
原创 现在的JDK为什么有两个jre?
今天同事在编译Maven工程时,显示jre报错[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:2.3.2:compile (default-compile) on project omega-common: Compilation failure[ERROR] Unable ...
2016-08-09 14:30:25
224
原创 Nginx返回数据丢失
A服务器 代理 B服务器的内容,但发现用户访问A服务器只能获取到部分内容。检查几个问题:1 直接访问B服务器,正常2 访问非PHP内容,正常3 关闭压缩也没有解决问题,与压缩无关试过 gzip和gunzip的功能,都没有解决,不过这两个跟缓存压缩数据有帮助哦后来查得两篇文章,解决了,是 fastcgi_temp 目录的读写权限问题。表现症状:Nginx的错误日志出现大量类似如下...
2016-08-09 09:42:55
2724
原创 (转)MySQL 锁问题最佳实践
转自:http://mysql.taobao.org/monthly/2016/03/10/前言最近一段时间处理了较多锁的问题,包括锁等待导致业务连接堆积或超时,死锁导致业务失败等,这类问题对业务可能会造成严重的影响,没有处理经验的用户往往无从下手。下面将从整个数据库设计,开发,运维阶段介绍如何避免锁问题的发生,提供一些最佳实践供RDS的用户参考。设计阶段在数据库设计阶段,引擎...
2016-08-08 10:12:05
150
原创 hash冲突的解决方法小结
hash对于我们coder来说并不陌生,在我们使用hashmap和hashtable也许会有其底层实现的疑问,此处以hashmap第底层实现为例子进行说明,同时提出hash冲突的解决办法。 上图就是一个散列表(Hash table,也叫哈希表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度...
2016-08-08 10:01:33
288
原创 错误:bash: fork: retry: Resource temporarily unavailable
在操作服务器CentOS的过程中,执行一些基础命令是频繁报错: [deploy@iZ942m5dzxvZ ~]$ ls-bash: fork: retry: Resource temporarily unavailable-bash: fork: retry: Resource temporarily unavailable 上面这段错误提示的本质是...
2016-08-04 15:01:15
335
原创 git管理之代码拉取与提交
初到公司,技术团队是使用git来对项目进行管理,不得不说,在还没把握其精髓的情况下,还是先将其作为一个工具,用起来再说!下面进入正题。 一、拉取GitHub上的远程代码拉取代码前,用一下两条命令查看当前项目的分支结构。 git branch //查看当前分支git brabch -a //查看所有分支,结果如下图 开始拉...
2016-08-03 17:59:46
2428
原创 数据库基础之存储结构
数据存储结构是指数据库中的物理数据和逻辑数据的表示形式、物理数据和逻辑数据之间关系映射方式的描述。在数据库技术中,可以使用两种形式描述客观现实的数据:物理数据描述和逻辑数据描述。物理数据和逻辑数据之间的转换通过数据库管理系统实现。 1. 物理数据描述 物理数据描述是指数据在存储设备上的存储方式,物理数据是实际存放在存储设备上的数据,这些数据也称为物理记录。...
2016-07-28 11:22:29
1229
原创 线程安全的单例模式(线程安全)示例
可以说单例模式是所有设计模式中最简单的一种。单例模式就是说系统中对于某类的只能有一个对象,不可能出来第二个。单例模式也是23中设计模式中在面试时少数几个会要求写代码的模式之一。主要考察的是多线程下面单例模式的线程安全性问题。1.多线程安全单例模式实例一(不使用同步锁)public class Singleton { private static Singleton s...
2015-10-06 16:01:28
332
原创 给定一个图G,要找出有多少个三角形包括了指定的点。
给定一个图G(V,E),V是点的集合有n个点,E是边的集合有m条边,现在问题是对图中任意一个点v,要找出有多少个三角形包括了这个点。 邻接矩阵辅助,进行图的深度优先遍历。取需import java.util.Scanner;public class Main { public static int q=0; // 目标节点 public static int n;...
2015-09-18 16:40:48
556
原创 冒泡排序的优化算法(Java)
对于基本有序的数据,使用优化后的冒泡排序是最佳选择,他在发现数据已经有序后将结束排序,代码如下:public static void BubbleSort_2(int []a){ int k=a.length; int temp; boolean flag=true; //结束循环的标志位 while(flag){ flag=...
2015-09-17 15:15:37
127
原创 按字节截取字符串
描述编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。但是要保证汉字不被截半个,如"我ABC"4,应该截为"我AB",输入"我ABC汉DEF"6,应该输出为"我ABC"而不是"我ABC+汉的半个"。 接口说明原型:public String cutString(String s, int length) 知识点...
2015-08-27 10:26:01
171
原创 优秀程序员的十个习惯
在这个世界上,有数百万的人热衷于软件开发,他们有很多名字,如:软件工程师(Software Engineer),程序员(Programmer),编码人(Coder),开发人(Developer)。经过一段时间后,这些人也许能够成为一个优秀的编码人员,他们会非常熟悉如何用计算机语言来完成自己的工作。但是,如果你要成为一个优秀的程序员,你还可以需要有几件事你需要注意,如果你能让下面十个条目成...
2015-08-23 16:14:12
133
原创 Struts1.x与Struts2.x对比
Action 类: • Struts1要求Action类继承一个抽象基类。Struts1的一个普遍问题是使用抽象类编程而不是接口,而struts2的Action是接口。 • Struts 2 Action类可以实现一个Action接口,也可实现其他接口,使可选和定制的服务成为可能。Struts2提供一个ActionSupport基类去 实现 常用的接口。Action接口不是必须的,任何有exe...
2015-08-16 19:48:36
135
原创 常见排序算法的分析与实现
本文仅实现了冒泡排序、选择排序,插入排序和快速排序,仅供参考学习。性能体验:冒泡—>选择—>插入—>快排。 冒泡排序: /** * 冒泡排序—最简单的排序 * 稳定性:稳定 * 时间复杂度:O(n^2) */ public void BubbleSort(int a[]) { // 用于交换两个数的值 i...
2015-06-18 17:23:11
152
原创 Java与C++内存回收机制的差别
大家知道, Java 除了那 8 种基本类型以外,其他都是对象类型(又称为引用类型)的数据。 JVM 会把程序创建的对象存放在堆空间中,那什么又是堆空间呢?其实,堆( Heap)是一个运行时的数据存储区,从它可以分配大小各异的空间。一般,运行时的数据存储区有堆( Heap)和堆栈( Stack),所以要先看它们里面可以分配哪些类型的对象实体,然后才知道如何均衡使用这两种存储区。一般来说,栈中存...
2015-06-17 10:40:18
382
原创 链表逆置
/* * 链表逆置 */public void LinkReverse() { LinkNode temp1, temp2, temp3; temp1 = head; temp2 = temp1.getNext(); temp3 = temp2.getNext(); temp1.setNext(null); temp2.setNext(temp1);...
2015-06-17 02:26:40
149
原创 内心的强大,在平凡中沉淀!
一个人内心的强大,在平凡中沉淀!转载:成长,没你想象的那么迫切我从来没有把年轻的程序员和别的一些年轻朋友做过任何区别,我们大多数人其实都是一样,每天面对着各种乱七八糟的事情,感情的,工作的,学习的等等。今天给大家推荐一个文章,或许能够让你在这个烦躁的社会气氛下获得片刻的宁静。 ------转载自雅虎----------- 20多岁,你迷茫又着急。你想要房子你想要汽车,你...
2015-06-16 01:04:09
280
原创 Stack栈之四则运算(取需)
package Lanwei_20150615Stack_Operate;import java.util.Stack;/** * 利用栈,进行四则运算的类 用两个栈来实现算符优先,一个栈用来保存需要计算的数据numStack,一个用来保存计算优先符priStack * * 基本算法实现思路为:用当前取得的运算符与priStack栈顶运算符比较优先级:若高于,则因为...
2015-06-15 23:16:54
414
原创 String 和 StringBuffer 的区别
String 和 StringBuffer 的区别JAVA 平台提供了两个类: String 和 StringBuffer,它们可以储存和操作字符串,即包含多个字符的字符数据。这个 String 类提供了数值不可改变的字符串。而这个 StringBuffer 类提供的字符串进行修改。当你知道字符数据要改变的时候你就可以使用 StringBuffer。典型地,你可以使用 StringBuffer...
2015-06-15 18:33:07
156
原创 Java Socket通信小结
一、在进行Socket通信介绍之前,我们需要先了解两个问题 1、我们如何准确的定位网络上一台或多台主机? 2、找到主机后如何进行可靠高效的数据传输? 在TCP/IP协议中IP层主要负责网络主机的定位,数据传输的路由,由IP地址可以唯一地确定Internet上的一台主机。而TCP层则提供面向应用的可靠(tcp)的或非可靠(UDP)的数据传输机制,这是网络编程的主要对象...
2015-06-14 22:46:31
146
原创 最通俗易懂的方式讲解HashMap
HashMap,困扰着很多Java初学者,恰恰又在面试时倍受面试官的青睐,本文结合实例和API文档剖析HashMap的工作原理,希望对面试总结或是初学者有一定的帮助。下面进入正题。 HashMap,基于哈希表的 Map 接口的实现。此实现提供所有可选的映射操作,并允许使用 null 值和 null 键。 HashMap的实例有两个参数影响其性能:初...
2015-06-12 02:38:54
921
原创 “==”和equals()
==操作符专门用来比较两个变量的值是否相等,也就是用于比较变量所对应的内存中所存储的数值是否相同, 要比较两个基本类型的数据或两个引用变量是否相等,只能用==操作符。 如果一个变量指向的数据是对象类型的,那么,这时候涉及了两块内存, 对象本身占用一块内存( 堆内存),变量也占用一块内存,例如 Objet obj = new Object();变量 obj 是一...
2015-06-10 19:53:14
136
原创 转:Swing中的各种消息提示框
最近在做swing程序中遇到使用消息提示框的,JOptionPane类其中封装了很多的方法。很方便的,于是就简单的整理了一下。1.1 showMessageDialog显示一个带有OK 按钮的模态对话框。下面是几个使用showMessageDialog 的例子: JOptionPane.showMessageDialog(null, "友情提示"); 效...
2015-06-10 18:35:28
2801
1
原创 聊聊匿名内部类
匿名内部类,即没有名字的内部类,智能使用一次,常常用于简化代码的的编写,使用时必须继承一个抽象的父类或实现一个接口。 实例1:不使用匿名内部类来实现抽象方法: abstract class Person { public abstract void eat();}class Child extends Person { public v...
2015-06-10 00:53:03
118
原创 重谈Java的中的参数传递
最近在复习Java的基础知识,看到自己以前的技术博客里谈到Java中关于参数传递的问题,分析得不够准确,决定再总结一番。 Java里方法的参数传递方式只有一种:值传递。值传递,就是将实际参数值的副本(复制品)传入方法内,而参数本身不会受到任何影响。 public class PrimitiveTransferTest { pu...
2015-06-08 17:02:35
126
1
原创 HDFS架构
在阅读了GFS的论文之后,对GFS的框架有了基本的了解,进一步学习自然是对HDFS的解析,不得不说,之前对GFS的一些了解,对理解HDFS还是很有帮助的,毕竟后者是建立在前者之上的分布式文件系统,二者在框架上可以找到很多的共同点,建议初次接触HFDS的技术人员可以先把GFS的那篇论文啃个两三遍,毕竟磨刀不砍柴工。 一下是本人根据网络上的资源进行整合,浅谈HFDS的...
2015-06-05 17:23:14
173
原创 递归替换:尾递归
来自HNUlanwei的优快云:http://blog.youkuaiyun.com/u010911350 递归在很多时候被视为洪水猛兽。它的名声狼籍,好像永远和低效联系在一起。 其实,对一些如树的递归结构,递归算法是又自然又好用。 如果看看一些用来代替递归的技术,(汉诺塔的迭代算法不去说它,那是真正的算法的革命,除了佩服没啥好说的),一般来说只不过是自己模拟堆栈,编起来费劲,读起来费劲,维护起...
2015-06-05 09:36:42
447
原创 GFS文件系统的架构分析
Google文件系统(Google File System,GFS)是构建在廉价的服务器之上的大型分布式系统。它认为组件失效(注:可理解为服务器故障)是常态事件,而不是意外事件,通过自身对可能失效组件的持续的监控、错误侦测、灾难冗余以及自动恢复的机制,保证系统的可靠性,也降低了系统的设计成本。 系统架构 一个GFS集群包含三个角色:一个单独的...
2015-06-04 22:30:05
2145
原创 常用于载入和显示图像的函数小结
常用于载入和显示图像的函数小结 图像载入和显示#i nclude "stdafx.h"#i nclude "cv.h" /*OpenCV的基本函数头文件/#i nclude "highgui.h" /* OpenCV的图像显示函数头文件*/void main(){IplImage* src="/cvLoadImage"("lena.jpg...
2014-04-05 23:13:02
366
原创 Java中static关键字小小总结
static关键字 1、建立静态方法 静态方法中使用的全局变量也必须是静态的,在调用静态方法时,无论这个类的对象被定义了多少个,其调用的方法总是同一个,所以静态方法一般存在于不需要创建对象的类中。2、修饰静态属性用static关键字定义的属性,其在整个程序中只有一份数据拷贝,即无论这个类的对象被定义了多少个,静态数据成员在程序中也只有这么一份拷贝,由该类型的所有...
2013-08-06 11:56:12
94
原创 我眼中的Java通信
通信学习小结 学习通信已有半个月的时间了,对于io,刚接触时只觉得这完全是一个全新的领域,无从下手,初期也只是通过分析胡哥,强哥例举的代码和教材上的代码示例寻找规律,其中的弯路可没少走。然而,通过这么一段时间的接触和不断的尝试,验证,也掌握了一些基本的知识,但又总感觉自己仿佛是在原地打转,没向前走不远,便又退回来对一些基础的东西进行新一轮的审视,提出一些或许一觉醒来就会觉得无比幼稚的问...
2013-08-04 01:25:40
230
原创 Java文件操作小结
Java文件操作小结 对于文件操作,个人认为并无太大的技术难点,主要还是多花时间去运用,相信熟能生巧哈,只要掌握其核心内容文件输入输出流,注意一些编写代码的常识即可。下面直接用代码展示对File文件类、FileInputStream文件输入流、FileOutputStream文件输出流的简单应用。 定义一个MyFile类,类中包含了:1、定义一个测试文件...
2013-07-23 22:34:49
131
原创 数据结构之链表与数组(二)—链表实现队列
数据结构之链表与数组(一)—链表实现队列 用数组实现了队列之后,我们一样可以通过链表来实现队列,下面是代码示例。 import java.util.LinkedList;/* * 先定义一个单向链表节点类,方便对链表的操作 */public class LinkNode { private Object obj;//节点内的数据...
2013-07-22 20:04:52
136
原创 数据结构之链表与数组(一)—数组实现队列
数据结构之链表与数组(一)—数组实现队列一、数组与链表简介 对于一组数据,在计算机的内存中的存储形式可以分为连续存储和离散存储两种,它们对应了我们通常所说的数组和链表。当内存空间中有足够大的连续空间时,可以把数据连续的存放在内存中,各种编程语言中的数组一般都是按这种方式存储的;当内存中只有一些离散的可用空间时,为了能把这些空间中存储的数据联系起来,需要在前一块数据的...
2013-07-22 13:24:29
170
原创 Java学习事件机制小结
Java学习事件机制小结 事件处理是界面处理的基本功能,一个事件处理流程可由三部分组成:事件源,事件监听器,以及事件处理类。 1.事件 比如说你点击一个按钮,关闭一个窗口,这种可以发生响应的操作就叫做事件。 2.事件源 动作发生的组件对象即为事件源,例如点击的按钮,那个关闭图标就是事件源,由它们来引导相应事件的发生,Java所有的图形界面组...
2013-07-16 12:44:54
126
原创 Java图形组件Swing小结
Java图形组件Swing小结 一、知识点小结 Swing是java中的图形组件,主要用来开发图形界面的。Swing组件有两类,一类是容器类,表示可以装载其他的组件;另一类是元素类表示不可以装载其他的组件。在javax.swing包下的容器组件有JFrame,JPanel和JMenuBar,其中窗体是最大的容器组件,即窗体上可以添加面板,但面板上不能添加窗体;同包下常用的...
2013-07-16 11:45:58
277
原创 Java中类的继承学习小结
Java中类的继承学习小结 一、Java中什么是继承? java是面向对象的编程语言,是类构成了java语言,而继承又是java 必不可少的,继承就是当你写一个类时,虽然这个类满足了某些功能但是你又想拓展它的功能,此时你就可以使用继承机制在写一个该类的子类,来完成你需要的功能; 二、继承的格式: public 子类名 extends 父类名(){} ...
2013-07-16 00:21:59
245
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人