Struts 1.1 安装、示例篇

1. Struts 1.1 安装

安装Struts 1.1 比较简单。假设我们使用的是Tomcat 5.0,并且安装在D:\tomcat下。首先,请到http://jakarta.apache.org/struts/ 下载Struts 1.1,解压缩后,可以看到jakarta-struts-1.1目录,在这个目录下面,你可以看到这样一个目录:webapps.该目录下面有多个*.war,我们copy struts-blank.war 文件到D:\tomcat\webapps下,restart Tomcat,在Tomcat 的webapps下就会生成一个struts-blank空白Struts开发环境。另外,在你解压缩的目录下的webapps中 struts-example.war 是一个很好的struts学习教程,如果你想深入学习请访问http://jakarta.apache.org/struts 或者 下载 《Struts in Action》 E 文版。

2. 一个简单的例子

2.1 Logon.jsp

<ccid_nobr><table cellspacing="0" bordercolordark="#ffffff" cellpadding="2" width="400" align="center" bordercolorlight="black" border="1"><tbody><tr><td class="code" style="FONT-SIZE: 9pt" bgcolor="#e6e6e6"><pre><ccid_code>&lt;%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %&gt; &lt;%@ page contentType="text/html; charset=gb2312" %&gt; &lt;% /** * This page shows Logon interface. * Title: LOGON SYSTEM * Description: Logon Page * Copyright: Copyright (c) 2004 * Company: www.ewe.com.cn * @author bluesunny &lt;hyjun2001@163.com&gt; * @version 1.0 */ response.setHeader("Pragma","No-cache"); response.setHeader("Cache-Control","no-cache"); response.setDateHeader("Expires", 0); %&gt; &lt;html&gt; &lt;head&gt; &lt;title&gt;Logon&lt;/title&gt; &lt;/head&gt; &lt;body&gt; &lt;html:errors/&gt; &lt;html:form action="/Logon" focus="username"&gt; username:&lt;html:text property="username" size="25"/&gt; password:&lt;html:password property="password" size="25"/&gt; &lt;html:submit property=”submit”/&gt; &lt;/html:form&gt; &lt;/body&gt; &lt;/html&gt;</ccid_code></pre></td></tr></tbody></table></ccid_nobr>

页面为用户登陆页面,应用到Struts的html标签。

2.2 LogonForm.java

<ccid_nobr><table cellspacing="0" bordercolordark="#ffffff" cellpadding="2" width="400" align="center" bordercolorlight="black" border="1"><tbody><tr><td class="code" style="FONT-SIZE: 9pt" bgcolor="#e6e6e6"><pre><ccid_code>package com.logon.app; import javax.servlet.http.*; import org.apache.struts.action.*; /** * This page shows LogonForm.java * Title: LOGON SYSTEM * Description: LogonForm Page * Copyright: Copyright (c) 2004 * Company: www.ewe.com.cn * @author bluesunny * @version 1.0 */ public class LogonForm extends ActionForm{ private String username; private String password; public LoginForm() { username = null; password = null; } public void setUsername(String username){ this.username = username; } public String getUsername() { return this.username; } public void setPassword(String password){ this.password = password; } public String getPassword(){ return this.password; } public void reset(ActionMapping mapping, HttpServletRequest request) { username = null; password = null; } }</ccid_code></pre></td></tr></tbody></table></ccid_nobr>

这个页面为ActionForm bean ,主要是用来封装客户端的用户名与密码。

2.3 LogonAction.java

<ccid_nobr><table cellspacing="0" bordercolordark="#ffffff" cellpadding="2" width="400" align="center" bordercolorlight="black" border="1"><tbody><tr><td class="code" style="FONT-SIZE: 9pt" bgcolor="#e6e6e6"><pre><ccid_code>package com.logon.app; import java.io.*; import java.sql.*; import org.apache.struts.action.Action; import org.apache.struts.action.ActionForward; import org.apache.struts.action.ActionMapping; import org.apache.struts.action.ActionForm; import javax.servlet.*; import javax.servlet.http.*; import org.apache.struts.action.*; /** * This page shows LogonAction.java * Title: LOGON SYSTEM * Description: LogonAction Page * Copyright: Copyright (c) 2004 * Company: www.ewe.com.cn * @author bluesunny * @version 1.0 */ public class LogonAction extends Action{ public ActionForward execute(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest request, HttpServletResponse response)throws Exception { LogonForm form = (LogonForm)actionForm; ActionErrors errors = new ActionErrors(); String username = form.getUsername(); String password = form.getPassword(); If(username.equals(“bluesunny”) &amp;&amp; password.equals(“bluesunny”)){ return actionMapping.findForward("success"); }else{ errors.add("login",new ActionError("Logon.failed")); saveErrors(request,errors); return actionMapping.findForward("failed"); } } }</ccid_code></pre></td></tr></tbody></table></ccid_nobr>

取得ActionForm中的数据,进行处理,处理结果返回到Jsp页面。

2.4 web.xml

