2009年3月30日星期一

Hibernate持久化一个pojo类的一般原则

1.实现一个默认的即无参数的构造器
2.提供一个标识属性
3.使用非final的类
4.为持久化字段声明访问器和是否可变的标志

2009年3月26日星期四

用Ibator生成的SalMap与spring集成时的问题

第一、我很傻不知道spring2.5与ibatis2.3集成时,不知道要加ibatis的jar包进去,导致一个异常半小时才觉悟解决好。
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sqlMapClient' defined in file [E:\WorkSpace\ibator\dataAccessContext.xml]: Instantiation of bean failed; nested exception is java.lang.NoClassDefFoundError: com/ibatis/common/xml/NodeletException

我还debug了呢,以为发现了spring的bug,汗。。。。。

第二、用ibator生成的sqlmap,假设在namespace为account的情况下,下面所有的sql , select,insert,etc 的id 都会加上 account.****。 Junit4测试的时候报异常:

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sqlMapClient' defined in file [E:\WorkSpace\ibator\dataAccessContext.xml]:
Invocation of init method failed; nested exception is org.springframework.core.NestedIOException:
Failed to parse config resource: file [E:\WorkSpace\ibator\sql-map-config.xml];
nested exception is com.ibatis.common.xml.NodeletException: Error parsing XML.
Cause: java.lang.RuntimeException: Error parsing XPath '/sqlMapConfig/sqlMap'.
Cause: com.ibatis.common.xml.NodeletException: Error parsing XML.
Cause: java.lang.RuntimeException: Error parsing XPath '/sqlMap/select'.
Cause: java.lang.RuntimeException: Could not find SQL statement to include with refid 'account.ibatorgenerated_Example_Where_Clause'

本以为Ibator是完全可以信赖的,看上去也没什么不对,AccountDaoImpl里面的也对应的很好,是不是ibatis里面那个地方可以设置呢?
在这里我就把namespace,account. 全部删掉,修改AccountDaoImpl。测试后全绿的!

JavaScript - Working with Database

After reading this coding, you will know the following facts.

1. How to connect the database in JavaScript
2. How to use the ADODB.Recordset in JavaScript

As I already put the details comments in coding, I hope you will find it useful.

You can download the sourcecode and MSAccess database from this link.

http://michaelsync.net/demo/JavaScriptDatabaseSrc.zip

引用:
http://michaelsync.net/2006/06/14/javascript-working-with-database

javeScript操作数据库代码片段

use the javascript to operate database (sql or access)

there are the code snippet:
var rsTopTen
var strInner
var strCntInner
var ConnectionString
rsTopTen = new ActiveXObject("ADODB.Recordset");

// Build the connection string
//
// ConnectionString Format below:
//ConnectionString = "DRIVER=SQL Server;SERVER=MySQLServer;CATALOG=MyDatabase;UID=USERID;PWD=Password";
//
// for SQL 7.0:
//ConnectionString = "DRIVER=SQL Server;SERVER=TopTen;CATALOG=TopTen;UID=TopTen;PWD=TopTen";
//
// for Access Database (on Server):
//ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=\\\\demwwwdev01\\develop\\im\\security\\TopTen.mdb";
//
// for Access Database (on local drive):
ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=C:\\TopTen\\TopTen.mdb";

// Build a SQL statement
strSQL = "SELECT TopTenName, TopTenCount FROM TopTen ORDER BY TopTenCount DESC";

// Open the recordset
rsTopTen.Open(strSQL, ConnectionString, 3,1,1);

// Loop through the Recordset
while(!rsTopTen.EOF)
{
//写出.......
}


引用:
http://metababy.blogspot.com/2009/03/use-javascript-to-operate-database-sql.html

2009年3月25日星期三

使用Ibator自动生成sqlmap配置文件、dto类、dao类

一些资源:
1.帮助文档
http://ibatis.apache.org/docs/tools/ibator/

2.找不到jdbc的异常处理
http://www.eclipse-plugins.info/eclipse/plugin_comments.jsp;jsessionid=6FDA6B5047854C57C42A0252F2D36A3E?id=1253

3.示例

http://ibatis.apache.org/docs/tools/ibator/configreference/xmlconfig.html

4.一点和Abator的小历史

