使用 Translator 模式构建更好的网站(4)

王朝厨房·作者佚名  2007-01-02
窄屏简体版  字體: |||超大  

有关此代码模板的最后一个(也是最重要的一个)注意事项是:INPUT 标记的 value 属性是由一个表达式设置的,该表达式使用了 Translator 的一个 getter 方法。value="<%= ltLoan.getBorrowerLastName() %> 这行代码是此模式最重要的部分之一,因为它就是使输入域的值缺省为网站访问者最初输入的值的代码。通过将此值缺省设置为网站访问者最初输入的值,访问者就能看到他最初输入的内容,并很容易地修正他的错误。这节省了网站访问者的时间,并能使其获得更好的用户体验。

servlet

下面是一个典型的简化 servlet:

public void doPost(HttpServletRequest request, HttpServletResponse response)

{

// 缺省设置是使用户返回输入页。

String sRedirect = LOAN_JSP;

// 获取 Translator 的正确实例

LoanTranslator ltTrans = LoanTranslator.getInstance(request);

// 现在有了 Translator 的一个实例

ltTrans.processForm(request);

// 获取 Loan 的正确版本的逻辑

Loan lnTheLoan = null;

if (ltTrans.isNew () == true)

{

// 创建新 Loan

}

else

{

// 获得现有的 loan

}

// Sync the Loan object values to values in the submitted form.

ltTrans.syncModelToGui(lnTheLoan);

// 确保未出现任何错误

if (ltTrans.hasErrors() == false)

{

// 提交 Loan 信息,然后将重定向设置为正确的尾随页

sRedirect = LOAN_CONFIRMATION;

}

// 将网站访问者重定向为当前工资。

try {

response.sendRedirect(sRedirect);

}

catch (Exception e)

{

// 错误逻辑

}

}

servlet 的主要用途是控制 JSP 文件之间的导航流以及对业务对象执行持久化。此 servlet 的代码很简单。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航