关闭
当前搜索:

IntroductionInterceptor

對於之前介紹過的Before Advice、After Advice、Around Advice、Throw Advice,從使用者的角度來看,它們「影響了目標物件上某些方法的行為」,例如讓某些方法看來似乎增加了一些記錄的動作。 Introduction是個特別的Advice,從使用者的角度來看,它「影響了目標物件的行為定義,直接增加了目標物件的職責(具體來說就是增加了可 操...
阅读(536) 评论(0)

使用maven的profile和filter插件管理配置项

1.概述     按照项目开发的流程,项目工程需要经历开发人员本地测试环境(dev),进入测试阶段后有测试环境(test),测试无误后需要将程序发布到生产环境(production)下,而对于这三个不同的项目环境,应用程序要在该环境下运行,必须有不同的配置项,如开发和生产环境使用不同的数据库地址,不同的线程池参数,因此需要对不同的项目环境进行不同的配置,为了简化和规范这些参数配置,需要对其进...
阅读(564) 评论(0)

关于ScheduledExecutorService执行一段时间之后就不执行的问

最近写了个程序,程序中使用到了ScheduledExecutorService的scheduleAtFixedRate方法,用于定时执行任务,但是发现程序运行一段时间之后定时任务不执行了,查看日志和perfcounter都没有看到任何异常,比较郁闷。最后看了一下JDK的源码,在源码的Java doc中的发现了如下一句话: If any execution of the task enco...
阅读(2309) 评论(0)

ExecutorService对象的shutdown()和shutdownNow()的区别

可以关闭 ExecutorService,这将导致其拒绝新任务。提供两个方法来关闭 ExecutorService。shutdown() 方法在终止前允许执行以前提交的任务,而 shutdownNow() 方法阻止等待任务启动并试图停止当前正在执行的任务。在终止时,执行程序没有任务在执行,也没有任务在等待执行,并且无法提交新任务。应该关闭未使用的 ExecutorService 以允许回收其资源。...
阅读(7474) 评论(0)

Lombok 安装、入门 - 消除冗长的 java 代码

前言:     逛开源社区的时候无意发现的,用了一段时间,觉得还可以,特此推荐一下。     lombok 提供了简单的注解的形式来帮助我们简化消除一些必须有但显得很臃肿的 java 代码。特别是相对于 POJO,光说不做不是我的风格,先来看看吧。 lombok 的官方网址:http://projectlombok.org/   lombok 其实到这里我就介绍完了,开个玩笑,其实...
阅读(930) 评论(0)

使用Eclipse Memory Analyzer进行内存泄漏分析三部曲

一、准备工作  分析较大的dump文件(根据我自己的经验2G以上的dump文件就需要使用以下介绍的方法,不然mat会出现oom)需要调整虚拟机参数  找个64位的系统在MemoryAnalyzer.ini设置-Xmx2g  如果是32位的xp可以使用下面的方法进行尝试: 安装jrockit 6.0的JDK mat使用jrockit的jdk来启动 Java代码...
阅读(1233) 评论(0)

利用MemoryAnalyzer进行OutOfMemoryError的诊断分析

这篇帖子只介绍利用MemoryAnalyzer进行简单的JVM的堆的分析,至于JVM的内部结构是怎么样的,这里不进行分析。好吧,废话不多说;首先如果我们要分析JVM某个时刻的Heap的对象分配情况,我们就必须要dump这个时刻的JVM的heap(堆);有以下几个办法进行dump某个时刻JVM的heap内容:          1、 使用$JAVA_HOME/bin/jmap -dump来触发...
阅读(981) 评论(0)

MAT(Memory Analyzer Tool)工具入门介绍

1、MAT是什么?     MAT(Memory Analyzer Tool),一个基于Eclipse的内存分析工具,是一个快速、功能丰富的JAVA heap分析工具,它可以帮助我们查找内存泄漏和减少内存消耗。使用内存分析工具从众多的对象中进行分析,快速的计算出在内存中对象的占用大小,看看是谁阻止了垃圾收集器的回收工作,并可以通过报表直观的查看到可能造成这种结果的对象。...
阅读(347) 评论(0)

深入理解Java:内省(Introspector)

内省(Introspector) 是Java 语言对 JavaBean 类属性、事件的一种缺省处理方法。   JavaBean是一种特殊的类,主要用于传递数据信息,这种类中的方法主要用于访问私有的字段,且方法名符合某种命名规则。如果在两个模块之间传递信息,可以将信息封装进JavaBean中,这种对象称为“值对象”(Value Object),或“VO”。方法比较少。这些信息储存在类的私有变量...
阅读(602) 评论(0)

在web.xml中注册IntrospectorCleanupListener监听器以解决struts等框架可能产生的内存泄露问题

增加方式如下: [html] view plaincopy     listener>           listener-class>               org.springframework.web.util.IntrospectorCleanupListener           listener-class>       l...
阅读(476) 评论(0)

Java反射与内省(Introspector)

一、java反射机制     JAVA反射机制是在运行状态中,对于任意一个类,都能够得到这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。     用一句比较白的话来概括,反射就是让你可以通过名称来得到对象 ( 类,属性,方法 ) 的技术。例如我们可以通过类名来生成一个类的实例;知道了方法名,...
阅读(498) 评论(0)

[置顶] JAVA 垃圾收集器与内存分配策略

引言 垃圾收集技术并不是Java语言首创的,1960年诞生于MIT的Lisp是第一门真正使用内存动态分配和垃圾收集技术的语言。垃圾收集技术需要考虑的三个问题是: 哪些内存需要回收? 什么时候回收? 如何回收? http://segmentfault.com/a/1190000002931555 中讲到java内存运行时区域的分布,其中程序计数器,虚拟机栈,本地方法区都是随...
阅读(385) 评论(0)

Java垃圾回收机制2

说到垃圾回收(Garbage Collection,GC),很多人就会自然而然地把它和Java联系起来。在Java中,程序员不需要去关心内存动态分配和垃圾回收的问题,这一切都交给了JVM来处理。顾名思义,垃圾回收就是释放垃圾占用的空间,那么在Java中,什么样的对象会被认定为“垃圾”?那么当一些对象被确定为垃圾之后,采用什么样的策略来进行回收(释放空间)?在目前的商业虚拟机中,有哪些典型的垃圾收集...
阅读(326) 评论(0)

Java垃圾回收机制1

理解java垃圾回收机制有什么好处呢?作为一个软件工程师,满足自己的好奇心将是一个很好的理由,不过更重要的是,理解GC工作机制可以帮助你写出更好的Java应用程序。 这是我个人的主观观点,但我相信一个人精通了GC,往往会是一个更好的Java程序员。如果你对GC感兴趣,那就意味着你有一定大规模应用开发的经验。如果你已经仔细过考虑选择合适的GC算法,这意味着你完全理解你开发的应用程序的功能。当然...
阅读(323) 评论(0)

Freemarker中如何遍历List

Freemarker中如何遍历List(附源码) 关键词(Keyword):Freemarker,Freemarker遍历list 在Freemarker应用中经常会遍历List获取需要的数据,并对需要的数据进行排序加工后呈现给用户。那么在Freemarker中如何遍历List,并对List中数据进行适当的排序呢? 通过下文的介绍,相信您一定会找到答案。 一、  Freemarker中li...
阅读(1580) 评论(0)
54条 共4页1 2 3 4 下一页 尾页
    个人资料
    • 访问:8552751次
    • 积分:72222
    • 等级:
    • 排名:第24名
    • 原创:258篇
    • 转载:2779篇
    • 译文:3篇
    • 评论:751条
    文章分类
    最新评论