传a奇
码龄14年
关注
提问 私信
  • 博客:271,290
    271,290
    总访问量
  • 49
    原创
  • 623,427
    排名
  • 59
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:北京市
  • 加入CSDN时间: 2011-05-06
博客简介:

传a奇—学习博客

博客描述:
我喜欢程序员,单纯、固执、容易体会到成就感;面对压力,能够挑灯夜战;面对困难,能够迎难而上挑战自我。他们也会感到困惑与傍徨,但每个程序员的心中都有一个比尔盖茨或是乔布斯的梦想“用智慧开创属自己的事业“
查看详细资料
个人成就
  • 获得113次点赞
  • 内容获得26次评论
  • 获得403次收藏
创作历程
  • 1篇
    2017年
  • 14篇
    2016年
  • 37篇
    2015年
成就勋章
TA的专栏
  • 算法
    11篇
  • JavaSe
    13篇
  • JVM
    5篇
  • IDE
    3篇
  • 并发
    4篇
  • 数据库
    1篇
  • struts
    1篇
  • Spring
    2篇
  • 设计模式
    3篇
  • 多线程
    8篇
  • 单元测试
    1篇
  • git
  • maven
    1篇
  • linux
    1篇
创作活动更多

如何做好一份技术文档?

无论你是技术大神还是初涉此领域的新手,都欢迎分享你的宝贵经验、独到见解与创新方法,为技术传播之路点亮明灯!

356人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

CentOS7修改网卡名

Linux 操作系统的网卡设备的传统命名方式是 eth0、eth1、eth2等,而 CentOS7 提供了不同的命名规则,默认是基于固件、拓扑、位置信息来分配。这样做的优点是命名全自动的、可预知的,缺点是比 eth0、wlan0 更难读,比如 ens33 。一、命名规则策略规则1:对于板载设备命名合并固件或 BIOS 提供的索引号,如果来自固件或 BIOS 的信息可读就命名,比如e
转载
发布博客 2017.10.15 ·
959 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

python帮助文档

发布资源 2016.07.05 ·
chm

maven安装

一、解压    解压maven-3.2.5到任一盘我的是在D盘二、配置环境变量M2_HOME—>D:\apache-maven-3.2.5path—>%M2_HOME%\bin;三、验证DOS下输入 maven -version 显示安装版本,表示安装成功
原创
发布博客 2016.05.09 ·
637 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

dbunit之org.dbunit.dataset.DataSetException: java.net.MalformedURLException解决方法