Ibator was originally named "Abator", but the name was changed as the result of a federal trade registration dispute.

2009年3月24日星期二

研究ibatis的jgamestore

正在进行中,自己也打算将以前做的asp.net 的网站用java做一次。因为熟悉业务,我想会很快的。。。 以后慢慢会尝试不同的技术,希望能在不同技术框架不同数据库能方便切换。。。

2009年3月23日星期一

ibatis的dao framework

dao.xml

The element ---> SqlMapConfig.xml

The element

The element
  EXTERNAL
  HIBERNATE
  JDBC
  JTA
  OJB
  SQLMAP(the most common choice)
  TOPLINK

The DAO elements (interface and implementation.)

ibatis的cache model

Cache model tag attributes

id
type (MEMORY[WEAK,SOFT,STRONG],FIFO,LRU,OSCACHE)
readOnly
serialize

Cache flushing

flushOnExecute
flushInterval(hours,minutes,seconds,milliseconds)

ibatis动态Sql

dynamic 

Binary dynamic tags
isEqual
isNotEqual
isGreaterThan
isGreaterEqual
isLessThan
isLessEqual

Binary tag attributes
property
prepend
open
close
removeFirstPrepend
compareProperty
compareValue

Unary tag attributes
property
prepend
open
close
removeFirstPrepend

Unary tags
isPropertyAvailable
isNotPropertyAvailable
isNull
isNotNull
isEmpty
isNotEmpty

Parameter tags
prepend
open
close
removeFirstPrepend

Parameter tags
isParameterPresent
isNotParameterPresent

The tag attributes
property
prepend
open
close
conjunction
removeFirstPrepend

开启ibatis的Lazy loading

在SqlMapConfig.xml设置节点的lazyLoadingEnabled为true, 如果你想使用cglib做lazyloading的话,需要把cglib的包放在classpath下,并且设置节点的enhancementEnabled属性为true。

2009年3月22日星期日

ibatis学习

ibatis学习了几个小时,感觉入手比较快,不用写关闭打开等代码。编写代码的人可以比较集中精力的关注sql的逻辑。比起jdbc确实显得开发高效多了,程序员似乎变傻了喔~
ibatis是懒人用的~ 呵呵。。。
jdbc是勤快的人想完全控制sql的人用的。。。

至于什么时候用,action的书里写的很清楚的。 当然跟项目的具体技术架构和需求也有很大的关系,毕竟是架构师和项目经理的事情。 俺学习学习,算过了。。

晚上继续看ibatis in actioan。 E文的看的好慢。。。 orz!

2009年3月20日星期五

Reading ibatis in action!

Reading ibatis in action! Reading ibatis in action! Reading ibatis in action!

2009年3月19日星期四

学习SpringMVC一步一步

昨天还有今天对着文档整好了SpringMVC的例子!
我的感觉是用她提供的框架开发是比较方便的。首先是一个jsp,利用里面的标签,发送一个请求过来,然后交给Controller,Controller负责接收请求,调用后面的服务,并返回一个ModelAndView。这些服务初始化工作交给spring,需要在applicationContext.xml等。还有一些配置文件如××-servlert.xml,jdbc.properties等。
最赞的是,build.xml几乎是自动的编译,部署,测试,建库。。。我很欣赏这点。前两天也捣鼓了下maven2,感觉不太适合现在的情况。
又是一天过去了。。。

明天计划好好Spring其他方面的整合,慢慢理解spring!

2009年3月17日星期二

没题目~

今天终于浏览玩spring-reference,下午在wtp中部署jpetstore,死活跑不起来。。。

后来下了一本Eclipse Web Tool Platform:.... 的电子书,对着书上做很快跑起来来了一个简单的Servlet。以前很是讨厌web.xml那些配置文件,不过现在看来有wtp的帮助,配置都可以自动生成,还是挺方便!

看着看到了 Apache Derby ,也是第一次接触。。。 打开 http://db.apache.org/derby/ 里面瞧了瞧,开始学学。。


每天都在想做点什么,或者写点什么。。。

每天都在思考是广泛学习,还是深入研究。。。

现在还是浑浑噩噩,何时是个头?

我是一只小小鸟,好像飞不出企业的手心~ 或许他需要点勇气。。。

