如何改进这个xpath表达式?

时间:2012-07-31 16:39:26

标签: java xpath

/web-app/filter/filter-class[text()="com.zide.AppFilter"]/following-sibling::init-param/param-name[text()="development.mode"]/following-sibling::param-value

要替换的节点。

 <web-app>
  <!--  
  <welcome-file-list>
    <welcome-file>login/index.jsp</welcome-file>
  </welcome-file-list>
  -->
  <filter>
    <filter-name>Zide APP Filter</filter-name>
    <filter-class>com.zide.AppFilter</filter-class>
    <init-param>
      <param-name>config-file</param-name>
      <param-value>*.jsp,*.js</param-value>
    </init-param>
    <init-param>
      <param-name>development.mode</param-name>
      <param-value>true</param-value>
    </init-param>
  </filter>
</webapp>

XML文件大小 - 100kb。

文件中没有行 - 2600。

执行表达式所需的时间约为213毫秒。

有没有办法在java中优化这个表达式。

1 个答案:

答案 0 :(得分:0)

如果您确定development.mode仅存在于一个过滤器中,您可以直接进行此操作,这将减少到达数据的步骤数。

//param-name[text()="development.mode"]/following-sibling::param-value