利用jmap和heapAnalyzer对java进程进行内存使用率分析
有时候我们会遇到java程序使用内存过多的情况,这种情况一般是因为程序有内存泄漏,那么如何分析是否有内存泄漏呢?其实原因比较简单,先用jmap来生成一个进程的内存快照,然后利用heapAnalyzer或者Mod4J来对这个快照进行分析,找到内存使用最多的对象。其实有无内存泄漏的一个表现就是内存分布是否均匀,如果不均匀,一般来说可能是有问题的,这个时候就要具体分析了。
相关文档:
eval.jar 需要到https://eval.dev.java.net/
下载
--下面是示例使用,支持中文变量
Expression exp = new
Expression("(x + y)/2"
);
Map<String, BigDecimal> variables = new
HashMap<String, BigDecimal>();
variables.put("x", new
BigDecimal("4.32"
)); ......
php和java通用sql语句法
SELECT max(id) from table
该方法在多线程等情况下可能会造成不正确。
java三种方法
1、根据ps的getGeneratedKeys
PreparedStatement ps = conn.prepareStatement(sql,Statement.RETURN_GENERATED_KEYS); //红色是关键
ps.executeUpdate(); //执行后
ResultSet rs = ps.getGeneratedKeys ......
annotations : 注释
好处
1.文档编制
2.编译器检查
3.代码分析
JSR 175 是编程语言的元数据工具,为将元数据合并到核心java语言中提供正式理由和说明
基本知识:
注释采用"@"标记形式,后面是注释名称,然后在需要数据时,通过name=value对向注释提供数据
注释的三个基本种类:
标记注释 ......
单态定义:
Singleton模式主要作用是保证在Java应用程序中,一个类Class只有一个实例存在。
Singleton模式就为我们提供了这样实现的可能。使用Singleton的好处还在于可以节省内存,因为它限制了实例的个数,有利于Java垃圾回收(garbage c ......
在java.math包中有个BigDecimal类,通过这个类可以进行精确计算. 我们知道BigDecimal有个setScale(int 精度,int 舍入模式)方法,随之而来问题出现了,当运行如下代码时:
/**
* @author troy(J2EE)
* @version 1.0
*/
import java.math.*;
public class Test{
& ......