2009年3月16日星期一

IIS6配置Gzip

再网上找到IIS6配置Gzip的文章,照做。重启后发现:the process cannot access the file because it is being used by another process.
netstat -an, 发现是迅雷5占用了80端口,kill thunder5.exe
重启IIS6, OK!

2009年3月15日星期日

还是Adobe Reader 好!

比较了下Adobe Reader 9.1 和 Foxit Reader 3.0 发现 Adobe对中文的显示更加清楚~ 所以还是用回Adobe的吧!

2009年3月13日星期五

晚上用JProfile做了点性能方面的分析

结果很吃惊,性能的瓶颈在xml的读写上。。。 orz。。。

安装EMS Sql Manager 2008 for Oracle

开始安装了EMS Sql Manager 2008 for Oracle,老是链接不上服务器。查看文档后,说明需要安装Oracle客户端。。。 安装好后,顺利链接上!
为什么不先看看文档呢?
偷懒往往更加得不偿失啊!

安装Oracle9i2出现的意外

老是提示 登录台出现异常,请检查源和目标。google了下,发现是以前安装过Oracle客户端,删除注册表中oracle子项,安装ok!

2分钟电话面试:又一次经验!

下午收到××科技的电话。对方先简要的介绍了下,然后直接问你英语听说能力怎么样?这一下就提到我伤心处了。 我很诚实的说我读写能力还行,听说能力稍差。 我问主要做什么,对方是说欧美业务。 对再问我现在做什么,是做.net 还是java,b/s还是c/s? 2分钟多点,快速的结束了。 对方很礼貌的说你的简历已经被他们“收藏”了! 圝~~~ 安慰我~ 自知之明yeah!
没办法,英语是老问题了。。。 我改花时间练练口语吗?

2009年3月12日星期四

Tomcat6中war自动部署原理



unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">


Note: unpackWARs="true"代表自动解压。autoDeploy="true"代表自动部署。

Tomcat6部署Spring-Jpetstore

1.按先前文章介绍安装好Tomcat6,
2.spring包中example/jpetstore下运行warfile.bat.
3.将生成的jpetstore.war拷贝到tomcat/webapp/下
4.重启tomcat6,webapp下自动多了一个名字为jpetstore的文件夹,即我们的宠物网站,
5.按先前介绍的安装好的mysql5.1,在sql manager 2007中,新建一jpetstore的数据库,运行mysql脚本
6.将mysql的jdbc的驱动拷贝到/webapp/jpetstore/WEB-INF/lib/下,并修改/webapp/jpetstore/WEB-INF/下的jdbc.properties文件,修改为符合mysql的要求。
例如:
jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/jpetstore
jdbc.username=root
jdbc.password=123456
7.重启Tomcat6,在浏览器中输入http://localhost:8080/jpetstore/

这就好了。

Tomcat6 zip 版安装

以前用过Tomcat5,今天在学习spring的时候想看看jpetstore,所以下在了一个Tomcat6zip版配置了下。
简单的说,
1.先设置好java_home,
2.在tomcat_home下bin目录下:
1)运行startup.bat 启动tomcat6,
2)运行shutdown.bat 退出tomcat6,
3)运行service.bat install tomcat6 安装服务名为tomcat6的Windows服务,
4) 运行service.bat romove tomcat6 删除服务名为tomcat6的Windows服务,
5) ctrl + r , 输入 services.msc , 可以看到 Apache Tomcat 的服务名,
6) 其他设置参考tomcat文档。
7) 桌面快捷方式:startup.bat 和 shutdowt.bat。

2009年3月11日星期三

忙碌的一天

一早收到美工美眉(没见过,希望是吧)做的页面效果图,并和小罗同志讨论了我们想法。中午修改发送了修改意见给美工~ 到下午3点时候做好了另一个项目用于演示的Flex客户端,服务器是以web Service的形式发布,Flex客户端是基于HttpService形式。做了简要的功能测试及边界测试后,打到Svn上,Flex告一段落。我的感觉是Flex是很美好的,可是我机器太慢了,cpu老是100%。。。 4点开始,上传上传小罗通知修改好的代码~ 继续奋斗哦!

2009年3月9日星期一

MySQL:简单字符集操作

1.查看默认字符集、排序方式
mysql> show variables like
-> 'character%';
+--------------------------+---------------------------------------------------+

| Variable_name | Value |

+--------------------------+---------------------------------------------------+

| character_set_client | utf8 |

| character_set_connection | utf8 |

| character_set_database | utf8 |

| character_set_filesystem | binary |

| character_set_results | utf8 |

| character_set_server | utf8 |

| character_set_system | utf8 |

| character_sets_dir | D:\DevSoft\MySQL\MySQL Server 5.1\share\charsets\ |

mysql> SHOW VARIABLES LIKE 'collation_%';
+----------------------+-----------------+
| Variable_name | Value |
+----------------------+-----------------+
| collation_connection | utf8_general_ci |
| collation_database | utf8_general_ci |
| collation_server | utf8_general_ci |
+----------------------+-----------------+

2.修改默认字符集
mysql> SET character_set_client = utf8 ;
mysql> SET character_set_connection = utf8 ;
mysql> SET character_set_database = utf8 ;
mysql> SET character_set_results = utf8 ;
mysql> SET character_set_server = utf8 ;

mysql> SET collation_connection = utf8 ;
mysql> SET collation_database = utf8 ;
mysql> SET collation_server = utf8 ;

MySQL:无法远程登入MySQL Server(is not allowed to connect to this MySQL server)解决

如果你想连接你的mysql的时候发生这个错误:

ERROR 1130: Host '192.168.1.3' is not allowed to connect to this MySQL server

解决方法:
1。 改表法。可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%"

mysql -u root -pvmwaremysql>use mysql;mysql>update user set host = '%' where user = 'root';mysql>select host, user from user;

2. 授权法。例如,你想myuser使用mypassword从任何主机连接到mysql服务器的话。

GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
如果你想允许用户myuser从ip为192.168.1.3的主机连接到mysql服务器,并使用mypassword作为密码
GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

GRANT ALL PRIVILEGES ON *.* TO 'root'@'10.10.40.54' IDENTIFIED BY '123456' WITH GRANT OPTION;

http://till.javaeye.com/blog/115659
http://www.webasp.net/article/21/20985_print.htm

我是用图形界面的SQL Manager中修改的!

获得mysql版本号

mysql> select version();
+------------------+
| version() |
+------------------+
| 5.1.32-community |
+------------------+
1 row in set (0.03 sec)

2009年3月6日星期五

试用wireshark,分析网络数据包

看了DW下的必备的java资源列表只工具篇中的介绍认识了wireshark,网络包跟踪工具。
WireShark (以前一般称为 Ethereal)使程序员可以查看网络上传播的内容,让他们有机会检查正在网络上传播的内容是否合适,而那些 合适的内容(比如敏感信息和明文密码)没有出现在网路上。呵呵,第一次听说这工具,以前只知道wincpap。。。 哈哈 , 我的工具箱又强大了!

安装了FLEX3 Eclipse插件

安装了FLEX3 Eclipse插件,yeah! 可以做flex 开发咯!!!Come on Baby!

Spring:IOC容器-依赖

1.注入依赖
1)构造器注入
1)构造器参数解析
2)构造器参数类型匹配
3)构造参数索引
2) Setter注入
3)一个替代构造器的方法,采用static工厂方法返回对象实例

