
java基础
幸福村1
java开发
展开
-
Java中的注解是如何工作的?
自Java5.0版本引入注解之后,它就成为了Java平台中非常重要的一部分。开发过程中,我们也时常在应用代码中会看到诸如@Override,@Deprecated这样的注解。这篇文章中,我将向大家讲述到底什么是注解,为什么要引入注解,注解是如何工作的,如何编写自定义的注解(通过例子),什么情况下可以使用注解以及最新注解和ADF(应用开发框架)。这会花点儿时间,所以为自己准备一杯咖啡,让我们来进入注转载 2015-09-30 10:42:09 · 222 阅读 · 0 评论 -
HashMap详细探究
http://cmsblogs.com/HashMap也是我们使用非常多的Collection,它是基于哈希表的 Map 接口的实现,以key-value的形式存在。在HashMap中,key-value总是会当做一个整体来处理,系统会根据hash算法来来计算key-value的存储位置,我们总是可以通过key快速地存、取value。下面就来分析HashMap的存取。一、定义转载 2016-11-15 16:49:22 · 480 阅读 · 0 评论 -
happens-before俗解
http://ifeve.com/easy-happens-before/学习Java并发,到后面总会接触到happens-before偏序关系。初接触玩意儿简直就是不知所云,下面是经过一段时间折腾后个人对此的一点浅薄理解,希望对初接触的人有帮助。如有不正确之处,欢迎指正。synchronized、大部分锁,众所周知的一个功能就是使多个线程互斥/串行的(共享锁允许多个线程同时访转载 2016-11-16 11:23:58 · 198 阅读 · 0 评论 -
NIO学习资料
http://weixiaolu.iteye.com/blog/1479656转载 2016-11-14 13:37:49 · 423 阅读 · 0 评论 -
什么时候使用接口?什么时候使用抽象?选择Java接口还是抽象类 (转)
老帖了,但是还是想自己收录一下。最后也把自己对于这个问题的一些粗糙的理解记录下来。 在一个面向对象的系统中,系统的各种功能是由许许多多的不同对象协作完成的。在这种情况下,各个对象内部是如何实现自己的对系统设计人员来讲就不那么重要了;而各个对象之间的协作关系则成为系统设计的关键。小到不同类之间的通信,大到各模块之间的交互,在系统设计之初都是要着重考虑的,这也是系统设计的主要工作内容。面向接口转载 2016-11-17 19:22:06 · 409 阅读 · 0 评论 -
深入剖析ConcurrentHashMap(1)
原创文章,转载请注明: 转载自并发编程网 – ifeve.com本文链接地址: 深入剖析ConcurrentHashMap(1)原文是09年时写的,在公司的邮件列表发过,同事一粟 和清英 创建的并发编程网 对这方面概念和实战有更好的文章,贴出来仅供参考。pdf格式在:http://www.slideshare.net/hongjiang/concurrent-hashmap转载 2016-11-22 20:39:20 · 384 阅读 · 0 评论 -
深入剖析ConcurrentHashMap(2)
原创文章,转载请注明: 转载自并发编程网 – ifeve.com本文链接地址: 深入剖析ConcurrentHashMap(2)经过之前的铺垫,现在可以进入正题了。我们关注的操作有:get,put,remove 这3个操作。对于哈希表,Java中采用链表的方式来解决hash冲突的。一个HashMap的数据结构看起来类似下图:实现了同步的HashTable转载 2016-11-22 20:48:36 · 212 阅读 · 0 评论 -
Java内存模型与多线程
转载自己修改其中错误转载 2016-10-26 21:30:28 · 317 阅读 · 0 评论 -
关于Spring加载classpath与classpath*的过程剖析
本篇文章是由朋友的一篇博客引出的,博客原文地址:http://jinnianshilongnian.iteye.com/blog/1416322 他这篇博客比较细的讲解了classpath与classpath*,以及通配符的使用,那些配置能成功加载到资源,那些配置加载不了资源。但是我相信仍然有很多同学不明白,为什么是这样的,知其然,不知其所以然,那么本篇文章将慢慢为你揭开神秘的面纱,转载 2017-10-13 11:22:29 · 8187 阅读 · 1 评论 -
Spring中报"Could not resolve placeholder"的解决方案
除去properites文件路径错误、拼写错误外,出现"Could not resolve placeholder"很有可能是使用了多个PropertyPlaceholderConfigurer或者多个的原因。 比如我有一个dao.xml读取dbConnect.properties,还有一个dfs.xml读取dfsManager.properties,然后web.xml统一lo转载 2017-12-05 11:00:49 · 4626 阅读 · 0 评论 -
HttpURLConnection与HttpClient浅析
1. GET请求与POST请求HTTP协议是现在Internet上使用得最多、最重要的协议了,越来越多的Java应用程序需要直接通过HTTP协议来访问网络资源。在介绍HttpURLConnection前,我们还是再来说一下URL请求最常用的两种方式:GET请求与POST请求。GET请求的数据会附在URL之后(就是把数据放置在HTTP协议头中),以?分割URL和传输数据,参数之间以&相连,如...转载 2018-06-20 09:22:00 · 296 阅读 · 0 评论 -
序列化和反序列化(转载美团网技术团队)
摘要 序列化和反序列化几乎是工程师们每天都要面对的事情,但是要精确掌握这两个概念并不容易:一方面,它们往往作为框架的一部分出现而湮没在框架之中;另一方面,它们会以其他更容易理解的概念出现,例如加密、持久化。然而,序列化和反序列化的选型却是系统设计或重构一个重要的环节,在分布式、大数据量系统设计里面更为显著。恰当的序列化协议不仅可以提高系统的通用性、强健性、安全性、优化系统性能,而且会让系转载 2016-10-27 10:51:15 · 575 阅读 · 0 评论 -
java多态的前置知识--对象转型
http://www.cnblogs.com/xdp-gacl/p/3647810.html一、对象转型介绍 对象转型分为两种:一种叫向上转型(父类对象的引用或者叫基类对象的引用指向子类对象,这就是向上转型),另一种叫向下转型。转型的意思是:如把float类型转成int类型,把double类型转成float类型,把long类型转成int类型,这些都叫转型。把一种形式转成另转载 2016-10-26 22:17:03 · 286 阅读 · 0 评论 -
Java基础之多态的详细解释
http://www.cnblogs.com/xdp-gacl/p/3644035.html一、面向对象最核心的机制——动态绑定,也叫多态 1.1.通过下面的例子理解动态绑定,即多态 1 package javastudy.summary; 2 3 class Animal { 4 /** 5 * 声明一个私有的成员变量nam转载 2016-10-26 22:13:09 · 5042 阅读 · 0 评论 -
java.io.File中的绝对路径和相对路径
File类是用来构造文件或文件夹的类,在其构造函数中要求传入一个String类型的参数,用于指示文件所在的路径.以前一直使用绝对路径作为参数,其实这里也可以使用相对路径.使用绝对路径不用说,很容易就能定位到文件,那么使用了相对路径jvm如何定位文件的呢?按照jdk Doc上的说法”绝对路径名是完整的路径名,不需要任何其他信息就可以定位自身表示的文件。相反,相对路径名必须使用来自其他路径名的转载 2015-10-30 10:48:26 · 396 阅读 · 0 评论 -
Java反射探索研究
版权声明:本文为博主林炳文Evankaka原创文章,转载请注明出处http://blog.youkuaiyun.com/evankaka 林炳文Evankaka原创作品。转载请注明出处http://blog.youkuaiyun.com/evankakay 摘要:本文详细深入讲解是Java中反射的机制,并介绍了如何通过反射来生成对象、调用函数、取得字段、设置转载 2015-11-23 17:21:59 · 416 阅读 · 0 评论 -
java调用linux中的shell脚本并返回执行结果
来自:http://blog.sina.com.cn/s/blog_8e5354210101ku2e.htmlprocess这个类是一个抽象类,封装了一个进程(你在调用linux的命令或者shell脚本就是为了执行一个在linux下执行的程序,所以应该使用process类)。 process类提供了执行从进程输入,执行输出到进程,等待进程完成,检查进程的推出状态,以及shut down掉进转载 2016-01-17 14:39:28 · 5625 阅读 · 0 评论 -
用弱引用堵住内存泄漏(附原版)
引用链接:http://www.ibm.com/developerworks/cn/java/j-jtp11225/虽然用 Java™ 语言编写的程序在理论上是不会出现“内存泄漏”的,但是有时对象在不再作为程序的逻辑状态的一部分之后仍然不被垃圾收集。要让垃圾收集(GC)回收程序不再使用的对象,对象的逻辑 生命周期(应用程序使用它的时间)和对该对象拥有的引用的实际 生命周期必须是转载 2015-12-19 12:19:04 · 1891 阅读 · 1 评论 -
Object类equals()和hashCode()方法与集合类的联系
1.equals()在Object类中的定义为:public boolean equals(Object obj){ return (this == obj);}当此方法被重写时,通常有必要重写 hashCode 方法,以维护 hashCode 方法的常规协定,该协定声明相等对象必须具有相等的哈希码。 hashCode方法:如果根据 equals(java.lang.Object) 方法转载 2016-01-09 15:22:08 · 456 阅读 · 0 评论 -
HMAC加密算法简要
mac(Message Authentication Code,消息认证码算法)是含有密钥散列函数算法,基于散列函数的消息认证码,它需要一个加密用散列函数(表示为H,可以是MD5或者SHA-1)和一个密钥K用以计算消息认证码,兼容了MD和SHA算法的特性,并在此基础上加上了密钥。因此MAC算法也经常被称作HMAC算法。关于hmac算法的详情可以参看RFC 2104(http://www.ietf.转载 2016-09-07 15:10:07 · 4326 阅读 · 0 评论 -
ReentrantLock和synchronized同步的概述
http://blog.sina.com.cn/s/blog_6145ed810102va40.html多线程和并发性并不是什么新内容,但是 Java 语言设计中的创新之一就是,它是第一个直接把跨平台线程模型和正规的内存模型集成到语言中的主流语言。核心类库包含一个 Thread 类,可以用它来构建、启动和操纵线程,Java 语言包括了跨线程传达并发性约束的构造 —— synchro转载 2016-10-12 10:15:35 · 228 阅读 · 0 评论 -
java中关键字volatile的作用
http://sakyone.iteye.com/blog/668091用在多线程,同步变量。 线程为了提高效率,将某成员变量(如A)拷贝了一份(如B),线程中对A的访问其实访问的是B。只在某些动作时才进行A和B的同步。因此存在A和B不一致的情况。volatile就是用来避免这种情况的。volatile告诉jvm, 它所修饰的变量不保留拷贝,直接访问主内存中的(也就是上面说的A)转载 2016-09-30 16:58:10 · 212 阅读 · 0 评论 -
简介 redis 持久化 RDB
http://redis.io/topics/persistencehttp://www.cnblogs.com/daoluanxiaozi/p/3625285.htmlredis支持四种持久化方式,一是 Snapshotting(快照)也是默认方式;二是Append-only file(缩写aof)的方式;三是虚拟内存方式;四是diskstore方式。redis 提供两种持久转载 2016-11-07 12:33:38 · 2482 阅读 · 0 评论 -
内部类详解
(转)内部类有两种情况:(1) 在类中定义一个类(私有内部类,静态内部类)(2) 在方法中定义一个类(局部内部类,匿名内部类) 1、私有内部类 —— 在方法之间定义的内部类,非静态 我们首先看看类中内部类的两个特点: (1) 在外部类的作用范围内可以任意创建内部类对象,即使内部类是私有的(私有内部类)。即内部类对包围它的外部类可见。转载 2016-10-26 21:24:28 · 213 阅读 · 0 评论 -
【学习笔记】maven下多个web项目使用maven-war-plugin需要注意的问题
http://blog.youkuaiyun.com/nthack5730/article/details/50179175文件重名和覆盖的问题 |---maven的war包编译打包以plugin声明的顺序为主 | |---先声明的先打包,后声明的如果有同级并且重名的文件,则以后声明的文件为准,覆盖先声明的文件 | |---注意:必须是同级同名才会被覆盖,否则打包不会被覆盖!...转载 2018-07-25 09:51:07 · 640 阅读 · 1 评论