走上开放之路: ASP开发人员的J2EE基础(下) - 编程入门网
ode to validate users credentials goes here
...
END FUNCTION %>
<html>
<head>
<title>Login example</title>
</head>
<body>
<% IF (REQUEST.SERVERVARIABLES("REQUEST_METHOD") = "GET") THEN %>
<form action="login.asp" method="post">
<!-- login form fields go here -->
</form>
<% ELSE userName = REQUEST.FORM("username") password = REQUEST.FORM ("password")
IF (ValidateUser(userName, password)) THEN
RESPONSE.REDIRECT("mainpage.asp") ELSE ... END IF END IF % >
<font color="red"><b><%=LoginMessage% ></b></font>
</body>
</html>
正如清单 24 所示,您可以在 J2EE 中采用相同的方法,使用单个 JSP 页面来同时包含 表单和应用逻辑。 清单 24.J2EE 中的“意大利面条式”代码
与 ASP 模型类似,JSP 模型不是事件驱动的,因此您需要检查表单是否被发送回去了, 方法是检查该请求,并且如果不是 POST 请求时则添加表单的 HTML。如果它是 POST 请求, 您将使用在 JSP 中声明的一个方法来验证登录。注意,使用 <%! 表明该代码是一个方法 。Scriptlet 代码将在 JSP 页面处理期间遇到它们的时候执行,因此用于 scriptlet 的标 签( <% %> )对方法无效。还要注意如何使用 if/then/else 编程结构来方便地添加 或去除较大的 HTML 块。与在 ASP 例子中一样,不推荐将此方法用于 J2EE 开发。表示代码 (HTML)和应用逻辑的混合仅允许很少的重用,并且使得代码难于维护。 走上开放之路: ASP开发人员的J2EE基础(下)(5)时间:2011-04-09 IBM Jeff Wilson改进的“意大利面条式”代码 在 ASP 端,可以以前一个例子为基础建立一种更好的方法,不过除了 login.asp 文件外 ,还使用只包含验证逻辑的一个 include ASP 文件。这样您就可以重用其他 ASP 文件中的 代码。 J2EE 端的一种更好方法是将应用逻辑转移到一个 Java Servlet,从而使 JSP 页面仅限 于使用 HTML 组件。现在验证逻辑独立于显示表单的页面,这是一种改进,而 JSP 页面仅限 于使用 HTML 组件也是一种改进。清单 25 显示了如何将应用逻辑放到 servlet 中从而简化 JSP 页面。 清单 25. J2EE:JSP 页面中改进的“意大利面条式”代码
|
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |