
在前文中我提到了关于为何要使用springMVC的问题,当中一点是使用springMVC比起原先的struts+spring框架在效率上是有优势的。为了验证这个问题,我做了两个Demo来验证究竟是不是这个原因。
在展示详细的測试数据之前,先来介绍下怎样使用javamelody測试工具来測试我们的系统。
1.须要拿到javamelody.war。并将其放在Tomcat的webapps下进行公布。
2.将javamelody.jar放在被监控项目的lib文件夹下。
3.在被监视项目的web.xml文件里增加以下的代码:
<filter>
<filter-name>monitoring</filter-name>
<filter-class>net.bull.javamelody.MonitoringFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>monitoring</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<listener>
<listener-class>net.bull.javamelody.SessionListener</listener-class>
</listener>
4.启动Tomcat应用server并訪问javamelody应用,如http://localhost:8080/javamelody(假设公布项目在tomcat的webapps下。则一定要在tomcat的bin文件下双击start-up.bat文件进行启动加),假设出现例如以下结果明javamelody.war部署成功:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYTEzMTQ1MTdsb3Zl/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
5.訪问监视数据。直接输入被监视项目的路径并在后面加入/monitoring,如我的被监视的项目名称为strutsandspring。则输入的url为:http://localhost:8080/strutsandspring/monitoring。
介绍完javamelody的配置方法后。来看详细的測试数据。
第一、 struts-spring框架下訪问action的測试结果:
第二、 springMVC框架下的測试结果:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYTEzMTQ1MTdsb3Zl/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
通过对照这两站图片中的红色标记部分,我们能够看到,在相同是訪问20次的条件下,springMVC所用平均时间是3ms,而struts-spring所用平均时间是4ms。
该结果表明springMVC确实要比struts-spring框架在性能上有优势。假设我们将訪问次数大大提高,相信差距会更加的明显。