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

📄 csdn_struts原理与应用(三).htm

📁 Struts文章
💻 HTM
📖 第 1 页 / 共 3 页
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0049)http://www.csdn.net/develop/article/22/22573.shtm -->
<HTML><HEAD><TITLE>CSDN_Struts原理与应用(三)</TITLE>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<META http-equiv=Expires content=0><LINK 
href="CSDN_Struts原理与应用(三).files/csdn.css" rel=stylesheet>
<META content="MSHTML 6.00.2800.1106" name=GENERATOR></HEAD>
<BODY bottomMargin=0 aLink=#990000 bgColor=#ffffff leftMargin=0 topMargin=0 
rightMargin=0 marginheight="0" marginwidth="0">
<SCRIPT language=javascript1.2>
<!--
	var currentpos,timer; 
	function initialize() 
	{ 
	timer=setInterval('scrollwindow()',10);
	} 
	function sc(){
	clearInterval(timer);	
	}
	function scrollwindow() 
	{ 
	currentpos=document.body.scrollTop; 
	window.scroll(0,++currentpos); 
	if (currentpos != document.body.scrollTop) 
	sc();
	} 
	document.onmousedown=sc
	document.ondblclick=initialize
//-->
</SCRIPT>

<DIV align=center>
<STYLE>.title0 {
	FONT-WEIGHT: bold; FONT-SIZE: 17px; COLOR: #ffffff; FONT-FAMILY: arial; TEXT-DECORATION: none
}
A.title2:link {
	COLOR: #000000; TEXT-DECORATION: none
}
A.title2:visited {
	COLOR: #000000; TEXT-DECORATION: none
}
A.title2:active {
	COLOR: #ff0000; TEXT-DECORATION: none
}
A.title2:hover {
	COLOR: #ff0000; TEXT-DECORATION: none
}
</STYLE>

<SCRIPT language=JavaScript>
<!--
function submitlog(sign)
{
	var types=document.alogon.type.options[document.alogon.type.selectedIndex].value;				
	if (document.alogon.name.value!="" && document.alogon.pass.value!="")
	{
		if (types!="1")
			document.alogon.action="http://www.csdn.net/member/logon.asp";
		else
			document.alogon.action="http://expert.csdn.net/member/logon.asp";
		if(sign)
			document.alogon.submit();
		//return true;
	}
	else
	{
		if (document.alogon.name.value=="")
			alert("请输入用户名!");
		if (document.alogon.pass.value=="")
			alert("请输入密码");
		return false;
	}
	return true;
}
function GetMyPass()
{
	if (document.alogon.name.value!="")
	{
		document.alogon.action="http://www.csdn.net/member/getpass.asp";
		document.alogon.submit();
	}
	else
	{
		alert("请在姓名输入框里输入用户名或注册EMAIL!");
	}	
}
// -->
</SCRIPT>

<TABLE cellSpacing=0 cellPadding=0 width=770 border=0>
  <TBODY>
  <TR>
    <TD width=20 bgColor=#004d99 height=25></TD>
    <FORM name=alogon onsubmit="return submit1(false);" action="" method=post 
    target=_blank>
    <TD bgColor=#004d99><FONT color=#ffffff>姓 名:</FONT> <INPUT 
      class=FormText_1 size=7 name=name> &nbsp;&nbsp; <FONT color=#ffffff>密 码: 
      <INPUT class=FormText_1 type=password size=7 name=pass> </FONT><SELECT 
      class=FormText_1 name=type> <OPTION value=1 selected>我的论坛</OPTION> 
        <OPTION value=2>我的软件</OPTION> <OPTION value=3>我的订单</OPTION> <OPTION 
        value=4>我的文档</OPTION> <OPTION value=5>我的简历</OPTION></SELECT><INPUT 
      type=image height=0 width=0> &nbsp;&nbsp; <A 
      onclick="submitlog(true);return false;" 
      href="http://www.csdn.net/develop/article/22/"><FONT color=#ffff33>进 
      入..</FONT></A>&nbsp;&nbsp; <A href="http://www.csdn.net/member/zc.asp" 
      target=_blank><FONT color=#ffff33>[注 册]</FONT></A> &nbsp;&nbsp; <A 
      href="javascript:GetMyPass()"><FONT color=#ffff33>忘记密码</FONT> 
    </A></TD></FORM>
    <TD align=right width=20 bgColor=#990000><IMG height=25 
      src="CSDN_Struts原理与应用(三).files/top_1.gif" width=20></TD>
    <FORM action=http://www.csdn.net/search_ok.asp method=post target=_blank>
    <TD align=right width=250 bgColor=#009999><FONT color=#ffffff><FONT 
      color=#ffffff><INPUT class=FormText_1 size=15 name=search> <SELECT 
      class=FormText_1 name=type> <OPTION value=1 selected>新闻标题</OPTION> 
        <OPTION value=2>软件名称</OPTION> <OPTION value=3>商品名称</OPTION> <OPTION 
        value=4>文档标题</OPTION> <OPTION value=6>职位名称</OPTION></SELECT> </FONT><INPUT class=td3 type=submit value="搜 索" name=Submit>&nbsp; 
    </FONT></TD></FORM></TR></TBODY></TABLE>
