`
chinrui
  • 浏览: 93895 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论
文章列表
洪泛路由模拟(Java实现)     本文主要是以洪泛路由的一个简单模拟,一切都源于一个朋友的请求,所以花了大概两个小时的时间完成了这么一个简单的实现。   不知道大家对洪泛算法有没有过一些了解,总之我在这之前是完全没有听说有这么一个算法存在。如果没有了解过的话,可以参考如下描述(源自百度百科的拷贝):   洪泛不要求维护网络的拓扑结构和相关的路由计算,仅要求接收到信息的节点以广播方式转发数据包。例如,源节点希望发送一段数据给目标节点。源节点首先通过网络将数据副本传送给它的每个邻居节点,每个邻居节点再将数据传送给各自的除发送数据来的节点之外的其他。如此继续下去,直到数据传送至目 ...

日志规范

         作为程序员,你们工作中最讨厌遇到什么事?可能是杂乱无章的代码,可能是高强度的工作。。。。而我最讨厌的就是找Bug。                    我们往往会遇到这样的一种情况:程序出问题了,但是问题出在哪儿,我们缺很难找到。对于一个经验丰富或者说对所开发系统非常熟悉的程序员来说,他们可以通过自己的经验来定位Bug。但是如果,你只是一个职场菜鸟,你对系统又不了解,你要如何去定位Bug???   这里,我就要说一下日志了。 第一、日志是什么?      平白点说就是程序的非结果性(运行流程记录,而非程序的执行结果)输出。   第二、日志的作用是什么? ...

Java工具之JPS

    博客分类:
  • JVM
JPS使用     熟悉Linux的朋友们都知道,Linux下有一个常用的命令叫做ps(Process Status),是用来查看Linux环境下进程信息的。同样的,在Java Virtual Machine里面也提供了类似的工具供广大Java开发人员使用,它就是jps(Java Process Status),它可以用来显示正在运行的虚拟机进程。   显示的信息主要包括两项,一个是虚拟机的执行子类,另一个是这些进程的本地虚拟机唯一ID
Linux 相关问题及解决方法     ### Linux环境下配置网络 1.使用命令 cd /etc/sysconfig/network-scripts/ 进入网络配置路径 2.修改 ifcfg-eth0 配置网卡的相关属性   DEVICE=eth0             # 硬件名   NM_CONTROLLED=yes   ONBOOT=yes             ...
SpringMVC与Mybatis集成开发环境搭建   1、导入相关JAR包   2、构建项目目录    3、配置文件 web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app id="WebApp_ID" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2 ...
使用Ant编译生成Hadoop的Eclipse插件   由于Hadoop的插件与Eclipse的版本具有一定的关联性,所以在后来的Hadoop的安装文件中就没有编译完成的插件可以使用,而是带有插件的源码(仅非可执行安装文件),需要我们手动的去编译生成与自己安装的Eclipse相对应的插件,下面我们来介绍如何编译产生自己的Eclipse插件。 1、准备   第一步:下载并安装Ant   第二步:下载Hadoop-1.0.1的安装文件并解压到相应位置,此处我放在桌面,下载链接:http://archive.apache.org/dist/hadoop/core/hadoop-1.0.1/ 2 ...
hadoop-1.0.1在Linux环境下的安装   1、下载hadoop-1.0.1并将其上传至Linux服务器 下载链接如下:http://archive.apache.org/dist/hadoop/core/hadoop-1.0.1/hadoop-1.0.1.tar.gz 此处设定上传目录为/var/ftp/pub,并使用命令tar -xzvf hadoop-1.0.1.tar.gz进行解压,将解压文件移动到home目录下   2、hadoop配置 进入解压目录的conf里面:   设定JDK的安装位置: 修改hadoop-env.sh,在其中加入如下语句: ex ...
初涉Android之ContentProvider     一、ContentProvider的作用,可以让其它应用访问本应用的数据 第一步:定义ContentProvider如下: import android.content.ContentProvider; import android.content.ContentUris; import android.content.ContentValues; import android.content.UriMatcher; import android.database.Cursor; import android.da ...
数据库数据列表显示     一、在Android开发中,使用的数据库一般是SQLite,至于有没有别的数据库,那我就不知道了,毕竟相对来说,我也只是一个初学者,对于SQLite的操作与其它数据库没有太大的区别,使用标准的SQL语句即 ...
使用Pull解析XML文件    一、大家都知道在XML文件中,主要是使用结点进行标识,其中主要分为两种结点,第一种是Element,也就是标签结点,第二种是Node,也就是文本结点。而使用Pull解析XML文件的时候,解析到一个结点,就会产生一个事件(Event),每个事件根据结点的类型也位置,产生不同的事件状态,我们要做的就是根据不同的事件状态进行不同的处理,即可完成对XML文件的解析工作。   解析时的事件状态主要分为以下几种: START_DOCUMENT:文档开始,我们在这个状态下,主要做初始化工作 END_DOCUMENT:文档结束,解析完成,终止解析 START_ ...
Android文件保存      一、Android的底层使用Linux内核,文件对文件所有者、与文件所有者同组的其它人、以及其它组的成员分别有可读、可写和可执行三种权限,具体可以参考《Linux私房菜》,当然,学习Android不需要了解这么多啊,在Android中,文件操作大致有四种操作模式,分别是MODE_PRIVATE、MODE_APPEND、MODE_WORLD_READABLE、MODE_WORLD_WRITEABLE等。   下面对于四种操作模式进行简单的介绍: MODE_PRIVATE(私有操作模式):创建出来的文件只有本应用能够访问,其它应用不能访问,另外用私有操 ...
动态代理 1、动态代理执行过程 代理对象执行一个方法的时候,会调用注入的InvocationHandler的invoke()方法,invoke()方法执行的过程中,会调用被代理对象与代理对象相同的方法,同时还会调用Advice的相关方法。 2、模拟Spring的事务 1)建议接口 import java.lang.reflect.Method; public interface Advice { void beforeMethod(); void afterMethod(Method method); } 2)具体建议类 import java.lang.reflect.M ...
自定义加密的类加载器 1、加载器初识 JVM有有三种类加载器: *BootStrap加载JRE\lib\rt.jar *ExtClassLoader加载JRE/lib/ext/*.jar *AppClassLoader加载classpath指定目录下的类 2、自定义加载器 1)被加载的类 public class ClassAttachment { public ClassAttachment() { System.out.println("Hello,World"); } } 2)加密class的加密器 import java.io.FileInp ...
自定义注解 1、最简单的自定义注解 package annotation; public @interface HpuAnnotation { // 注解相当于一个特殊的类型,与Enum 、 Interface类似 } 2、测试自定义的注解 package annotation; @HpuAnnotation public class AnnotationTest { public static void main(String[] args) { // 判断AnnotationTest 是否添加了HpuAnnotation注解 if(Annot ...
BeanUtils的简单使用 1、导入相应的Jar包 commons-beanutils-1.8.3.jarcommons-logging-1.1.2.jar 2、用于测试的Test类(JavaBean) package reflect; import java.util.Date; public class Test { private Integer x; // 此处必须要实例化,不然后面测试对象为空 private Date date = new Date(); public Date getDate() { return date; ...
Global site tag (gtag.js) - Google Analytics