(3)TestBean.java JavaBean的代码
package mvcExamples;
public class TestBean
{
private String testStr = null;
public TestBean ()
{
}
void setTestStr(String testStr)
{
this.testStr = testStr;
}
public String getTestStr ()
{
return testStr;
}
}
(4)RequestTest.jsp显示数据的页面
<%@ page language="java" pageEncoding="GB2312" %>
<!DOCTYPE HTML PUBLIC "-//w3c//dtd html 4.0 transitional//en">
<html><head><title>利用request显示Login.htm中的登录数据的页面
<!—
注意下面的JavaBean的id应该与前面的Servlet中存储时的名称相同
-->
<jsp:useBean id="requestbean" scope="request" class=" mvcExamples.TestBean"/>
<%=requestbean.getTestStr()%>
<HR>
<a href="/testSessionTest.jsp">SessionTest.jsp
<HR>
<CENTER><a href="/testLogin.html">Index
(5)SessionTest.jsp显示数据的页面
<%@ page language="java" pageEncoding="GB2312" %>
<!DOCTYPE HTML PUBLIC "-//w3c//dtd html 4.0 transitional//en">
<html><head><title>利用session显示Login.htm中的登录数据的页面
<!—
注意下面的JavaBean的id应该与前面的Servlet中存储时的名称相同
-->
<jsp:useBean id="sessionbean" scope="session" class=" mvcExamples.TestBean"/>
<%= sessionbean.getTestStr()%>
<HR><CENTER><a href="RequestTest.jsp">RequestTest.jsp
<HR><CENTER><a href="Login.html">Index
7、MVC的优点及不足之处
(1)MVC的优点:MVC的优点表现在以下几个方面:
- 可以为一个模型在运行时同时建立和使用多个视图。变化-传播机制可以确保所有相关的视图及时得到模型数据变化,从而使所有关联的视图和控制器做到行为同步。
- 视图与控制器的可接插性,允许更换视图和控制器对象,而且可以根据需求动态的打开或关闭、甚至在运行期间进行对象替换。
- 模型的可移植性。因为模型是独立于视图的,所以可以把一个模型独立地移植到新的平台工作。需要做的只是在新平台上对视图和控制器进行新的修改。
- 潜在的框架结构。可以基于此模型建立应用程序框架,不仅仅是用在设计界面的设计中。
(2)MVC的不足之处:MVC的不足表现在以下几个方面:
- 增加了系统结构和实现的复杂性。对于简单的界面,严格遵循MVC,使模型、视图与控制器分离,会增加结构的复杂性,并可能产生过多的更新操作,降低运行效率。
- 视图与控制器间的过于紧密的连接。视图与控制器是相互分离,但确实联系紧密的部件,视图没有控制器的存在,其应用是很有限的,反之亦然,这样就妨碍了他们的独立重用。
- 视图对模型数据的低效率访问。依据模型操作接口的不同,视图可能需要多次调用才能获得足够的显示数据。对未变化数据的不必要的频繁访问,也将损害操作性能。