Struts 1.1 安装、示例篇
来源:互联网 发布:淘宝开店步骤教程视频 编辑:程序博客网 时间:2024/06/04 08:37
<script type="text/javascript">google_ad_client = "pub-8800625213955058";/* 336x280, 创建于 07-11-21 */google_ad_slot = "0989131976";google_ad_width = 336;google_ad_height = 280;//</script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script> 在前一篇文章中,我们详细的介绍了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<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %><%@ page contentType="text/html; charset=gb2312" %><%/** * This page shows Logon interface. * Title: LOGON SYSTEM * Description: Logon Page * Copyright: Copyright (c) 2004 * Company: www.ewe.com.cn * @author bluesunny <hyjun2001@163.com> * @version 1.0 */response.setHeader("Pragma","No-cache"); response.setHeader("Cache-Control","no-cache"); response.setDateHeader("Expires", 0); %><html><head><title>Logon</title></head><body><html:errors/><html:form action="/Logon" focus="username">username:<html:text property="username" size="25"/>password:<html:password property="password" size="25"/><html:submit property=”submit”/></html:form></body></html>页面为用户登陆页面,应用到Struts的html标签。2.2 LogonForm.javapackage 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 <hyjun2001@163.com> * @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;}} 这个页面为ActionForm bean ,主要是用来封装客户端的用户名与密码。2.3 LogonAction.javapackage 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 <hyjun2001@163.com> * @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”) && password.equals(“bluesunny”)){return actionMapping.findForward("success");}else{errors.add("login",new ActionError("Logon.failed"));saveErrors(request,errors);return actionMapping.findForward("failed");}}}取得ActionForm中的数据,进行处理,处理结果返回到Jsp页面。2.4 web.xml<?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/j2ee/dtds/web-app_2_3.dtd"><web-app> <display-name>Struts Logon Application</display-name> <!-- Standard Action Servlet Configuration (with debugging) --> <servlet> <servlet-name>action</servlet-name> <servlet-class>org.apache.struts.action.ActionServlet</servlet-class> <init-param> <param-name>config</param-name> <param-value>/WEB-INF/struts-config.xml</param-value> </init-param> <init-param> <param-name>debug</param-name> <param-value>2</param-value> </init-param> <init-param> <param-name>detail</param-name> <param-value>2</param-value> </init-param> <load-on-startup>2</load-on-startup> </servlet> <!-- Standard Action Servlet Mapping --> <servlet-mapping> <servlet-name>action</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping><!-- The Welcome File List --> <welcome-file-list> <welcome-file>logon.jsp</welcome-file> </welcome-file-list> <!-- Struts Tag Library Descriptors --> <taglib> <taglib-uri>/tags/struts-bean</taglib-uri> <taglib-location>/WEB-INF/struts-bean.tld</taglib-location> </taglib> <taglib> <taglib-uri>/tags/struts-html</taglib-uri> <taglib-location>/WEB-INF/struts-html.tld</taglib-location> </taglib> <taglib> <taglib-uri>/tags/struts-logic</taglib-uri> <taglib-location>/WEB-INF/struts-logic.tld</taglib-location> </taglib> <taglib> <taglib-uri>/tags/struts-nested</taglib-uri> <taglib-location>/WEB-INF/struts-nested.tld</taglib-location> </taglib> <taglib> <taglib-uri>/tags/struts-tiles</taglib-uri> <taglib-location>/WEB-INF/struts-tiles.tld</taglib-location> </taglib></web-app>2.5 struts-config.xml<?xml version="1.0" encoding="ISO-8859-1" ?><!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN" "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd"><struts-config><form-beans> <form-bean name="logonForm" type=" com.logon.app.LoginForm"/></form-beans><action-mappings> <action path="/Logon" type="com.logon.app.LogonAction" name="logonForm" scope="request" input="Logon.jsp"> <forward name="success" path="/success.jsp"/> <forward name="failure" path="/Logon.jsp"/></action><message-resources parameter="resources.application"/></struts-config>2.6 application.properties Logon.failed = Logon failed!Please Logon in again!2.7 deploy Logon Application 创建一个success.jsp,输入:"successflly!". 编译源文件,并且把该应用程序部署在TOMCAT里,假设部署在app目录下面。我们可以启动浏览器访问:http://localhost:8080/app/.2.8 目录结构 /WEB-INF : / WEB-INF/lib : Struts.jar / WEB-INF/classes : / WEB-INF/classes/com/logon/app : *.class / WEB-INF/classes/resources : *.properties3. 总结 本文详细讲解了安装方法,并且举了一个登陆例子作为Struts框架应用。另外,本文对Struts的目录结构也有说明,这大大减轻了初学者学习负担,应该可以作为Struts入门之用。