labty
码龄17年
关注
提问 私信
  • 博客:81,862
    社区:1,513
    83,375
    总访问量
  • 102
    原创
  • 1,168,499
    排名
  • 4
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:江苏省
  • 加入CSDN时间: 2007-12-24
博客简介:

labty的博客

查看详细资料
个人成就
  • 获得21次点赞
  • 内容获得1次评论
  • 获得42次收藏
创作历程
  • 4篇
    2018年
  • 8篇
    2017年
  • 37篇
    2012年
  • 53篇
    2011年
TA的专栏
  • 开源软件
    1篇
  • 并发
    14篇
  • 业务知识
    1篇
  • JVM
    9篇
  • Windows
    1篇
  • JS
    12篇
  • 应用服务器
    4篇
  • JAVA基础
    17篇
  • Oracle
    5篇
  • Hibernate
    1篇
  • NIO
    4篇
  • 数据库
  • 数据结构与算法
    1篇
  • Struts2
    1篇
  • EXT
  • DIV+CSS
    2篇
  • 安全
    3篇
  • Android
    9篇
  • Socket
    5篇
  • 设计模式
    4篇
  • LDAP
  • WEB
    1篇
  • 开源框架
    2篇
  • Mybatis
    1篇
创作活动更多

如何做好一份技术文档?

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

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

深入学习EnumSet

Set接口的实现类HashSet/TreeSet,它们内部都是用对应的HashMap/TreeMap实现的,但EnumSet的实现与EnumMap没有任何关系,而是用极为精简和高效的位向量实现的,除了实现机制,EnumSet的用法也有一些不同。与TreeSet/HashSet不同,EnumSet是一个抽象类,不能直接通过new新建,EnumSet提供了若干静态工厂方法创建EnumS...
原创
发布博客 2018.03.25 ·
214 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Mybatis源码分析别名实现机制。

在Mybatis中我们经常会用到将某个bean作为参数类型parameterType或者结果返回值类型ResultType,所以很多时候我们需要把完成的Bean的包名在mapper文件中[code="java"] select * from user where c_id=#{id} [/code]Mybatis给我们提供了一种叫别名的机制,意思就是对某个具...
原创
发布博客 2018.03.03 ·
245 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

枚举中valueOf用法

Enum的特征如下:1.它不能有public的构造函数,这样做可以保证客户代码没有办法新建一个enum的实例。 2.所有枚举值都是public , static , final的。注意这一点只是针对于枚举值,我们可以和在普通类里面定义 变量一样定义其它任何类型的非枚举变量,这些变量可以用任何你想用的修饰符。   3.Enum默认实现了java.lan...
原创
发布博客 2018.01.14 ·
54102 阅读 ·
10 点赞 ·
0 评论 ·
25 收藏

mybatis源码学习总结-class.getResource方法与claasloader.getResource方法的区别

Class.getResources(String path) path如果是以 / 开头,就从classpath中去找(classpath可以认为是eclipse的bin目录或者是target的classes目录),如果不以/开头,就以当前类的位置开始找,也就是它有两种搜索方式。.classloader不能以/为开头,classloader.getResource只能从class...
原创
发布博客 2018.01.14 ·
325 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

mybatis源码学习总结-class.getResource方法与claasloader.getResource方法的区别

Class.getResources(String path) path如果是以 / 开头,就从classpath中去找(classpath可以认为是eclipse的bin目录或者是target的classes目录),如果不以/开头,就以当前类的位置开始找,也就是它有两种搜索方式。.classloader不能以/为开头,classloader.getResource只能从class...
原创
发布博客 2018.01.14 ·
325 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

建造者模式

