启动eclipse时界面一闪而过,用命令启动,可以看到报错:Jobs should be canceled by the plugin that scheduled them during shutdown: org.eclipse.epp.internal.mpc.ui.wizards.MarketplaceDropAdapter
阅读全文
eclipse导入git项目提示“no projects found"的解决方法
eclipse导入远程git项目,完成项目下载到创建项目页面提示“no projects found",原因是git项目里没有.classpath,.projetct等文件,导致eclipse不能识别
阅读全文
java的hashCode()和equals()
hashCode()和equals()定义在Object类中,这个类是所有java类的基类,所以所有的java类都继承这两个方法.hashCode()方法被用来获取给定对象的唯一整数.这个整数被用来确定对象被存储在HashTable类似的结构中的位置.默认的,Object类的hashCode()方法返回这个对象存储的内存地址的编号.使用hashCode(),使得在hash表中查找一个记录速度变O(1). 每个记录都有自己的hashcode,散列算法按照hashcode把记录放置在合适的位置. 在查找一个记录,首先先通过hashcode快速定位记录的位置,然后再通过equals来比较是否相等. 没有hashcode,一个一个比较过来,时间就变为O(N)了
阅读全文
What is Maven?
Maven, a Yiddish word meaning accumulator of knowledge, was originally started as an attempt to simplify the build processes in the Jakarta Turbine project. There were several projects each with their own Ant build files that were all slightly different and JARs were checked into CVS. We wanted a standard way to build the projects, a clear definition of what the project consisted of, an easy way to publish project information and a way to share JARs across several projects
阅读全文
选择Netty作为基础通信框架的优势
开发出高质量的Java原生NIO程序并不是一件简单的事情,作为一个NIO服务端,需要能够处理网络的闪断、客户端的重复接入、客户端的安全认证、消息的编解码、半包读写等情况,如果你没有足够的NIO编程经验积累,一个NIO框架的稳定往往需要半年甚至更长的时间。更为糟糕的是,一旦在生产环境中发生问题,往往会导致跨节点的服务调用中断,严重的可能会导致整个集群环境都不可用,需要重启服务器,这种非正常停机会带来巨大的损失
阅读全文
Java 应用部署方式发展
Java 应用部署于应用容器中,其实是受到 J2EE 的影响,也算是 Java Web 有别于其他 Web 快速开发语言的一大特色。通常我们在交付 Java Web 应用的时候,交付件是一个后缀为 war 的内部目录结构符合一定规则的 zip 压缩包,这个压缩包里(几乎)完整打包了 Web 页面(模板)、Web 站点描述、Java Web 的各个模块的 jar 以及依赖的第三方 jar。运维将这个 war 文件部署到应用容器中,站点就能被访问了
阅读全文
Jenkins的安装和配置
Jenins是现在非常流行的持续集成CI服务器,这与它的前身Hudson也有着很大的关系,Jenkins易于安装,不需要数据库的支持,直接通过Web界面进行配置,而且集成了RSS/Email的通知机制,支持分布式构建,具有丰富的插件,这些都是Jenkins相比其他持续集成服务器的优势所在
阅读全文
java 创建集合时最好设置一个预估初始容量
大神们在创建集合的时候,大多数都设置了一个预估的初始容量(2的幂数),而不是直接采用默认的初始容量( HashMap 中是16),这样做是有好处的
阅读全文
Java 8 – 行为参数化
根据书 << Java 8 in action >>第二章的一个例子整理。书中通过一个例子,讲述了如何利用behavior parameterization来应对不停变化的需求。想想之前自己写的工具类,真是大写的Low啊。。。。
阅读全文
LinkedBlockingQueue的取值和设值
LinkedBlockingQueue是一个阻塞队列,取值和设值都有三种不同的方法
阅读全文