2. 依赖配置详解
1)直接变量(基本类型、Strings类型等。)
2)idref元素,提供错误验证功能。local。。。
3) 引用其它的bean(协作者)。ref bean, ref local。
4)内部bean,内部bean中的scope标记及idname属性将被忽略。内部bean总是匿名的且它们总是prototype模式的。同时将内部bean注入到包含该内部bean之外的bean是可能的。
5)集合。元素。
6)集合的合并。parent-style和child-style。父子集合元素合并后的值就是子集合中的最终结果,而且子集合中的元素值将覆盖父集全中对应的值。merge 属性。
7)强类型集合(仅适用于Java5+)。
8) Nulls。
9)
XML配置文件的简写及其他
1)XML-based configuration metadata shortcuts
2) 使用p名称空间配置属性。p 表示属性。。。
10)组合属性名称。属性的属性的属性。。。
3. 使用depends-on 依赖关系不是太直接。。。 多个时候 “ , ”
4.延迟初始化bean。bean - lazy-init。beans - default-lazy-init
5.自动装配(autowire)协作者。自动装配(autowire)。
1)
Autowiring modes:no,byName,byType,constructor,autodetect。
2)如果直接使用propertyconstructor-arg注入依赖的话,那么将总是覆盖自动装配。
3)优点:a.自动装配能显著减少配置的数量,b.自动装配可以使配置与java代码同步更新
4) 缺点:a.装配不明确可能出现难以预料的结果,对象之间的关联关系也不再能清晰的进行文档化,b.对于那些根据Spring配置文件生成文档的工具来说,自动装配将会使这些工具没法生成依赖信息。
5) 将bean排除在自动装配之外.a.bean中autowire-candidate属性可被设为false.b.元素的'default-autowire-candidates'属性中进行设置
6.
依赖检查.
1)在bean定义中为dependency-check属性
2)依赖检查方式:none,simple,object,all.
7.方法注入
1)放弃控制反转。通过实现BeanFactoryAware接口让bean A能够感知bean 容器,并且在需要的时候通过使用getBean("B")方式向容器请求一个新的bean B实例。耦合高,不推荐。
2)Lookup方法注入。
Lookup方法注入利用了容器的覆盖受容器管理的bean方法的能力,从而返回指定名字的bean实例。 Lookup方法注入适用于原型bean。Lookup方法注入的内部机制是Spring利用了CGLIB库在运行时生成二进制代码功能,通过动态创建Lookup方法bean的子类而达到复写Lookup方法的目的。(需要CGLIB支持,子类化的类不能是final的,要覆盖的方法也不能是final的,不能是序列化的(serialized)。)
3)自定义方法的替代方案。当使用基于XML配置元数据文件时,可以在bean定义中使用replaced-method元素来达到用另一个方法来取代已有方法的目的.在元素内可包含一个或多个元素

2009年3月5日星期四

Eclipse3.4.1安装SpringIDE

用eclipse提供的在线软件包更新器成功安装了SpringIDE2.2.1.(在www.springide.org上找到更新链接!)耗时半个小时吧。

Spring:IOC容器 - 基本原理(容器和bean)

1.BeanFactory还是ApplicatonContext?
答:BeanFactory接口擅长于处理bean的初始化和配置,提供了配制框架及基本功能;ApplicationContextBeanFactory的扩展,功能得到了进一步增强,比如更易 与Spring AOP集成、资源处理(国际化处理)、事件传递及各种不同应用层的context实现 (如针对web应用的WebApplicationContext)。简而言之,一般把ApplicationContext接 口作为首选。

2.
为什么使用bean?

答:使用'bean'这个名字而不是'组件'(component)'对象'(object)的动机 源于Spring框架本身(它产生的部分原因就是对Enterprise Java Beans复杂性的一次解构)。

3.多种资源加载配置元数据

答:Spring IoC容器可以通过多种途径来加载配置元数据,比如本地文件系统、Java CLASSPATH等。Resource抽象机制。

4.怎么实例化容器?

答:ApplicationContext context = new ClassPathXmlApplicationContext(
new String[] {"services.xml", "daos.xml"});

// an ApplicationContext is also a BeanFactory (via inheritance)
BeanFactory factory = context;

XML配置元数据的结构:相对路径

5.bean的在Spring IOC 容器中怎么定义的?
答:bean定义由BeanDefinition 对象来表示。包括全限定类名、bean行为的定义、对其他bean的引用、
创建bean实例时的其他配置设置。他们被映射为中的properties:
class-类名,name-名字,scope-作用域,constructor arguments - 构造器参数,properties - 属性,autowiring mode
自动装配,dependency checking mode - 依赖检查,lazy-initialization mode - 初始化延迟,
initialization method - 初始化方法, destruction method - 析构方法。

6.bean的命名、 bean的别名?
答:bean的命名采用标准的Java命名约定,即小写字母开头,首字母大写间隔 的命名方式。如accountManageraccountService
userDaologinController,等等。
xml配置别名

7.实例化bean的方式?
答:
1)用构造器来实例化。
IoC容器不仅限于管理JavaBean,它可以管理任意 的类。
2)使用静态工厂方法实例化。
createInstance()必须是一个static方法。
3)使用实例工厂方法实例化。