<TABLE cellSpacing=0 cellPadding=0 width=770 border=0>
  <TBODY>
  <TR>
    <TD align=middle width=150 height=70><IMG height=60 
      src="CSDN_Struts原理与应用(三).files/csdn.gif" width=120></TD>
    <TD align=middle width=470>
      <SCRIPT language=javascript>
	var rand = Math.random().toString(); 
	var ordval = parseInt(rand.substring(2,4)); 
	function Showad(width)
	{
		if(width=='468')
		{
				document.write("<a href='http://www.dearbook.com.cn/' target='_blank'><OBJECT classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000' codebase='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0' WIDTH=468 HEIGHT=60><PARAM NAME=movie VALUE='/adv//468x60.swf'> <PARAM NAME=quality VALUE=high> <EMBED src='/adv//468x60.swf' quality=high border=0 WIDTH=468 HEIGHT=60 TYPE='application/x-shockwave-flash' PLUGINSPAGE='http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash'></EMBED></OBJECT></a>");
				return;
		}
		if(width=='120')
		{
		}
		return;
	}
Showad('468')</SCRIPT>
    </TD>
    <TD align=middle width=150>
      <SCRIPT>Showad('120')</SCRIPT>
    </TD></TR></TBODY></TABLE>
<TABLE cellSpacing=0 cellPadding=0 width=770 border=0>
  <TBODY>
  <TR>
    <TD align=middle width=770 bgColor=#000000 colSpan=2 height=1></TD></TR>
  <TR>
    <TD align=middle width=150 bgColor=#004d99 height=28><FONT 
      class=title0>csdn.net</FONT></TD>
    <TD align=middle width=620>
      <SCRIPT src="CSDN_Struts原理与应用(三).files/navigation1.js"></SCRIPT>
    </TD></TR>
  <TR>
    <TD align=middle width=770 bgColor=#000000 colSpan=2 
  height=1></TD></TR></TBODY></TABLE>
<TABLE cellSpacing=0 cellPadding=0 width=770 border=0>
  <TBODY>
  <TR>
    <TD width=10 bgColor=#f3f9fc height=23></TD>
    <TD bgColor=#f3f9fc>
      <MARQUEE onmouseover=this.stop() onmouseout=this.start() scrollAmount=5 
      scrollDelay=80>
      <SCRIPT src="CSDN_Struts原理与应用(三).files/marquee.htm"></SCRIPT>
      </MARQUEE></TD>
    <TD align=right width=101 bgColor=#f3f9fc>
      <SCRIPT>document.write("<img src=http://count.csdn.net/count/pageview1.asp?columnid=4&itemid=11 border=0 width=0 height=0>");</SCRIPT>
      <B>
      <SCRIPT language=JavaScript>
			<!--
			document.ns = navigator.appName == "Netscape"
			tmpDate = new Date();
			date = tmpDate.getDate();
			month= tmpDate.getMonth() + 1 ; 
			if(document.ns)
			{
				year1=tmpDate.getYear()
				year= year1.toString().substr(1,2);
			}
			else
				year= tmpDate.getYear();
			
			document.write(year);
			document.write(".");
			document.write(month);
			document.write(".");
			document.write(date);
			// -->
			</SCRIPT>
      </B>&nbsp;&nbsp;</TD></TR>
  <TR bgColor=#999999>
    <TD colSpan=3 height=1></TD></TR></TBODY></TABLE>
