1.1.1 模型1
模型1使用JSP+JavaBeans技术将页面显示和业务逻辑处理分开。JSP实现页面的显示,JavaBean对象用来承载数据和实现业务逻辑。模型1的结构如图1-1所示。
|
| 图1-1 模型1的JSP架构 |
在模型1中,JSP页面独自响应请求并将处理结果返回给客户,所有的数据通过JavaBean来处理,JSP实现页面的显示。
我们看一个按照模型1的结构实现的用户登录的例子。在这个例子中有两个JavaBean类,UserBean和UserCheckBean,UserBean对象负责保存用户数据,UserCheckBean对象负责实现对用户登录信息进行验证的业务逻辑。
UserBean的代码片段如例1-1所示。
例1-1 UserBean.java
package org.sunxin.struts2.ch01.model1; import java.io.Serializable; public class UserBean implements Serializable |
UserCheckBean的代码如例1-2所示。
例1-2 UserCheckBean.java
package org.sunxin.struts2.ch01.model1; public class UserCheckBean public boolean validate() |
此外,还有三个JSP页面:login.jsp、loginchk.jsp和welcome.jsp。login.jsp负责显示登录表单,代码如例1-3所示。
例1-3 login.jsp
<%@ page contentType="text/html;charset=GBK" %> |
welcome.jsp负责向用户显示欢迎信息,代码如例1-4所示。
例1-4 welcome.jsp
<%@ page contentType="text/html;charset=GB2312" %> 欢迎你,<jsp:getProperty name="user" property="name"/>! |
loginchk.jsp负责调用UserCheckBean对用户名和密码进行验证,如果验证通过,则转向欢迎页面;否则输出错误信息,代码如例1-5所示。
例1-5 loginchk.jsp
<%@ page contentType="text/html;charset=GBK" %> <%request.setCharacterEncoding("GB2312");%> <jsp:useBean id="user" scope="session" class="org.sunxin.struts2.ch01. model1.UserBean"/> <% |
完整的代码请参看本书配套光盘中的ch01目录,测试时,输入URL:
http://localhost:8080/ch01/model1/login.jsp
通过这个例子可以看到,模型1将页面显示和业务逻辑进行了分离,不足之处是在JSP页面中仍然需要编写流程控制和调用JavaBean的代码,当需要处理的业务逻辑非常复杂时,这种情况会变得更加糟糕。在JSP页面中嵌入过多的Java代码将会使程序变得异常复杂,对于前端页面设计人员来说,大量的嵌入代码使他们无从下手。
模型1不能满足大型应用的需要,但是对于小型应用,由于该模型简单,且不涉及过多的要素,可以很好地满足小型应用的需要。所以在简单应用中,应该优先考虑模型1。
| 回书目 上一节 下一节 |
|
· Linux笔试面试题选摘测.. · 08年5月软考网管上午真.. · 性能测试从零开始 目录 · 08年5月软考网工上午真.. · 上周拒绝服务攻击(DDo.. · 08年5月各大网上书店及.. |
· 2008年5月24日软考试题.. · 软件设计师专家临考模.. · 上周网络管理员专家自.. · 网络工程师自测获奖名.. · 08年4月各大网上书店及.. · 系统分析师自测获奖名.. |
|
||||
| · CISSP认证成长之路 · SQL Server 2008/2005.. · SQL Server入门到精通 · 网络工程师职业规划与.. · 浏览器的战国时代 · 运营商封堵ADSL共享 中.. · 微软出价446亿美元收购.. · 技术人求职简历完备手册 |
· 开源虚拟化技术Xen · Windows Server 2008专.. · 隐私保护技术探讨 · 绿色IT人健康生存手册 · 杀毒软件评测专题 · 访问控制列表(ACL)介绍 · Vista SP1对决XP SP3 · 华为员工自杀频频拷问.. |
|||
|
||||
| · SOA 面向服务架构 · SQL Server 2008/2005.. · Apache技术专题 · 三层交换技术专题 · SQL Server入门到精通 · Apache技术专题 · Windows集群服务应用 · 国际文档格式标准开战 |
· 路由器设置与口令恢复 · Linux 集群技术专题 · PHP开发应用手册 · SOA 面向服务架构 · 企业数据恢复指南 · 了解统一威胁管理(UTM).. · 专题:AIX操作系统管理.. · 访问控制列表(ACL)介绍 |
|||
|
||||
| · SQL Server入门到精通 · SQL Server 2008/2005.. · SOA 面向服务架构 · Apache技术专题 · 三层交换技术专题 · Apache技术专题 · 企业数据恢复指南 · Windows集群服务应用 |
· 路由器设置与口令恢复 · Linux 集群技术专题 · SOA 面向服务架构 · 了解统一威胁管理(UTM).. · 反垃圾邮件技术应用 · 访问控制列表(ACL)介绍 · PHP开发应用手册 · 专题:AIX操作系统管理.. |
|||