一、问题定位   在使用dbunit做DAO的单元测试时,抛出了一个org.dbunit.dataset.DataSetException: java.net.MalformedURLException异常,如下图,可以看到问题出现在我写的TestDbUnit的49行,再看源代码第49行是这一句 IDataset ds = new FlatXmlDataSet(file
原创
发布博客 2016.04.23 ·
4621 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

实现阻塞队列

阻塞队列是Concurrent包下的类,常用的包括ArrayBlockingQueue和LinkedBlockingQueue,阻塞队列中put()和take()两个方法的实现从源码中华可以看出是用消费者-生产者模式实现的,下面就是自己实现的简单的ArrayBlockingQueue废话诗少说,直接上代码:/** * 一个简单的阻塞队列 */ class MyBlock
原创
发布博客 2016.01.26 ·
968 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

实现自己的HashMap

参考源码,实现了一个简单的HashMap。。。。。。package test;import java.util.Map;import test.MyHashMap.Entry;public class MyHashMap { private Entry[] table;//Entry数组表 static final int DEFAULT_INITIAL_
原创
发布博客 2016.01.09 ·
641 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

CountDownLatch与CyclicBarrier

CountDownLatch      直译过来就是倒计数(CountDown)门闩(Latch)。倒计数不用说,门闩的意思顾名思义就是阻止前进。在这里就是指 CountDownLatch.await() 方法在倒计数为0之前会阻塞当前线程。当计数器count变为0时,所有线程不再等待,同时运行。          CountDownLatch的作用和 Thread.join()方
原创
发布博客 2016.01.06 ·
442 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

CAS自旋锁

昨天写了篇关于AtomicInteger的博客,感觉觉还是不太完整,所以又把自旋锁的知识整理了一下。。。。。。。。。什么是自旋锁       说道自旋锁就要从多线程下的锁机制说起,由于在多处理器系统环境中有些资源因为其有限性,有时需要互斥访问(mutual exclusion),这时会引入锁的机制,只有获取了锁的进程才能获取资源访问。即每次只能有且只有一个进程能获取锁,才能进入自己的临界区
原创
发布博客 2016.01.05 ·
4487 阅读 ·
1 点赞 ·
3 评论 ·
3 收藏

Workspace in use or cannot be created, choose a different one.错误的解决办法

Myeclipse 闪退后重启,有时有会提示错误 Workspace Unavailable:如下图原因:出现这种情况一般是workspace的配置文件中出现了.lock文件(workspace/.metadata/.lock),锁定了workspace。解决方法:     把.lock文件删除即可。     如果该文件不能删除,可能是因为javaw.exe
原创
发布博客 2016.01.05 ·
714 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java中的静态单多分派与动态单分派

什么是单分派,什么是多分派呢???   先看定义:根据一个宗量的类型进行方法的选择称为单分派                  根据多于一个宗量的类型对方法的选择称为多分派那么宗量又是个什么东东呢?????   再看定义:方法的接受者与方法的参数统称为方法的宗量。定义看着确实有点儿晕,还是直接上例子吧!!!!!!!!!package test;pub
原创
发布博客 2016.01.04 ·
3881 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

静态分派与动态分派

静态分派       先看定义:所有依赖静态类型来定位方法执行版本的分派动作成为静态分派。      静态分派典型的应用方法重载你能看出下面代码的输出什么吗????????????class Dog{}class WhiteDog extends Dog{}class BlackDog extends Dog{}public class Person { public
原创
发布博客 2016.01.04 ·
610 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

AtomicInteger

AtomicInteger 是一个支持原子操作的 Integer 类,就是保证对AtomicInteger类型变量的增加和减少操作是原子性的,不会出现多个线程下的数据不一致问题。通常情况下,在Java里面,++i或者--i不是线程安全的,这里面有三个独立的操作:或者变量当前值,为该值+1/-1,然后写回新的值。在没有额外资源可以利用的情况下,只能使用加锁才能保证读-改-写这三个操作时“原子性”的。
原创
发布博客 2016.01.04 ·
1732 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

一致性Hash算法

基本场景    工程师常使用服务器集群来设计和实现数据缓存,以下是常见的策略:     1、无论是添加、查询、还是删除数据,都先将数据id通过海西函数转换成一个哈希值,记为key。     2、如果目前机器有N台,则计算key%N的值,这个值就是该数据所属的机器编号,无论是添加、删除还是查询操作,都只在这台机器上进行。存在问题    上面场景中的缓存策略的潜在问题是如果增加或删
原创
发布博客 2016.01.03 ·
626 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

双亲委派模型

说道双亲委派模型,就要从类加载器说起。。。。。。。。。。。Java虚拟机类加载过程是把Class类文件加载到内存,并对Class文件中的数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的java类型的过程。在加载阶段,java虚拟机需要完成以下3件事:a.通过一个类的全限定名来获取定义此类的二进制字节流。b.将定义类的二进制字节流所代表的静态存储结构转换为方法区的运行时数据结构。c.在...
原创
发布博客 2016.01.02 ·
19072 阅读 ·
7 点赞 ·
16 评论 ·
21 收藏

Java语言中的线程状态转换

Java语言定义了五种线程状态,在任意时间点,一个线程只能有且只有其中一种状态。新建(New)    创建后尚未启动的线程处于这种状态。运行(Runable)    Runable包括操作系统线程状态中的Running和Ready,也就是出于此种状态的线程可能正在运行,也可能正在等待着CPU为它分配执行时间。无限期等待(Waiting)     处于该状态的线程不会被分配C
原创
发布博客 2016.01.02 ·
482 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

join()方法

join()方法是多线程编程中常用的方法,那么它的适用场合到底是怎样的呢?首先看一下官方解释。    很多情况下,主线程创建并启动子线程,如果子线程中要进行大量耗时运算,主线程往往将早于子线程结束之前结束。这时,如果主线程想等待子线程执行完成后在结束,比如子线程处理的数据,主线程要取得在这个数据中的值,就要使用join()方法了,方法join()的作用是等待县城对象销毁。    官方解
原创
发布博客 2016.01.02 ·
469 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

单例的DoubleCheck

说道DoubleCheck(双重检查锁),就要从懒汉单例模式说起。为了解决懒汉模式出现多例的情况,我们最容易想到的就是使用synchronized关键字。看下面代码:public class Myobject{ private static Myobject myobject; private Myobject(){} synchronized public st
原创
发布博客 2015.12.28 ·
655 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

volatile能实现多线程同步吗???NO

Java语言是支持多线程的,为了解决线程并发的问题,在语言内部引入了同步块 和 volatile 关键字机制。用volatile修饰的变量,线程在每次使用变量的时候,都会读取变量修改后的最的值。但是volatile并不能进行原子性操作。举个例子:package com.blog.fenye;public class Counts { public static int c
原创
发布博客 2015.12.28 ·
1037 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

clone方法的深复制和浅复制

clone()方法是Object类中的一个方法,clone是穿件对象的四大方法之一(另外三个 new ,反射,发序列化),通过调用该方法,可以新建一个对象。那什么是深复制什么是浅复制呢?还是举例子来说比较直观。首先是浅复制,反下面代码:public class Student implements Cloneable{ private String studentName;
原创
发布博客 2015.12.28 ·
645 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Myeclipse 闪退后无法打开Tomcat

Myeclipse发生闪退,之后在进入重启Tomcat发现报出以下错误:错误显示8005端口已经被占用,原因可能是上次闪退的时候没有关闭占用8005端口的进程。于是在dos中出入 netstat -ano 回车发现端口确实被占用。然后,打开资源管理器,删除javaw.exe 进程最后重启Tomcat,问题解决。
原创
发布博客 2015.12.28 ·
570 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多