<ccid_nobr><table cellspacing="0" bordercolordark="#ffffff" cellpadding="2" width="400" align="center" bordercolorlight="black" border="1"><tbody><tr><td class="code" style="FONT-SIZE: 9pt" bgcolor="#e6e6e6"><pre><ccid_code>&lt;?xml version="1.0" encoding="ISO-8859-1"?&gt; &lt;!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/j2ee/dtds/web-app_2_3.dtd"&gt; &lt;web-app&gt; &lt;display-name&gt;Struts Logon Application&lt;/display-name&gt; &lt;!-- Standard Action Servlet Configuration (with debugging) --&gt; &lt;servlet&gt; &lt;servlet-name&gt;action&lt;/servlet-name&gt; &lt;servlet-class&gt;org.apache.struts.action.ActionServlet&lt;/servlet-class&gt; &lt;init-param&gt; &lt;param-name&gt;config&lt;/param-name&gt; &lt;param-value&gt;/WEB-INF/struts-config.xml&lt;/param-value&gt; &lt;/init-param&gt; &lt;init-param&gt; &lt;param-name&gt;debug&lt;/param-name&gt; &lt;param-value&gt;2&lt;/param-value&gt; &lt;/init-param&gt; &lt;init-param&gt; &lt;param-name&gt;detail&lt;/param-name&gt; &lt;param-value&gt;2&lt;/param-value&gt; &lt;/init-param&gt; &lt;load-on-startup&gt;2&lt;/load-on-startup&gt; &lt;/servlet&gt; &lt;!-- Standard Action Servlet Mapping --&gt; &lt;servlet-mapping&gt; &lt;servlet-name&gt;action&lt;/servlet-name&gt; &lt;url-pattern&gt;*.do&lt;/url-pattern&gt; &lt;/servlet-mapping&gt; &lt;!-- The Welcome File List --&gt; &lt;welcome-file-list&gt; &lt;welcome-file&gt;logon.jsp&lt;/welcome-file&gt; &lt;/welcome-file-list&gt; &lt;!-- Struts Tag Library Descriptors --&gt; &lt;taglib&gt; &lt;taglib-uri&gt;/tags/struts-bean&lt;/taglib-uri&gt; &lt;taglib-location&gt;/WEB-INF/struts-bean.tld&lt;/taglib-location&gt; &lt;/taglib&gt; &lt;taglib&gt; &lt;taglib-uri&gt;/tags/struts-html&lt;/taglib-uri&gt; &lt;taglib-location&gt;/WEB-INF/struts-html.tld&lt;/taglib-location&gt; &lt;/taglib&gt; &lt;taglib&gt; &lt;taglib-uri&gt;/tags/struts-logic&lt;/taglib-uri&gt; &lt;taglib-location&gt;/WEB-INF/struts-logic.tld&lt;/taglib-location&gt; &lt;/taglib&gt; &lt;taglib&gt; &lt;taglib-uri&gt;/tags/struts-nested&lt;/taglib-uri&gt; &lt;taglib-location&gt;/WEB-INF/struts-nested.tld&lt;/taglib-location&gt; &lt;/taglib&gt; &lt;taglib&gt; &lt;taglib-uri&gt;/tags/struts-tiles&lt;/taglib-uri&gt; &lt;taglib-location&gt;/WEB-INF/struts-tiles.tld&lt;/taglib-location&gt; &lt;/taglib&gt; &lt;/web-app&gt;</ccid_code></pre></td></tr></tbody></table></ccid_nobr>

2.5 struts-config.xml

<ccid_nobr><table cellspacing="0" bordercolordark="#ffffff" cellpadding="2" width="400" align="center" bordercolorlight="black" border="1"><tbody><tr><td class="code" style="FONT-SIZE: 9pt" bgcolor="#e6e6e6"><pre><ccid_code>&lt;?xml version="1.0" encoding="ISO-8859-1" ?&gt; &lt;!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN" "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd"&gt; &lt;struts-config&gt; &lt;form-beans&gt; &lt;form-bean name="logonForm" type=" com.logon.app.LoginForm"/&gt; &lt;/form-beans&gt; &lt;action-mappings&gt; &lt;action path="/Logon" type="com.logon.app.LogonAction" name="logonForm" scope="request" input="Logon.jsp"&gt; &lt;forward name="success" path="/success.jsp"/&gt; &lt;forward name="failure" path="/Logon.jsp"/&gt; &lt;/action&gt; &lt;message-resources parameter="resources.application"/&gt; &lt;/struts-config&gt;</ccid_code></pre></td></tr></tbody></table></ccid_nobr>

2.6 application.properties

<ccid_nobr><table cellspacing="0" bordercolordark="#ffffff" cellpadding="2" width="400" align="center" bordercolorlight="black" border="1"><tbody><tr><td class="code" style="FONT-SIZE: 9pt" bgcolor="#e6e6e6"><pre><ccid_code>Logon.failed = Logon failed!Please Logon in again!</ccid_code></pre></td></tr></tbody></table></ccid_nobr>

2.7 deploy Logon Application

创建一个success.jsp,输入:"successflly!".

编译源文件,并且把该应用程序部署在TOMCAT里,假设部署在app目录下面。我们可以启动浏览器访问:http://localhost:8080/app/.

2.8 目录结构

<ccid_nobr><table cellspacing="0" bordercolordark="#ffffff" cellpadding="2" width="400" align="center" bordercolorlight="black" border="1"><tbody><tr><td class="code" style="FONT-SIZE: 9pt" bgcolor="#e6e6e6"><pre><ccid_code>/WEB-INF : / WEB-INF/lib : Struts.jar / WEB-INF/classes : / WEB-INF/classes/com/logon/app : *.class / WEB-INF/classes/resources : *.properties</ccid_code></pre></td></tr></tbody></table></ccid_nobr>

3. 总结

本文详细讲解了安装方法,并且举了一个登陆例子作为Struts框架应用。另外,本文对Struts的目录结构也有说明,这大大减轻了初学者学习负担,应该可以作为Struts入门之用。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值