自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(57)
  • 资源 (3)
  • 论坛 (1)
  • 收藏
  • 关注

原创 理解java动态代理

代理模式首先看代理模式,很简单,用代码呈现:三个类:接口 Subjectpublic interface Subject { public void doSomething();}实际类 RealSubjectpublic class RealSubject implements Subject{ @Override public void doSom

2016-01-06 10:40:01 461

原创 ThreadLocal

threadlocal是线程本地变量,用法:ThreadLocal stringLocal = new ThreadLocal();stringLocal.set("hello"); //设置值stringLocal.get(); //获取值stringLocal.remove(); //删除简单理解,每个threadlocal都有一个Map(这个map其实是当前线程的成员变

2016-01-06 10:51:45 424

原创 eclipse使用问题集锦

感觉以前好像听师兄说过有这么个地方,给忘记了。把自己遇到的,查到的总结一下吧。1、

2014-10-26 01:04:44 804

原创 单元测试简单入门总结

先说一下今天的简单总结:用JUnit跑单元测试,首先得有JUnit包,有工程需要的其他包。 而在eclipse中默认不会包含测试包,所以需要引入。其次,如果是maven工程,本地的包可能不全,要将依赖的包都下载。跑一下mvn eclipse:eclipse即可。1、引入JUnit包:工程右键——properties——java build path——Libraries——add

2014-10-26 00:57:21 1968

原创 java 包冲突解决方法

1、诊断包冲突java.lang.NoSuchMethodError: org.apache.commons.io.output.DeferredFileOutputStream.(ILjava/lang/String;Ljava/lang/String;Ljava/io/File;)V2、解决2.1 可见的依赖冲突1)在eclipse中打开工程,在pom文件的depe

2014-10-22 00:18:43 4985

原创 java基础:string与stringBuilder性能比较

字符串的操作经常用到,什么时候用String,什么时候用StringBuilder呢?比较一下常用操作的性能。通常的字符串操作无非是叠加和截断。先来看截断,即indexOf和subString的性能: String str = "name=shoren"; StringBuilder sb = new StringBuilder(str); long t1 = Syste

2013-10-16 16:33:28 1151

原创 笔试题中常见的文件操作