<TABLE width=770 border=0>
  <TBODY>
  <TR>
    <TD class=td1 vAlign=top align=middle width=150 bgColor=#fafafa><BR><!--广告条开始//-->
      <SCRIPT src="CSDN_Struts原理与应用(三).files/sun.js"></SCRIPT>
<!--广告条结束//--></TD>
    <TD vAlign=top align=middle width=620><!--文章说明信息开始//-->
      <TABLE cellSpacing=0 cellPadding=0 width=600 bgColor=#eeeeee border=0>
        <TBODY>
        <TR bgColor=#ffffff>
          <TD align=middle width=50 height=10></TD>
          <TD align=right><A href="http://www.csdn.net/">CSDN</A> - <A 
            href="http://www.csdn.net/develop/">文档中心</A> - <FONT 
            color=#003399>Java</FONT>&nbsp;&nbsp;&nbsp;&nbsp;</TD></TR>
        <TR>
          <TD align=enter height=5></TD>
          <TD align=middle width=500 td <></TD>
        <TR>
          <TD align=middle bgColor=#003399 height=10><FONT 
            color=#ffffff>标题</FONT></TD>
          <TD><B>&nbsp;&nbsp;&nbsp;&nbsp;Struts原理与应用(三)</B>&nbsp;&nbsp;&nbsp;&nbsp;icecloud(原作)</TD></TR>
        <TR>
          <TD align=middle height=5></TD>
          <TD align=middle width=500></TD></TR>
        <TR>
          <TD align=middle bgColor=#003399><FONT color=#ffffff>关键字</FONT></TD>
          <TD width=500>&nbsp;&nbsp;&nbsp;&nbsp;struts</TD></TR>
        <TR>
          <TD align=middle height=5></TD>
          <TD align=middle width=500></TD></TR></TBODY></TABLE><!--文章说明信息结束//-->
      <TABLE width=600 border=0>
        <TBODY>
        <TR>
          <TD align=left><!--内容开始//--><BR>
            <H1>Chapter 5: Struts Work Flow </H1>
            <P><FONT color=blue>Struts principle and 
            practice&nbsp;</FONT><BR><BR>&nbsp;<IMG alt="" hspace=0 
            src="CSDN_Struts原理与应用(三).files/CSDN_Dev_Image_2003-12-52030180.jpg" 
            align=baseline border=0> 
            <P>上图是Struts的工作流程,前边我们提到,所有的请求都提交给ActionServlet来处理。 
            <P><STRONG>ActionServlet</STRONG>是一个FrontController,它是一个标准的Servlet,它将request转发给RequestProcessor来处理, 

            <P><STRONG>ActionMapping</STRONG>是ActionConfig的子类,实质上是对struts-config.xml的一个映射,从中可以取得所有的配置信息 

            <P><STRONG>RequestProcessor</STRONG>根据提交过来的url,如*.do,从ActionMapping 
            中得到相应的ActionForn和Action。然后将request的参数对应到ActionForm中,进行form验证。如果验证通过则调用Action的execute()方法来执行Action,最终返回ActionFoward。 

            <P><STRONG>ActionFoward</STRONG>是对mapping中一个foward的包装,对应于一个url 
            <P><STRONG>ActionForm</STRONG>使用了ViewHelper模式,是对HTML中form的一个封装。其中包含有validate方法,用于验证form数据的有效性。ActionForm是一个符合JavaBean规范的类,所有的属性都应满足get和set对应。对于一些复杂的系统,还可以采用DynaActionForm来构造动态的Form,即通过预制参数来生成Form。这样可以更灵活的扩展程序。 

⌨️ 快捷键说明

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