Hi, all. My template file is shown below, getTemplate() cost more than 16000ms
to load it. I don't know what's wrong with it. This template is created
automatically by another Velocity client class (I named it as
TemplatePublisher), so it is too ugly and long. Who can tell me how to optimize
this template to make the loading time shorter?
thanks a lot!
============== my poor template ==============
<!--created by VdbPublisher at 2008-12-27 00:14:31-->
#if ($pageViewer.beans.size() == 0)
<center>
<div style="width:100%" align="left"> <br>
<p><font color="#cccccc">no records...</font></p>
</div>
</center>
#else
<table align="center" width="100%" border="1" cellpadding="6" class="table1
dataset book">
<tr class="header">
<td align="center" fieldId="8a8080841c833108011c8331087c0002"
orderAsc="${jsoQuery.orderAsc}" onclick="setOrderBy(this)" style="cursor:hand"
title="order by number" ><b><img src="/images/key.gif" align="absbottom">
number</b>#if ('8a8080841c833108011c8331087c0002' == $jsoQuery.orderId)<img
src="/images/${jsoQuery.orderAsc}.gif" align="absbottom" width="13">#end</td>
<td align="center" fieldId="8a8080841c833108011c8331087c0003"
orderAsc="${jsoQuery.orderAsc}" onclick="setOrderBy(this)" style="cursor:hand"
title="order by title" ><b> title</b>#if ('8a8080841c833108011c8331087c0003' ==
$jsoQuery.orderId)<img src="/images/${jsoQuery.orderAsc}.gif" align="absbottom"
width="13">#end</td>
<td align="center" fieldId="1f62836e1c8dd5da011c8dd909b00001"
orderAsc="${jsoQuery.orderAsc}" onclick="setOrderBy(this)" style="cursor:hand"
title="order by price" ><b> price</b>#if ('1f62836e1c8dd5da011c8dd909b00001' ==
$jsoQuery.orderId)<img src="/images/${jsoQuery.orderAsc}.gif" align="absbottom"
width="13">#end</td>
<td align="center" fieldId="1f62836e1c8dd5da011c8dd925d30003"
orderAsc="${jsoQuery.orderAsc}" onclick="setOrderBy(this)" style="cursor:hand"
title="order by modification time" ><b> modification time</b>#if
('1f62836e1c8dd5da011c8dd925d30003' == $jsoQuery.orderId)<img
src="/images/${jsoQuery.orderAsc}.gif" align="absbottom" width="13">#end</td>
<td align="center" fieldId="1f62836e1c8de132011c8e09666d0001"
orderAsc="${jsoQuery.orderAsc}" onclick="setOrderBy(this)" style="cursor:hand"
title="order by description" ><b> description</b>#if
('1f62836e1c8de132011c8e09666d0001' == $jsoQuery.orderId)<img
src="/images/${jsoQuery.orderAsc}.gif" align="absbottom" width="13">#end</td>
<td align="center" fieldId="1f62836e1c8de132011c8e0984550003"
orderAsc="${jsoQuery.orderAsc}" style="color:#888888" title="unsortable" ><b>
images</b>#if ('1f62836e1c8de132011c8e0984550003' == $jsoQuery.orderId)<img
src="/images/${jsoQuery.orderAsc}.gif" align="absbottom" width="13">#end</td>
<td align="center" fieldId="1f62836e1c8de132011c8e09b4000005"
orderAsc="${jsoQuery.orderAsc}" onclick="setOrderBy(this)" style="cursor:hand"
title="order by publish date" ><b> publish date</b>#if
('1f62836e1c8de132011c8e09b4000005' == $jsoQuery.orderId)<img
src="/images/${jsoQuery.orderAsc}.gif" align="absbottom" width="13">#end</td>
<td align="center" fieldId="ff8080811db4d587011db4e3fab5000a"
orderAsc="${jsoQuery.orderAsc}" onclick="setOrderBy(this)" style="cursor:hand"
title="order by isNew" ><b> isNew</b>#if ('ff8080811db4d587011db4e3fab5000a' ==
$jsoQuery.orderId)<img src="/images/${jsoQuery.orderAsc}.gif" align="absbottom"
width="13">#end</td>
<td align="center" fieldId="ff8080811db4d587011db4e811f3000d"
orderAsc="${jsoQuery.orderAsc}" style="color:#888888" title="unsortable" ><b>
vfield</b>#if ('ff8080811db4d587011db4e811f3000d' == $jsoQuery.orderId)<img
src="/images/${jsoQuery.orderAsc}.gif" align="absbottom" width="13">#end</td>
<td align="center" fieldId="ff8080811db4ec19011db4ec61c50001"
orderAsc="${jsoQuery.orderAsc}" style="color:#888888" title="unsortable" ><b>
location</b>#if ('ff8080811db4ec19011db4ec61c50001' == $jsoQuery.orderId)<img
src="/images/${jsoQuery.orderAsc}.gif" align="absbottom" width="13">#end</td>
<td align="center" fieldId="ff8080811e5245cc011e524aaa1a0005"
orderAsc="${jsoQuery.orderAsc}" style="color:#888888" title="unsortable" ><b>
authors</b>#if ('ff8080811e5245cc011e524aaa1a0005' == $jsoQuery.orderId)<img
src="/images/${jsoQuery.orderAsc}.gif" align="absbottom" width="13">#end</td>
<td class="header"></td>
</tr>
#foreach ($bean in $pageViewer.beans)
#set ($id = $bean.id.jdbcObject)
#set ($flag = $velocityCount%2)
<tr id="DATAGRID_ROW" class="bg${flag}" checked="false"
originalClass="bg$flag" rowID="${id}" onmouseout="hiliteRecord(this, false)"
style="cursor:hand" onclick="toggleRecord(this);" title="click here to select
this row">
<td>$bean.id.format('%d')</td>
<td>$bean.title.format('%s')
</td>
<td>$bean.price.format('%.2f')</td>
<td>$bean.posttime.dateFormat('')</td>
<td>$bean.desc.format('%s')
</td>
<td>#foreach ($file in $bean.photo.files)
<a href="${file.filePath}">${file.title}[${file.fileSize}]</a><br>
#end</td>
<td>$bean.publishdate.dateFormat('')</td>
<td>$bean.ispop.format('%s')
</td>
<td>$bean.vfield.value</td>
<td>$bean.location.lon, $bean.location.lat</td>
<td><div id="13" class="DataTableView"></div>
<script>
var jsoQuery_13 = new SlaveQuery('cn.csdb.paperdb.author',
'${bean.id.jdbcObject}', 'cn.csdb.paperdb.book.authors');
jsoQuery_13.pageSize = 20;
var jsoDataTableView_13 = new DataTableView('cn.csdb.paperdb.author',
jsoQuery_13, $('#13.DataTableView')[0]);
jsoDataTableView_13.refresh();
</script></td>
<td align="center" valign="top" class="bg2"><span
id="TITLE_$velocityCount" style="display:none">$bean.title.format('%s')
</span>
#if($!authenticator)
<a href=# onclick="updateRecord('8a8080841c833108011c8331087c000a',
'${id}');">update</a> <a href=#
onclick="deleteRecord('8a8080841c833108011c8331087c000a', '${id}');">delete</a>
#end
</td>
</tr>
#end
</table>
<p> <input type="checkbox" onclick="checkRecords(this);">select all
#if($!authenticator)
<button onclick='deleteRecords();'><img src='/images/submit_n.gif' border=0
align=absbottom>delete all</button>
#end
</p>
#if ($pageViewer.pageCount > 1)
<br>
<center>
<div style="width:100%">
<div align="right">${pageViewer.footerBar1}</div>
</div>
<div style="width:100%">
<div align="right">${pageViewer.footerBar2}</div>
</div>
</center>
#end
#end