8.使用容器

从本质上讲,BeanFactory仅仅只是一个 维护bean定义以及相互依赖关系的高级工厂接口。通过BeanFactory 我们可以访问bean定义。下面的例子创建了一个bean工厂,此工厂 将从xml文件中读取bean定义:

Resource res = new FileSystemResource("beans.xml"); BeanFactory factory = new XmlBeanFactory(res);

基本上就这些了,接着使用getBean(String) 方法就可以取得bean的实例;BeanFactory 提供的方法极其简单。 BeanFactory接口提供 了非常多的方法,但是对于我们的应用来说,最好永远不要调用它们,当然也包括 使用getBean(String)方法,这样可以避免我们对 Spring API的依赖。

2009年3月4日星期三

Eclipse3.4.1下安装Findbugs和subclipse(SVN for eclipse)

Eclipse3.4.1下安装Findbugs和subclipse(SVN for eclipse)

安装Subclipse(SVN):

Eclipse 3.4菜单->Help->Software Updates...->选择Available Software

点击“Add Sites...”按钮,分别添加两个站点:
http://download.eclipse.org/technology/subversive/0.7/update-site/

http://www.polarion.org/projects/subversive/download/eclipse/2.0/update-site/

然后勾选以下选项,然后点击“Install...”安装,必成功:
http://download.eclipse.org/technology/subversive/0.7/update-site/
--Subversive Integration Plug-in's
--Subversive SVN Intergration for the Mylyn Project

http://www.polarion.org/projects/subversive/download/eclipse/2.0/update-site/
--Subersive SVN Connectors
--JavaHL 1.5.0 Connector
--Native JavaHL 1.5 Win32
--Subversive SVN Connectors
--SVNKit 1.1.7 Implementation

安装Findbugs-1.3.8:

方法同上:

只是更新链接不同:

FindBugs Eclipse update sites:

http://findbugs.cs.umd.edu/eclipse/

Only provides official releases of FindBugs.

http://findbugs.cs.umd.edu/eclips-candidate/

Provides official releases and release candidates of FindBugs.

http://findbugs.cs.umd.edu/eclipse-daily/

Provides the daily build of FindBugs. No testing other than that it compiles.

(from Findbugs 在线手册)

EMS SQL Manager 2007 for MySQL安装试用

软件首页:
http://sqlmanager.net/
下载地址,及破解文件:
http://skywq.com/searchcn.asp?keyword=sql+manager&searchtj=name&x=0&y=0

先安装了最新的mysql5.1,再安装sql manager 2007,在应用破解文件。一切都很顺利,用起来很方便。。。

推荐不喜欢敲命令行的朋友使用哦。

2009年3月2日星期一

JProfiler5.2.1试用

安装使用了JProfiler5.2.1试用版,通过看demo视频和文档,学会了基本的设置,并且保存了看到的资料到skydrive中以备以后查看。。。
JProfiler确实很强大,我打算用到我们的服务器性能测试中去,我想一定会有很大的帮助的。

附资料链接:
英文帮助文档:
http://cid-976e63db5ed0bfb6.skydrive.live.com/self.aspx/.Public/jprofiler/JProfiler%20Reference%20Manual.pdf

jprofiler集成tomcat的demo
http://cid-976e63db5ed0bfb6.skydrive.live.com/self.aspx/.Public/jprofiler/jprofiler%7C_demo%7C_1.rar

官方session设置demo
http://cid-976e63db5ed0bfb6.skydrive.live.com/self.aspx/.Public/jprofiler/jprofiler%7C_demo%7C_config.swf

官方jporfilerOverView Demo
http://cid-976e63db5ed0bfb6.skydrive.live.com/self.aspx/.Public/jprofiler/jprofiler%7C_demo%7C_overview.swf

安装文件with jre
http://cid-976e63db5ed0bfb6.skydrive.live.com/self.aspx/.Public/jprofiler/jprofiler%7C_windows%7C_5%7C_2%7C_1%7C_with%7C_jre.exe

crack for jprofiler 5.1.2(没成功)
http://cid-976e63db5ed0bfb6.skydrive.live.com/self.aspx/.Public/jprofiler/JProfilter.512crack.zip