Java
文章平均质量分 72
前端琅琊阁
因为不是每天都会登录博客,各位博友如想联系我,请发送到我的私人邮箱xmjk@foxmail.com. 有什么着急的问题,如果我能解决的,可以加我微信sysoutman.
欢迎关注我的微信公众号或头条号-搜索 “前端琅琊阁“ 即可.当然也可通过CSDN自带的“向我提问”功能联系我
展开
-
浅析分布式缓存弹性扩容下的一致性哈希算法
序曲:本期不讲小程序,讲分布式哈!!!工作久了,容易在自己狭小的领域里停滞不前。为了跳出舒适圈,我时常观看一些互联网上的直播课程,以便持续更新自己的技术。当然了,这些课程都是采取了免费+付费的策略。初始都是免费给你看一个直播系列课程,如果你稍稍变得对讲师画的蓝图感兴趣,就要花费8000+以上学费以求短时间内练就神功。我发现这些讲师有一个共性,就是都喜欢用大保健来做比喻,以至于技师这个词出现的频...原创 2019-02-22 10:12:22 · 2180 阅读 · 1 评论 -
一个JAVA程序员经常访问的网站
一个JAVA程序员经常访问的网站原创 2015-04-03 14:03:24 · 6387 阅读 · 0 评论 -
JVM必备指南
本文由 ImportNew - xiafei 翻译自 anturis。欢迎加入翻译小组。转载请见文末要求。简介Java虚拟机(JVM)是Java应用的运行环境,从一般意义上来讲,JVM是通过规范来定义的一个虚拟的计算机,被设计用来解释执行从Java源码编译而来的字节码。更通俗地说,JVM是指对这个规范的具体实现。这种实现基于严格的指令集和全面的内存模型。另外,JVM也通常被形容转载 2015-03-18 17:31:19 · 516 阅读 · 0 评论 -
Java注释@interface的用法【转】
java用 @interface Annotation{ } 定义一个注解 @Annotation,一个注解是一个类。@Override,@Deprecated,@SuppressWarnings为常见的3个注解。注解相当于一种标记,在程序中加上了注解就等于为程序加上了某种标记,以后,JAVAC编译器,开发工具和其他程序可以用反射来了解你的类以及各种元素上有无任何标记,看你有什么标记转载 2015-03-18 15:51:44 · 484 阅读 · 0 评论 -
生产者/消费者问题的多种Java实现方式
生产者/消费者问题的多种Java实现方式 实质上,很多后台服务程序并发控制的基本原理都可以归纳为生产者/消费者模式,而这是恰恰是在本科操作系统课堂上老师反复讲解,而我们却视而不见不以为然的。在博文《一种面向作业流(工作流)的轻量级可复用的异步流水开发框架的设计与实现》中将介绍一种生产者/消费者模式的具体应用。生产者消费者问题是研究多线程程序时绕不开的经典问题之一,它描述是有一块缓冲区作转载 2015-01-04 11:23:21 · 628 阅读 · 0 评论 -
java IO 装饰模式
我将按照基类的顺序:InputStream、OutPutStream、Reader、Writer来分别对Java I/O加以总结。。。。。。整理中java中的流,简单理解就是管道里有流水,这个管道连接了程序和文件。InputStream、OutPutStream是字节输入流的所有类的超类。Reader、Writer是字符输入流的所有类的超类。Java I转载 2014-12-15 15:11:38 · 738 阅读 · 0 评论 -
设计模式-builder(构造器模式)
设计模式-builder(构造器模式)Bilder模式定义: 将一个复杂对象的构建和表示分离,是同样的创建构建过程可以创造不同的表示。 Builder模式是一步一步创建一个复杂的对象,它允许用户可以只通过指定复杂对象的类型和内容就可以构建它们。用用不知道内部的具体构建细节。Builder模式是非常类似抽象工厂模转载 2015-01-19 15:46:14 · 684 阅读 · 0 评论 -
总结5种比较高效常用的排序算法
原文地址:http://my.oschina.net/mkh/blog/341172总结5种比较高效常用的排序算法及代码实现,包括选择排序、插入排序、归并排序、希尔排序、快速排序等。 总结5种比较高效常用的排序算法Java自学之道 闵开慧 1 概述 本文对比较常用且比较高效的排序算法进行了总结和解析,并贴出了比较精简的实现代码,包括选择排序、插入排序、转载 2014-12-30 15:09:56 · 824 阅读 · 0 评论 -
设计模式-责任链模式
在阎宏博士的《JAVA与模式》一书中开头是这样描述责任链(Chain of Responsibility)模式的: 责任链模式是一种对象的行为模式。在责任链模式里,很多对象由每一个对象对其下家的引用而连接起来形成一条链。请求在这个链上传递,直到链上的某一个对象决定处理此请求。发出这个请求的客户端并不知道链上的哪一个对象最终处理这个请求,这使得系统可以在不影响客户端的情况下动态地重新组织和分配转载 2015-01-19 16:49:32 · 624 阅读 · 0 评论 -
UML类图符号 各种关系说明以及举例
UML中描述对象和类之间相互关系的方式包括:依赖(Dependency),关联(Association),聚合(Aggregation),组合(Composition),泛化(Generalization),实现(Realization)等。依赖(Dependency):元素A的变化会影响元素B,但反之不成立,那么B和A的关系是依赖关系,B依赖A;类属关系和实现关系在语义上讲也是依赖关系,转载 2015-02-02 10:25:35 · 627 阅读 · 0 评论 -
深入理解java 虚拟机类文件结构
参考文章列表: http://blog.csdn.net/luanlouis/article/category/2620885转载 2014-12-08 14:08:28 · 691 阅读 · 0 评论 -
深入理解JVM内幕:从基本结构到Java 7新特性
本文作者: ImportNew - 朱伟杰 未经许可,禁止转载!每个Java开发者都知道Java字节码是执行在JRE((Java Runtime Environment Java运行时环境)上的。JRE中最重要的部分是Java虚拟机(JVM),JVM负责分析和执行Java字节码。Java开发人员并不需要去关心JVM是如何运行的。在没有深入理解JVM的情况下,许多开发者已经开发出了非常多的优转载 2014-12-22 14:59:28 · 752 阅读 · 0 评论 -
JVM java虚拟机内存模型
一:Java技术体系模块图二:JVM内存区域模型1.方法区也称"永久代” 、“非堆”, 它用于存储虚拟机加载的类信息、常量、静态变量、是各个线程共享的内存区域。默认最小值为16MB,最大值为64MB,可以通过-XX:PermSize 和 -XX:MaxPermSize 参数限制方法区的大小。运行时常量池:是方法区的一部分,Cla转载 2014-12-19 17:11:18 · 964 阅读 · 0 评论 -
设计模式-状态模式State-电梯状态
1.概述在软件开发过程中,应用程序可能会根据不同的情况作出不同的处理。最直接的解决方案是将这些所有可能发生的情况全都考虑到。然后使用if... ellse语句来做状态判断来进行不同情况的处理。但是对复杂状态的判断就显得“力不从心了”。随着增加新的状态或者修改一个状体(if else(或switch case)语句的增多或者修改)可能会引起很大的修改,而程序的可读性,扩展性也会变得很弱。转载 2015-04-07 17:08:25 · 7429 阅读 · 0 评论 -
Java 核心类库中的一些设计模式
Java 核心类库中的一些设计模式翻译 2015-04-22 15:35:45 · 2240 阅读 · 0 评论 -
spring4 spring4 mvc视频学习资源
最近几天,想重新回顾和加强下spring技术,在网上搜到以下资源:百度云盘:spring4链接: https://pan.baidu.com/s/1skGT3RZ 密码: 9nxnspring4 mvc链接: https://pan.baidu.com/s/1bpLFXfh密码: njeh这个直接下载多直接!!!! 搜索不容易啊,各个论坛,各种币,各种注册,...原创 2015-05-28 14:56:01 · 2670 阅读 · 7 评论 -
Jasperreport 与Springmvc结合生成PDF web页面笔记(含解决中文问题)
为了大家少走弯路,也为了自己以后拿来看,故写此文来帮你我跳过各种坑!1、工具:首先说下我用的开发工具是TIBCO Jaspersoft Studio-6.1.1.final(构建Jrxml源文件,jasper生成工具),ireport的进化版,在官网可以下载得到。2、Jar包: 2.1我用的maven打包的,故贴出dependencies和所需repository ...原创 2016-04-12 15:09:28 · 10430 阅读 · 6 评论 -
SpringMVC与iReport(JasperReports) 5.6整合开发实例
前言在本教程中,我们将学习如何在一个简单的Spring MVC Web应用中集成Jasper报表工具。教程涵盖的技术点有:报表自定义数据源的使用;报表渲染、呈现的配置与实现;iReport报表设计器的使用(报表模板设计)等。开发环境准备以下两种方式任选其一:1. 在已有的SpringMVC项目环境中进行配置(要求项目可正常运行、调试);2. 在eclip转载 2015-10-23 17:02:52 · 2309 阅读 · 0 评论 -
使用jasperreport生成报表
原文地址:http://log-cd.iteye.com/blog/3795311.ReportUtils.java通用类 Java代码 /** * 使用jasperReport做报表时的工具支持类.有两个用途,生成jasperPrint对象,和设置导出时的session */ public class ReportUtils {转载 2015-10-23 15:53:01 · 3833 阅读 · 0 评论 -
Java 7 Fork/Join 并行计算框架概览
应用程序并行计算遇到的问题 当硬件处理能力不能按摩尔定律垂直发展的时候,选择了水平发展。多核处理器已广泛应用,未来处理器的核心数将进一步发布,甚至达到上百上千的数量。而现在很多的应用程序在运行在多核心的处理器上并不能得到很好的性能提升,因为应用程序的并发处理能力不强,不能够合理有效地的利用计算资源。线性的计算只能利用n分之一的计算支援。 要提高应用程序在多核处理器上的执转载 2015-11-06 15:42:59 · 833 阅读 · 0 评论 -
Fork and Join: Java也可以轻松地编写并发程序
原文地址 作者:Julien Ponge 译者:iDestiny资源下载:Java SE 7Sample Code(Zip)如今,多核处理器在服务器,台式机及笔记本电脑上已经很普遍了,同时也被应用在更小的设备上,比如智能手机和平板电脑。这就开启了并发编程新的潜力,因为多个线程可以在多个内核上并发执行。在应用中要实现最大性能的一个重要技术手段是将密集的任务分隔成多转载 2015-11-06 15:41:15 · 1034 阅读 · 0 评论 -
使用 Jersey 和 Apache Tomcat 构建 RESTful Web 服务
Representational state transfer(REST)在 2000 年由 Roy Fielding 在博士论文中提出。但是,在 Java™ 社区中,直到 2008 年 JSR 311(JAX-RS) 规范定稿后才将其标准化。第一个版本的参考实现甚至更晚。在本文中,我将介绍 Jersey —— JSR 311 的参考实现,描述其必要的 API 和注释。我还将展示如何通过在 Apa转载 2015-07-24 16:18:46 · 1030 阅读 · 0 评论 -
深入浅出java并发编程concurrency
原文地址:http://www.blogjava.net/xylz/archive/2010/07/08/325587.html这是一份完整的Java 并发整理笔记,记录了我最近几年学习Java并发的一些心得和体会。 J.U.C 整体认识原子操作 part 1 从AtomicInteger开始原子操作 part 2 数组、引用的原子操作原子操作 part 3 指令重排序转载 2015-07-23 14:40:50 · 1040 阅读 · 0 评论 -
Java中的设计模式,书籍推荐
本文由 ImportNew - 刘 家财 翻译自 stackoverflow。欢迎加入Java小组。转载请参见文章末尾的要求。提问:我正在学习GoF的《设计模式》,想了解些它们在实际中的应用的例子。大家能给我举一些使用设计模式的好例子吗?尤其是在Java类库中。赞同最高的回答:你可以通过Wikipedia对设计模式有个整体上的理解。Wikipedia上也提高了GoF所涉及到的模转载 2014-07-31 09:43:56 · 6846 阅读 · 0 评论 -
在Java中利用Jackson解析JSON数据
Jackson 框架,轻易转换JSONJackson可以轻松的将Java对象转换成json对象和xml文档,同样也可以将json、xml转换成Java对象。前面有介绍过json-lib这个框架,在线博文:http://www.cnblogs.com/hoojo/archive/2011/04/21/2023805.html相比json-lib框架,Jackson所依赖的jar包较少转载 2015-04-13 13:40:20 · 1653 阅读 · 0 评论 -
在java中如何创建一个内存泄露
在java中如何创建一个内存泄露翻译 2015-04-22 17:47:31 · 1183 阅读 · 0 评论 -
java 中 HashMap 与HashTable之间的区别
java 中HashMap 与HashTable之间的区别? 非线程应用中哪个更有效率?翻译 2015-04-22 16:45:16 · 1384 阅读 · 0 评论 -
获取新浪微博滚动加载内容
前段时间写了一些关于抓取新浪微博的经历,现在就贴一些我遇到过一些问题的代码实现思路吧:(我使用的是 htmlunit 爬虫)每个人的博客主页中都有微博内容块,每次点击查看微博内容的时候你会发现,微博内容不是一次加载的;这个问题不管是新浪还是腾讯,它们的内容加载方式都是一样的。废话不多说,直接将代码实现:1. 请求微博内容url,获取请求返回的数据,由于返回的微博内容时嵌转载 2014-12-05 09:27:57 · 1431 阅读 · 0 评论 -
爬虫代理ip设置
爬虫的过程中可能会涉及到ip代理的问题。网上有很多可用的ip代理信息:http://pachong.org/下面就是从中选择一个最合适的ip。实现思路:1. 获取该页面内容,提取每一行ip信息。2. 新建一个java Bean 封装每一个ip属性。3.将所有的javaBean添加到一个arraylist中。4.对整个arraylist排序。代码如下:/*转载 2014-12-05 09:33:26 · 2862 阅读 · 0 评论 -
java网络爬虫,使用apache httpClient
使用apache httpClient 通过get,post方式爬取网页,简易类操作。原创 2014-12-03 13:46:07 · 1952 阅读 · 0 评论 -
《深入理解Java虚拟机》学习小记一之自动内存管理机制(一)
Java内存区域与内存溢出异常一、概要二、运行时数据区域2.1程序计数器2.2虚拟机栈2.3本地方法栈2.4堆2.5方法区2.6运行时常量池三、对象访问四、OutOfMemoryError异常4.1Java堆溢出4.2虚拟机栈溢出4.3 方法区溢出4.4 运行时常量池溢出五、小结Java内存区域与内存溢出异常 一、概要 我们可以带着以下几个问题去学习自动内存管理机制,罗列如下:转载 2014-11-24 14:24:26 · 928 阅读 · 0 评论 -
通过分析 JDK 源代码研究 Hash 存储机制
HashMap 和 HashSet 是 Java Collection Framework 的两个重要成员,其中 HashMap 是 Map 接口的常用实现类,HashSet 是 Set 接口的常用实现类。虽然 HashMap 和 HashSet 实现的接口规范不同,但它们底层的 Hash 存储机制完全一样,甚至 HashSet 本身就采用 HashMap 来实现的。1评论:转载 2014-11-24 16:59:56 · 583 阅读 · 0 评论 -
《深入理解Java虚拟机》学习小记一之自动内存管理机制(三)
概要对象优先分配在Eden分配大对象直接进入老年代长期存活的对象进入老年代动态对象年龄判定概要在Java技术体系中,自动内存管理最终可以归结为自动化地解决了两个问题:给对象分配内存以及回收分配给对象的内存。本文主要探讨给对象分配内存这点事。对象的内存分配,往大的方向上讲,就是在堆上分配。但是也有一些情况会在栈上分配和在TLAB上分配等。所以分配的规则并不是百转载 2014-11-24 14:42:23 · 786 阅读 · 0 评论 -
《深入理解Java虚拟机》学习小记一之自动内存管理机制(二)
1.概要2.判断对象是否存活的算法2.1引用计数算法2.2根搜索算法3.GC算法3.1标记-清除(Mark-Sweep)算法3.2复制(Copying)算法3.3标记-整理(Mark-Compact)算法3.4分代收集算法3.5几种算法的优缺点4.垃圾收集器5.垃圾收集器的参数总结 6.关于GC的几点补充1.概要在《深入理解Java虚拟机》学习小记一之自动内存管理机制(一)中,我们转载 2014-11-24 14:37:03 · 806 阅读 · 0 评论 -
探秘Java虚拟机——内存管理与垃圾回收
本文主要是基于Sun JDK 1.6 Garbage Collector(作者:毕玄)的整理与总结,原文请读者在网上搜索。1、Java虚拟机运行时的数据区2、常用的内存区域调节参数-Xms:初始堆大小,默认为物理内存的1/64(-Xmx:最大堆大小,默认(MaxHeapFreeRatio参数可以调整)空余堆内存大于70%时,JVM会减少堆直到 -Xms的最小限制-Xmn:新转载 2014-11-24 10:17:13 · 597 阅读 · 0 评论 -
Java 7 Fork/Join 框架
在 Java7引入的诸多新特性中,Fork/Join 框架无疑是重要的一项。JSR 166旨在标准化一个实质上可扩展的框架,以将并行计算的通用工具类组织成一个类似java.util中Collection一样的包。其目标是使之对开 发人员易用且易维护,同时该框架也旨在并行计算地高质量实现。目前已经有多个新的类和接口被添加到该框架中了。该新特性主要是解决Java社区中对于如synchroniz转载 2014-11-25 17:31:18 · 650 阅读 · 0 评论 -
JVM必备指南
本文由 ImportNew - xiafei 翻译自 anturis。欢迎加入翻译小组。转载请参见文章末尾的要求。简介Java虚拟机(JVM)是Java应用的运行环境,从一般意义上来讲,JVM是通过规范来定义的一个虚拟的计算机,被设计用来解释执行从Java源码编译而来的字节码。更通俗地说,JVM是指对这个规范的具体实现。这种实现基于严格的指令集和全面的内存模型。另外,JVM也通常被转载 2014-11-25 10:47:42 · 492 阅读 · 0 评论 -
Java实现简单的网络爬虫
摘要 一直以来都希望自己做一个站内的搜索引擎,其实不一定是一个搜索引擎,关键是能分析网站数据的东西,java有很多开源的爬虫实现,但是开始还是从一个简单的里面了解其原理吧。 总共有6个类,先介绍下每个类的功能: DownloadPage.java的功能是下载此超链接的 一直以来都希望自己做一个站内的搜索引擎,其实不一定是一个搜索引擎,关键是能分析网站数据的东西,java有很多开源的爬虫实转载 2014-11-18 10:36:33 · 1187 阅读 · 0 评论 -
在Java中如何使用transient
分享到:2本文由 ImportNew - xbing 翻译自 javaworld。欢迎加入Java小组。转载请参见文章末尾的要求。Java语言的transient不像class、synchronized和其他熟悉的关键字那样众所周知,因而它会出现在一些面试题中。这篇文章我将为大家讲解transient。transient的用途Q:transient关键字能实现什么?转载 2014-08-11 13:47:45 · 625 阅读 · 0 评论 -
Java常见面试问题:抽象类与接口的区别
很多常见的Java面试题都会出诸如抽象类和接口有什么区别,什么情况下会使用抽象类和什么情况你会使用接口这样的问题。本文我们将仔细讨论这些话题。在讨论它们之间的不同点之前,我们先看看抽象类、接口各自的特性。抽象类抽象类是用来捕捉子类的通用特性的 。它不能被实例化,只能被用作子类的超类。抽象类是被用来创建继承层级里子类的模板。以JDK中的GenericServlet为例:publi转载 2014-08-11 14:24:30 · 1411 阅读 · 0 评论