⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 struts,mvc 的一种开放源码实现.htm

📁 介绍了MVC的很多内容(基于MVC模式Struts框架研究与应用详解—JSP教程
💻 HTM
📖 第 1 页 / 共 5 页
字号:
                  src="Struts,MVC 的一种开放源码实现.files/dw.gif" 
              width=192></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE>
      <TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
        <TBODY>
        <TR vAlign=top>
          <TD width=10><IMG height=1 alt="" 
            src="Struts,MVC 的一种开放源码实现.files/c.gif" width=10></TD>
          <TD width="100%">
            <TABLE class=no-print cellSpacing=0 cellPadding=0 width=160 
            align=right border=0>
              <TBODY>
              <TR>
                <TD width=10><IMG height=1 alt="" 
                  src="Struts,MVC 的一种开放源码实现.files/c.gif" width=10></TD>
                <TD>
                  <TABLE cellSpacing=0 cellPadding=0 width=150 border=0>
                    <TBODY>
                    <TR>
                      <TD class=v14-header-1-small>文档选项</TD></TR></TBODY></TABLE>
                  <TABLE class=v14-gray-table-border cellSpacing=0 cellPadding=0 
                  border=0>
                    <TBODY>
                    <TR>
                      <TD class=no-padding width=150>
                        <TABLE cellSpacing=0 cellPadding=0 width=143 
                          border=0><IMG height=1 alt="" 
                          src="Struts,MVC 的一种开放源码实现.files/c.gif" width=8>
                          <FORM name=email 
                          action=https://www.ibm.com/developerworks/secure/email-it.jsp><INPUT 
                          type=hidden 
                          value="本文介绍 Struts,它是使用 servlet 和 JavaServer Pages 技术的一种 Model-View-Controller 实现。Struts 可帮助您控制 Web 项目中的变化并提高专业化水平。尽管您可能永远不会用 Struts 实现一个系统,但您可以将其中的一些思想用于您以后的 servlet 和 JSP 网页的实现中。" 
                          name=body><INPUT type=hidden 
                          value="Struts,MVC 的一种开放源码实现" name=subject><INPUT 
                          type=hidden value=cn name=lang>
                          <SCRIPT language=JavaScript type=text/javascript><!--document.write('<tr valign="top"><td width="8"><img src="//www.ibm.com/i/c.gif" width="8" height="1" alt=""/></td><td width="16"><img src="//www.ibm.com/i/v14/icons/em.gif" height="16" width="16" vspace="3" alt="将此页作为电子邮件发送" /></td><td width="122"><p><a class="smallplainlink" href="javascript:document.email.submit();"><b>将此页作为电子邮件发送</b></a></p></td></tr>');//--></SCRIPT>
                          <NOSCRIPT>
                          <TBODY>
                          <TR vAlign=top>
                            <TD width=8><IMG height=1 alt="" 
                              src="Struts,MVC 的一种开放源码实现.files/c.gif" width=8></TD>
                            <TD width=16><IMG height=16 alt="" 
                              src="Struts,MVC 的一种开放源码实现.files/c.gif" 
width=16></TD>
                            <TD class=small width=122>
                              <P><SPAN class=ast>未显示需要 JavaScript 
                              的文档选项</SPAN></P></TD></TR></NOSCRIPT></FORM></TBODY></TABLE></TD></TR></TBODY></TABLE><!--START RESERVED FOR FUTURE USE INCLUDE FILES--><!-- this content will be automatically generated across all content areas --><!--END RESERVED FOR FUTURE USE INCLUDE FILES--><BR></TD></TR></TBODY></TABLE>
            <P>级别: 初级</P>
            <P><A 
            href="http://www.ibm.com/developerworks/cn/java/j-struts/#author">Malcolm 
            Davis</A> (<A 
            href="mailto:malcolm@nuearth.com?subject=Struts,MVC 的一种开放源码实现&amp;cc=malcolm@nuearth.com">mailto:malcolm@nuearth.com?subject=Struts,MVC 
            的一种开放源码实现&amp;cc=malcolm@nuearth.com</A>), 顾问<BR></P>
            <P>2001 年 2 月 23 日</P>
            <BLOCKQUOTE>本文介绍 Struts,它是使用 servlet 和 JavaServer Pages 技术的一种 
              Model-View-Controller 实现。Struts 可帮助您控制 Web 
              项目中的变化并提高专业化水平。尽管您可能永远不会用 Struts 实现一个系统,但您可以将其中的一些思想用于您以后的 servlet 
              和 JSP 网页的实现中。</BLOCKQUOTE><!--START RESERVED FOR FUTURE USE INCLUDE FILES--><!-- include java script once we verify teams wants to use this and it will work on dbcs and cyrillic characters --><!--END RESERVED FOR FUTURE USE INCLUDE FILES-->
            <P><A name=1><SPAN class=atitle>简介</SPAN></A></P>
            <P>小学生也可以在因特网上发布 HTML 网页。但是,小学生的网页和专业开发的网站有质的区别。网页设计人员(或者 HTML 
            开发人员)必须理解颜色、用户、生产流程、网页布局、浏览器兼容性、图像创建和 JavaScript 
            等等。设计漂亮的网站需要做大量的工作,大多数 Java 开发人员更注重创建优美的对象接口,而不是用户界面。JavaServer 
            Pages (JSP) 技术为网页设计人员和 Java 开发人员提供了一种联系钮带。</P>
            <P>如果您开发过大型 Web 应用程序,您就理解 <I>变化</I> 这个词的含义。“模型-视图-控制器”(MVC) 
            就是用来帮助您控制变化的一种设计模式。MVC 减弱了业务逻辑接口和数据接口之间的耦合。Struts 是一种 MVC 实现,它将 
            Servlet 2.2 和 JSP 1.1 标记(属于 J2EE 规范)用作实现的一部分。尽管您可能永远不会用 Struts 
            实现一个系统,但了解一下 Struts 或许使您能将其中的一些思想用于您以后的 Servlet 的 JSP 实现中。 </P>
            <P>在本文中,我将以一个 JSP 文件为起点讨论该网页的优缺点,该文件中使用的元素可能是您所熟悉的。随后我将讨论 
            Struts,并说明它是如何控制您的 Web 项目中的变化并提高专业化水平的。最后,我将重新开发这个简单的 JSP 
            文件,在开发过程中我已顾及到网页设计人员和变化。</P><BR>
            <TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
              <TBODY>
              <TR>
                <TD><IMG height=1 alt="" 
                  src="Struts,MVC 的一种开放源码实现.files/blue_rule.gif" 
                  width="100%"><BR><IMG height=6 alt="" 
                  src="Struts,MVC 的一种开放源码实现.files/c.gif" width=8 
              border=0></TD></TR></TBODY></TABLE>
            <TABLE class=no-print cellSpacing=0 cellPadding=0 align=right>
              <TBODY>
              <TR align=right>
                <TD><IMG height=4 alt="" 
                  src="Struts,MVC 的一种开放源码实现.files/c.gif" width="100%"><BR>
                  <TABLE cellSpacing=0 cellPadding=0 border=0>
                    <TBODY>
                    <TR>
                      <TD vAlign=center><IMG height=16 alt="" 
                        src="Struts,MVC 的一种开放源码实现.files/u_bold.gif" width=16 
                        border=0><BR></TD>
                      <TD vAlign=top align=right><A class=fbox 
                        href="http://www.ibm.com/developerworks/cn/java/j-struts/#main"><B>回页首</B></A></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE><BR><BR>
            <P><A name=2><SPAN class=atitle>一个 JSP 文件就是一个 Java 
            servlet</SPAN></A></P>
            <P>JavaServer Page (JSP) 文件只是审视 servlet 的另一种方式。JSP 文件的概念使我们能够将 Java 
            servlet 看作一个 HTML 网页。JSP 消除了 Java 代码中经常出现的讨厌的 <CODE>print()</CODE> 
            语句。JSP 文件首先被预处理为 <CODE>.java</CODE> 文件,然后再编译为 <CODE>.class</CODE> 
            文件。如果您使用的是 Tomcat,则可以在 <CODE>work</CODE> 目录下查看预处理后的 
            <CODE>.java</CODE> 文件。别的容器可能将 <CODE>.java</CODE> 和 
            <CODE>.class</CODE> 文件存储在其他位置;这个位置与容器有关。图 1 说明了从 JSP 文件到 servlet 
            的流程。 </P><BR><A name=art1><B>图 1. 从 JSP 文件到 servlet 
            的流程</B></A><BR><IMG height=65 alt="JSP to servlet flow" 
            src="Struts,MVC 的一种开放源码实现.files/jsp_to_servlet.gif" width=410> <BR>
            <P>(这与 Microsoft 的 Active Server Page (ASP) 明显不同。ASP 
            被编译到内存中,而不是编译到一个单独的文件中。)</P>
            <P><A name=N1008C><SPAN class=smalltitle>简单的独立 JSP 文件</SPAN></A></P>
            <P>在小型 JSP 
            应用程序中,经常会看到数据、业务逻辑和用户界面被组合在一个代码模块中。此外,应用程序通常还包含用来控制应用程序流程的逻辑。清单 1 和图 
            2 展示了允许用户加入一个邮件列表的一个简单 JSP 文件。</P><BR><A name=N10095><B>清单 1. 
            join.jsp -- 一个简单的请求和响应 JSP 文件 </B></A><BR>
            <TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
              <TBODY>
              <TR>
                <TD class=code-outline><PRE class=displaycode>&lt;%@ page language="java" %&gt;
&lt;%@ page import="business.util.Validation" %&gt;
&lt;%@ page import="business.db.MailingList" %&gt;
&lt;%
String error = "";
String email = request.getParameter("email");
// 是否有电子邮件地址
if( email!=null ) {
    // 验证输入...
    if( business.util.Validation.isValidEmail(email) ) {
        // 存储输入...
        try {
            business.db.MailingList.AddEmail(email);
        } catch (Exception e) {
            error = "Error adding email address to system.  " + e;
        }
        if( error.length()==0 ) {
%&gt;
            // 重定向到欢迎页...
            &lt;jsp:forward page="welcome.html"/&gt;
&lt;%
        }
    } else {
        // 设置错误消息并重新显示网页
        error = email + " is not a valid email address, please try again.";
    }
} else {
    email = "";
}
%&gt;
&lt;html&gt;
&lt;head&gt;
&lt;title&gt;Join Mailing List&lt;/title&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;font color=red&gt;&lt;%=error%&gt;&lt;/font&gt;&lt;br&gt;
&lt;h3&gt;Enter your email to join the group&lt;/h3&gt;
&lt;form action="join.jsp" name="joinForm"&gt;
    &lt;input name="email" id="email" value=&lt;%=email%&gt;&gt;&lt;/input&gt;
    &lt;input type=submit value="submit"&gt;
&lt;/form&gt;
&lt;/body&gt;
&lt;/html&gt;
</PRE></TD></TR></TBODY></TABLE><BR><BR><A name=N100A5><B>图 2. 
            在简单的请求和响应中,JSP 文件设置数据、控制到下一个网页的流程并创建 HTML</B></A><BR><IMG height=70 
            alt="Simple request and response JSP" 
            src="Struts,MVC 的一种开放源码实现.files/simple_jsp.gif" width=430> <BR>
            <P>这个邮件列表 JSP 文件是一个独立的、自主完成所有任务的模块。未包含在这个 JSP 文件中的仅有代码是包含在 
            <CODE>isValidEmail()</CODE> 中的实际验证代码和将电子邮件地址存入数据库的代码。(将 
            <CODE>isValidEmail()</CODE> 方法分离到可重用的代码中似乎是当然的选择,但我曾见过直接嵌入网页中的 
            <CODE>isValidEmail()</CODE> 
            代码。单页方法的优点是易于理解,并且最初也易于构建。此外,对于各种图形化开发工具,入门也很容易。 </P>
            <P><A name=N100C1><SPAN class=smalltitle>join.jsp 的活动 
</SPAN></A></P>
            <OL>
              <LI>显示打开的输入网页。 
              <LI>从表单参数中读取 <CODE>email</CODE> 的值。 
              <LI>验证 <CODE>email</CODE> 地址。 
              <LI>如果 <CODE>email</CODE> 地址有效: 
              <UL>
                <LI>将该地址添加到数据库中。 
                <LI>重定向到下一个网页。 </LI></UL>
              <LI>如果 <CODE>email</CODE> 地址无效: 
              <UL>
                <LI>设置错误消息。 
                <LI>重新显示含有错误消息的 <CODE>join.jsp</CODE> 。 </LI></UL></LI></OL>
            <P><A name=N10103><SPAN class=smalltitle>单页方法的后果</SPAN></A></P>
            <UL>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -