在Spring Batch中,我将每个数据块附加到实现的编写器类的覆盖Write方法中的StringBuilder和afterStep加密数据的完整有效负载(String Builder)中 并写入文件。因为我将每个数据附加到String Builder,因为记录大小很大并且继续附加到StringBuilder,因此会出现内存异常或堆大小问题,请 建议什么是最好的方法摆脱这种情况(我的意图是不加密和写入每个记录块的文件)
Concerened Code:
<?php
print_r($_SESSION);
if (isset($_SESSION['action'])) {
echo "
<h4>Employee Data</h4><br>
<ul class='nav nav-tabs'>
<li class='active'><a data-toggle='tab'href='#sectionA'>Address</a></li>
<li><a data-toggle='tab' href='#sectionB'>Personal Data</a></li>
<li><a data-toggle='tab' href='#sectionB'>Communication Data</a></li>
</ul>
</li>
</ul>
<div class='tab-content'>
<div id='sectionA' class='tab-pane fade in active'>
<ul class='list-group'>
<li class='list-group-item'>First Name ".$emp_name."
</li>
<li class='list-group-item'>Last Name</li>
<li class='list-group-item'>Street</li>
<li class='list-group-item'>Zip</li>
<li class='list-group-item'>City</li>
<li class='list-group-item'>Country</li>
</ul>
</div>
<div id='sectionB' class='tab-pane fade'>
<p>Section B content…</p>
</div>
<div id='dropdown1' class='tab-pane fade'>
<p>Dropdown 1 content…</p>
</div>
<div id='dropdown2' class='tab-pane fade'>
<p>Dropdown 2 content…</p>
</div>
</div>
";
}
?>
请为这种情况建议我最好的Spring Batch方法。
答案 0 :(得分:1)
您应该在写入文件时动态加密 - 而不是单独加密的块,使用输出流并继续写入。
使用Bouncy Castle或类似物。