一种场景:客户需要设计一个汽车模型,基本的功能有启动、停止、按喇叭、引擎这些功能,执行的顺序由客户自己控制。时间紧迫的情况下,我们设计出这种模型:[code="java"]public abstract class CarModel { private ArrayList sequence = new ArrayList(); protected abstract...
原创
发布博客 2017.05.14 ·
130 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

使用自定义注解搭建简单框架

本文主要介绍如何使用Java运行时级别的注解配合反射来搭建框架,以下是构建sql表的简单例子,阐明了搭建运行时框架的方法1.定义两个运行时注解,分别作用于类和字段表示表名和列名[code="java"]@Retention(RetentionPolicy.RUNTIME)public @interface Table { String name();}@Re...
原创
发布博客 2017.05.01 ·
176 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

java注解处理器

[b]注解处理器:[/b]Java SE5扩展了反射机制的API,以帮助程序员快速的构造自定义注解处理器。注解处理器类库(java.lang.reflect.AnnotatedElement):Java使用Annotation接口来代表程序元素前面的注解,该接口是所有Annotation类型的父接口。除此之外,Java在java.lang.reflect 包下新增了Annotate...
原创
发布博客 2017.04.30 ·
131 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

java注解处理器

[b]注解处理器:[/b]Java SE5扩展了反射机制的API,以帮助程序员快速的构造自定义注解处理器。注解处理器类库(java.lang.reflect.AnnotatedElement):Java使用Annotation接口来代表程序元素前面的注解,该接口是所有Annotation类型的父接口。除此之外,Java在java.lang.reflect 包下新增了Annotate...
原创
发布博客 2017.04.30 ·
131 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

理解注解中的@Inherited

@Inherited: @Inherited 元注解是一个标记注解,@Inherited阐述了某个被标注的类型是被继承的。如果一个使用了@Inherited修饰的annotation类型被用于一个class,则这个annotation将被用于该class的子类。注意:@Inherited annotation类型是被标注过的class的子类所继承。类并不从它所实现的接口...
原创
发布博客 2017.04.30 ·
595 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

JAVA注解总结

元注解:  元注解的作用就是负责注解其他注解。Java5.0定义了4个标准的meta-annotation类型,它们被用来提供对其它 annotation类型作说明。 Java5.0定义的元注解:[code="java"]    1.@Target,    2.@Retention,    3.@Documented,    4.@Inherited[/code]...
原创
发布博客 2017.04.30 ·
185 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

apache-fileupload文件上传

临时文件的清理:[code="java"]FileCleaningTracker fileCleaningTracker = FileCleanerCleanup.getFileCleaningTracker(servletcontext);DiskFileItemFactory factory = new DiskFileItemFactory(); factory.se...
原创
发布博客 2017.02.25 ·
153 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

java泛型理解2

泛型类型注意细节:1.泛型类型变量不能是基本数据类型比如,没有ArrayList,只有ArrayList。因为当类型擦除后,ArrayList的原始类型变为Object,但是Object类型不能存储double值,只能引用Double的值。2.泛型类型没有特定的classArrayList arrayList=new ArrayList(); 因为类型擦除之后,A...
原创
发布博客 2017.01.07 ·
111 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

JAVA泛型理解

泛型类型的擦除: [code="java"] ArrayList arrayList1=new ArrayList(); ArrayList arrayList2=new ArrayList(); System.out.println(arrayList1.getClass()==arrayList2.getClass());//结果为...
原创
发布博客 2017.01.07 ·
117 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

NIO响应中断

不同于IO,NIO通道会自动地相应中断,代码如下:public class NIOBlocked implements Runnable{ private final SocketChannel sc; public NIOBlocked(SocketChannel sc) { this.sc=sc; } @Override public void run(...
原创
发布博客 2012.11.30 ·
177 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

桥接模式

现实中场景:发送提示消息从业务上看,消息又分成普通消息、加急消息和特急消息多种,不同的消息类型,业务功能处理是不一样的: 加急消息是在消息上添加加急,而特急消息除了添加特急外,还会做一条催促的记录,多久不完成会继续催促。从发送消息的手段上看,又有系统内短消息、手机短消息、邮件等等。考虑简单情况: 消息先只是实现发送普通消息,先实现系统内短消息和邮件。...
原创
发布博客 2012.11.30 ·
138 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

单例模式

单例模式分为两种:懒汉式和饿汉式,先看下懒汉式的实现:[code="java"]public class Singleton { /** * 定义一个变量来存储创建好的类实例 */ private static Singleton uniqueInstance = null; /** * 私有化构造...
原创
发布博客 2012.11.29 ·
103 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

逻辑运算与移位运算

[code="java"]源码:正数的补码与原码相同例+7 源码:00000111 补码 :00000111 (用8位二进制表示一个数)[/code][code="java"]负数的补码: 符号位为1,其余位为该数绝对值的原码按位取反;然后整个数加1。[/code] -7 源码: 10000111 ,其绝对值为00000111 取反加一:11111001 为-7补码...
原创
发布博客 2012.11.27 ·
750 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

线程中断

线程的中断"interrupt"线程的"中断"不是让线程停止java中线程的中断(interrupt)只是改变了线程的中断状态,这个中断状态改变后带来的结果,是无法确定的,有时它更是让停止中的线程继续执行的唯一手段.不但不是让线程停止运行,反而是继续执行线程的手段.一个线程在调用interrupt()后,自己不会抛出InterruptedException异常,如果线程...
原创
发布博客 2012.11.15 ·
128 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

数字证书和数字签名的理解

数字签名的理解:[code="java"]1.张三有两把钥匙,一把是公钥,另一把是私钥。2.张三把公钥送给他的朋友们----李四、王五、赵六----每人一把。3.李四给张三写信,写完后用张三的公钥加密,达到保密的效果。4.张三收信后,用私钥解密,看到信件内容。5.张三给李四回信,写完后用Hash函数,生成信件的摘要(digest)。6.张三使用私钥,对这个摘要加密,生成"数...
原创
发布博客 2012.11.15 ·
367 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏
加载更多