随笔分类 - 开源框架
摘要:这几天新项目每次发布,都发现load在jetty重启过程中突然load会从0.1突然升高到15以上,3分钟后慢慢降到正常非常,cpu使用率也升高了一些,但是jvm内存线程,gc都比较正常,所以怀疑应用已启动,执行了一些耗CPU的处理过程,查看了代码之后,应用已启动,执行最多的方法是dowork,而这个方法里面会有解析xml的过程: public OfferInfo parseXml(String content) throws NumberFormatException, XMLStreamException { if (content == null || conten...
阅读全文
摘要:接之前的博客http://zhwj184.iteye.com/admin/blogs/1630756关于asm使用的示例,这次使用asm来动态统计每个方法的执行时间,实现AOP功能。AOP的更通用的做法是对原始类动态生成子类,调用子类的方法覆盖父类,来实现AOP的功能。著名的 Hibernate 和 Spring 框架,就是使用这种技术实现了 AOP 的“无损注入”。下面我们就通过一个示例来对方法Foo.execute调用时动态注入方法执行前后的时间统计来统计方法的执行时间import java.io.FileOutputStream;
import java.io.IOException;
阅读全文
摘要:asm 4.0 版本http://forge.ow2.org/plugins/scmsvn/index.php?group_id=23asm是java的字节码操作框架,可以动态查看类的信息,动态修改,删除,增加类的方法。下面基于4.0版本的一个使用示例,演示了对类Foo进行修改方法名称,增加方法,修改方法内容等import java.io.FileOutputStream;
import java.io.IOException;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method
阅读全文
摘要:今天使用velocity在java后台渲染一个map<Long,String>对象到vm模板上,通过get(111)获取不到map的对象的值分析。这是velocity1.6.4的处理,以后版本是不是解决了这个问题可以再查,个人认为在vm文件支持跟java一样加个L表示long之类的处理应该不难。具体代码如下:后台java生成设置代码Map<Long,String> map = new HashMap<Long,String>(); map.put(101L,"aaa"); map.put(102L,"bbb"); co
阅读全文
摘要:接上面java actor模型框架ujavaactorhttp://zhwj184.iteye.com/admin/blogs/1613351,上面的示例比较复杂,写一个简单点的示例:import java.util.HashMap;
import java.util.Map; import com.ibm.actor.AbstractActor;
import com.ibm.actor.Actor;
import com.ibm.actor.DefaultActorManager;
import com.ibm.actor.DefaultMessage;
import com.ibm.a.
阅读全文
摘要:web caching1.介绍Ehcache Web 是EhCache缓存框架的一个组件,主要用于Java开发Web项目中的一些缓存功能。包括一个单页缓存过滤器:SimplePageCachingFilter;页面压缩(gzip)支持;页面片段缓存等功能。在某些情况下能够很好的提高web应用的性能。2.simplePageCachingFilter 能够缓存httpresponse的html,json,xml等输出的完整页面或者页面片段的缓存,也支持gzipping的页面缓存。页面片段缓存可以参考SimplePageFragmentCachingFilter类。3.keys缓存的key值 缓存
阅读全文
摘要:1.pom依赖 <dependency> <groupId>org.tmatesoft.svnkit</groupId> <artifactId>svnkit</artifactId> <version>1.3.5</version> </dependency>2.java调用代码import org.tmatesoft.svn.core.SVNDepth;
import org.tmatesoft.svn.core.SVNException;
import org.tmatesoft.svn.co
阅读全文
摘要:使用了spring-data-redis对于redis的orm框架的学习,整理了一下的使用文档1.在pom.xml添加一下依赖: <dependencies> <dependency> <groupId>org.springframework.data</groupId> <artifactId>spring-data-redis</artifactId> <version>1.0.0.RC1</version> </dependency> </dependencies> &
阅读全文
摘要:NDC(Nested Diagnostic Context)和MDC(Mapped Diagnostic Context)是log4j种非常有用的两个类,它们用于存储应用程序的上下文信息(context infomation),从而便于在log中使用这些上下文信息。NDC的实现是用hashtable来存储每个线程的stack信息,这个stack是每个线程可以设置当前线程的request的相关信息,然后当前线程在处理过程中只要在log4j配置打印出%x的信息,那么当前线程的整个stack信息就会在log4j打印日志的时候也会都打印出来,这样可以很好的跟踪当前request的用户行为功能。MDC的
阅读全文
摘要:velocity本身支持自定义标签和指令的扩展,在 Velocity 模板语言的语法中,以美元符 $ 开头的为变量的声明或者引用,而以井号 # 开头的语句则为 Velocity 的指令(Directive)。velocity支持的指令有:#set,#foreach,#if #else #end,#parse,#include,#evaluate,#define,#macro,在velocity的jar包中的directive.properties中定义了这些实现:directive.1=org.apache.velocity.runtime.directive.Foreach
directiv
阅读全文
摘要:需要引入 <dependency> <groupId>org.apache.lucene</groupId> <artifactId>lucene-core</artifactId> <version>3.6.0</version> </dependency> <dependency> <groupId>org.apache.lucene</groupId> <artifactId>lucene-highlighter</artifactId&g
阅读全文

浙公网安备 33010602011771号