public static void calculateWords(String path) throws IOException{ BufferedReader rb = null; try { rb = new BufferedReader(new FileReader(new File(path))); HashMap words_num = new HashMap();

2013-10-16 10:43:13 811

原创 java工程的日志的配置和使用

先清楚俩概念:Logger.getLogger()是使用log4j的方式记录日志;LogFactory.getLog()则来自apache的common-logging包。common-logging的使用:1、将common-logging.jar包放在java工程的build path中,即可。2、示例程序:/** *直接在控制台打印 */public cla

2013-06-28 16:35:59 975

原创 队列管理算法及策略总结

看了好几天队列管理方面的论文,筛筛检检,整理出一篇比较全面的文章来,开心的说~关于概念:仿真试验采用Berkeley开发的网络仿真软件NS2进行。NS2集成了多种网络协议(如TCP、UDP),业务类型(如FTP、Telnet、Web等),路由队列调度算法(如Drop Tail、RED、FQ等),路由算法(如Dijkstra等)。可参看DropTail、RED、SFQ(Stochas

2013-05-23 20:20:34 7075 2

原创 java初始化与动态绑定

初始化顺序:1、静态成员初始化;     先是父类中的静态成员初始化(包括静态域值和静态语句块,按照声明顺序初始化),再是子类成员初始化。这里会一直追溯到最顶层的基类哈。    静态成员的初始化发生在类被加载时,这时不一定调用了构造器。当程序试图访问某一个类时,就会加载此类。2、非静态成员的初始化;3、调用构造函数。注意2和3的顺序为,父类的非静态成员的初始化---->父类

2013-04-09 15:31:52 898

转载 C语言的那些秘密之——函数返回局部变量

一般的来说,函数是可以返回局部变量的。 局部变量的作用域只在函数内部,在函数返回后,局部变量的内存已经释放了。因此,如果函数返回的是局部变量的值,不涉及地址,程序不会出错。但是如果返回的是局部变量的地址(指针)的话,程序运行后会出错。因为函数只是把指针复制后返回了,但是指针指向的内容已经被释放了,这样指针指向的内容就是不可预料的内容,调用就会出错。准确的来说,函数不能通过返回指向栈内存的指针(注意

2013-04-06 11:01:07 606

原创 C语言查遗补缺——关于自增运算符的有趣的例子

只是找了一些例子并运行,没有总结出个规律来,想不清楚内部机制,大家一起给总结一下吧~首先是跟宏定义结合,这是笔试题中可能遇到的题目,然后展开讨论,关于后自增在逻辑运算符和加法运算符中的区别,但是没有总结出规律,也不明白本质上怎么破。。欢迎大家留言给予指导~ #define BAND1(x) (((x) >= 5)&&((x) <= 10) ? (x) : 0) #def

2013-03-29 09:06:34 1138

原创 Ant编译、运行、打包JAVA工程,并生成api文档

先看看入门教程,了解怎么安装使用ant,以及build.xml文件中各组件的含义。下面是看资料改写的build.xml文档,并粘贴了别人的一个现成文档,两者在属性定义上略有不同。

2013-03-27 10:40:11 1189

原创 C语言查漏补缺——关键字篇

Register关键字Register 声明寄存器变量【尽可能将变量存在CPU内部寄存器,不是绝对哦】CPU读取数据:内存——寄存器——CPU虽然寄存器的速度非常快,但也有限制:register变量必须是能被CPU寄存器接受的类型,意味着register变量必须是一个单个的值,并且其长度应小于或等于整型的长度。而且register变量可能不存放在内存中,所以不能用取址运算符&来获取

2013-03-26 16:25:38 923

原创 java JTree小结

1、初始树的节点是否展开问题我们知道树的初始化代码如下: DefaultMutableTreeNode root = new DefaultMutableTreeNode(); JTree tree = new JTree(new DefaultTreeModel(root)); root.add(new DefaultMutableTreeNode("node1"));

2013-03-06 09:39:13 1318

转载 java swing控件及布局详解

本文章讲述了 java swing方面,控件,布局的基本用法:控件包括:1.JLabel2.JPanel3.JButton4.JToggleButton5.JCheckBox6.JRadioButton7.JList8.JComboBox9.JScrollPane10.JSlider11.JTextField1

2013-02-25 15:07:44 2940

转载 C++ 变量和函数的声明和定义

有一部分C++程序员对于多个源文件一起编译链接时,变量,函数或者类声明和实现到底如何定义模糊不清,现在分类澄清一下。  变量 (variable)       在C++中,变量声明(declaration)只有在使用extern关键字时才成立,其他情况下都是定义(definition),而在使用extern的同时给变量赋初始值,则声明变为定义,extern关键字也将被编译器

2013-02-05 17:18:02 658

原创 认识指针

指针的定义是一种保存变量地址的变量。这篇文章主要是清楚“指针保存变量地址”这个认知。首先认识两个符号:*是间接寻址或间接引用运算符。 &用来取一个对象的地址。常见指针用法如下: int *p; int x = 1; p = &x; printf("p = %x, &x = %x

2013-01-18 15:39:05 755

转载 socket阻塞与非阻塞,同步与异步的区别

1、概念理解      在进行网络编程时,我们常常见到同步(Sync)/异步(Async),阻塞(Block)/非阻塞(Unblock)四种调用方式:同步      所谓同步,就是在发出一个功能调用时,在没有得到结果之前,该调用就不返回。异步      异步的概念和同步相对。当一个异步过程调用发出后,调用者不能立刻得到结果。实际处理这个调用的部件在完成后,通过状态、通知

2013-01-04 15:20:06 780

原创 servlet学习之servlet入门案例

开发一个servlet,该servlet可以显示一个“hello world”,同时显示当前时间。步骤:1、在tomcat/webapps下建一个web应用shoren。目录如下:shoren/WEB-INF/web.xml;shoren/WEB-INF/classes;shoren/WEB-INF/lib。2、在classes下编写代码,代码如下:import javax

2013-01-03 15:13:45 1127

原创 servlet学习之tomcat介绍

菜鸟学习中~看韩顺平的视频,跟着做的笔记~1、  tomcat无法正常启动的原因分析     1)  JAVA_HOME配置错误,或者没有配置。            注意:JAVA_HOME路径后面没有分号,若加上,在启动的时候会找dir;这个地址,找不到。            若是不能更改操作系统的环境变量,可用以下方法配置JAVA_HOME。            To

2012-12-28 10:59:17 1436 1

转载 java多线程之BlockingQueue深入分析

一、概述:BlockingQueue作为线程容器,可以为线程同步提供有力的保障。二、BlockingQueue定义的常用方法1.BlockingQueue定义的常用方法如下: 抛出异常特殊值阻塞超时插入add(e)offer(e)put(e)offer(e, time, unit)移除r

2012-12-24 14:47:14 738

原创 tomcat无法正常启动的原因分析

1)  JAVA_HOME配置错误,或者没有配置。注意:JAVA_HOME路径后面没有分号,若加上,在启动的时候会找dir;这个地址,找不到。若是不能更改操作系统的环境变量,可用以下方法配置JAVA_HOME。Tomcat安装目录下,bin/startup.bat中,在25行(set"CURRENT_DIR=%cd%")前面加上set JAVA_HOME=dir,dir是java的安装

2012-12-24 11:20:13 807

转载 RIP路由协议及工作原理

RIP(Routing information Protocol,路由信息协议)是应用较早、使用较普遍的内部网关协议(Interior Gateway Protocol,IGP),适用于小型同类网络的一个自治系统(AS)内的路由信息的传递。RIP协议是基于距离矢量算法(Distance Vector Algorithms,DVA)的。它使用“跳数”,即metric来衡量到达目标地址的路由距离。

2012-12-03 14:06:50 855

原创 数组与ArrayList

这一段是废话……做这个总结,主要是今天才发现之前一直忽略的一个小问题。我们写算法的时候,总是用C语言写。习惯用JAVA,也习惯用封装类在逻辑层面写代码,具体的算法用的就很少了。于是,走了一圈,又回到基本的数据类型上写细节的部分。数组变量指向的是某一连续的内存空间的首地址。而ArrayList的底层是由数组实现的,与数组最主要的区别是,数组在声明的时候要指出其size,而ArrayL

2012-11-28 21:45:02 724

翻译 CCNx协议

源数据地址:http://www.ccnx.org/releases/latest/doc/technical/CCNxProtocol.html最近在学习,看得很慢,翻译一下,以兹鼓励,与君共勉~CCNx协议摘要本文档讲解CCNx协议——一种基于命名数据的通信体系结构(称为内容中心网络(CCN))的传输协议。CCN的底层没有主机的概念——将内容,而非位置作为其“地址”。C

2012-11-26 19:58:24 3869 1

原创 那些我以前不知道的事儿

学习中,遇到一些不懂得,整理一下。当然,多数都是ctrl+c和ctrl+v得来的。。。1、Wire Format 这个词组到底是什么意思?要是用Wikipedia来查,会被重定向到Communications protocol的词条上,作罢。其实不必wiki,这词本身就很形象:“wire format”直译为“在线上传输/交换(的数据)的格式”,也就是数据传输格式。 那么以“程序”

2012-11-22 17:11:34 624

原创 线程池newFixedThreadPool

 public staticExecutorService newFixedThreadPool(int nThreads)创建一个可重用固定线程数的线程池,以共享的无界队列方式来运行这些线程。在任意点,在大多数 nThreads 线程会处于处理任务的活动状态。如果在所有线程处于活动状态时提交附加任务,则在有可用线程之前,附加任务将在队列中等待。如果在关闭前的执行期间...

2012-11-05 15:48:41 237

路由表及路由选择算法

标准的路由表1、下一站选路的基本思想路由表仅指定从该路由器到目的地路径上的下一步,而不知道到达目的地的完整路径。2、标准的IP路由表包含许多(N,R)对序偶    N:目的网络的IP地址    R:到N路径上的下一个路由器的IP地址。 基本的下一站路由选择算法:RouteDatagram(Datagram, RoutingTable){    从Dat...

2012-11-02 21:40:21 494

Java网络编程 MulticastSocket类

应用程序只将数据报包发送给组播地址,路由器将确保包被发送到改组播组中的所有主机。 组播地址:称为组播组的一组主机所共享的地址。组播地址的范围在224.0.0.0--- 239.255.255.255之间(都为D类地址 1110开头)。  package test;import java.io.IOException;import java.net.DatagramPac...

2012-11-01 17:28:46 124

原创 sizeof && strlen, 数组 && 指针

贴代码吧,最明显了: #include #include int main() { char s[] = "hello"; char *p = s; printf("sizeof(s)=%d,sizeof(p)=%d\n",sizeof(s),sizeof(p)); //6,4 printf("strlen

2012-10-30 10:27:13 553

JAXB初步了解

JAXB 的全名是Java Architecture for XML Binding。JAXB的特点就是将你用DTD定义好的XML文档映射为Java对象,提供简单、快速的数据操作方式。要访问XML中的元素、属性只要通过相应对象上的一系列getter和 setter方法。你还可以通过marshal方法将对象的数据写进XML文件,通过unmarshal方法将XML文件的数据读入对象,通过validat...

2012-10-30 09:04:51 38

原创 快排

快速排序又称为分区交换排序,其基本思想是:首先选一个轴值(即比较的基准),将待排序记录分割成独立的两部分,左侧记录的关键码均小于或等于轴值,右侧记录的关键码均大于或等于轴值,然后分别对这两部分重复上述过程,直到整个序列有序。 int qsort(int v[], int left, int right) { int last, i; if(l

2012-10-29 20:20:20 545

端口号的作用及常见端口

 端口号的作用,主要是区分服务类别和在同一时间进行多个会话。举例来说,有主机A需要对外提供FTP和WWW两种服务,如果没有端口号存在的 话,这两种服务是无法区分的。实际上,当网络上某主机B需要访问A的FTP服务时,就要指定目的端口号为21;当需要访问A的WWW服务时,则需要将目的 端口号设为80,这时A根据B访问的端口号,就可以区分B的两种不同请求。这就是端口号区分服务类别的作用。...

2012-10-29 15:52:00 390

路由概念整理

路由动作包括两项基本内容:寻径和转发。寻径即判定到达目的地的最佳路径,由路由选择算法来实现。由于涉及到不同的路由选择协议和路由选择算法,要相对复杂一些。为了判定最佳路径,路由选择算法必须启动并维护包含路由信息的路由表,其中路由信息依赖于所用的路由选择算法而不尽相同。路由选择算法将收集到的不同信息填入路由表中,根据路由表可将目的网络与下一站(nexthop)的关系告诉路由器。路由器间互通信息进...

2012-10-23 10:02:27 49

原创 设置maven本地资源库及eclipse项目依赖库

配置maven本地的资源库:打开C:/maven/conf/settings.xml1. 改变D:/local_repo 改写上面的配置主要是改变本地的数据仓库目录(存放从远程下载的jar包),如果不改变也可以,如不改变,则下载的资源会放在: C:/Documents and Settings/用户名/.m2/repository(windows XP)或者C:/Users/用户名/.

2012-10-19 21:29:49 4756

原创 最近工作小结之eclipse

最近做插件二次开发,不知道从何处下手,纠结了很久后,才发现其实就是插件调试的问题。偶然间发现eclipse的这个功能,汗。。。看来,用eclipse做开发,很有必要尽量熟悉这个平台,最重要的是eclipse各种有用的插件,对开发很有帮助的。从头开始学习eclipse插件开发。没时间看书,先把遇到的问题总结一下:1、两个插件项目demo_a和demo_b,两个都能单独运行。现在b调用a,有两

2012-10-19 20:59:33 614

原创 java swing 小结

1、边框。边框对于页面整洁和观感度上都有很好的帮助哦,建议使用边框。2、控制布局。可以不使用控制布局。函数setLayout(null)可以小区页面控制布局,自己setBounds来安排各组件的位置。默认布局是FlowLayout。FlowLayout时,添加组件JField时,若是没有设置尺寸,添加结果是一个细窄的文本。用setPreferredSize函数设置文本大小,可正确添

2012-10-19 20:59:04 441

原创 IR

分析器:标准分析器StandardAnalyzer与其他分析器在使用上没有太大的区别,从功能上却是最实用和有效的分析器。除了基本的根据空格和符号来分隔原始文本信息,还可以完成数字、地址、email地址、IP地址以及中文字符的分析处理,还可以支持过滤词表,用来替代StopAnalyzer能够完成的过滤功能。简单分析器SimpleAnalyzer是一个具备基本西文字符词汇分析的分析器。以非字母

2012-10-19 20:58:00 523

原创 Javascript在页面加载时的执行顺序【转】

 一、在HTML中嵌入Javasript的方法直接在Javascript代码放在标记对&lt;script&gt;和&lt;/script&gt;之间由&lt;script /&gt;标记的src属性制定外部的js文件放在事件处理程序中,比如:&lt;p onclick="alert('我是由onclick事件执行的Javascript')"&gt;点击我&lt;/p&g...

2012-08-26 14:17:08 19

CCNx协议详解

自己翻译的CCNx协议,包括CCNx协议的简介、节点定义、信息格式和编码、内容鉴别、CCNx信息类型、基本交换、节点模型、兴趣包处理、内容信息的处理以及策略规则等。

2012-11-27

FirstStepsWithTheSCADesigner

SCA设计的入门级资料。从安装到实例详解,简单易懂。

2011-09-17

C语言深度剖析(针对一点重点讲解)

关键字、符号、预处理、指针和数组、内存管理、函数、文件结构等内容,对于易混淆或易理解错的知识点重点研究剖析。

2011-04-18

sizeof用于函数

发表于 2013-03-29 最后回复 2013-04-08

空空如也

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

TA关注的人 TA的粉丝

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