`

struts示例

阅读更多
Struts 1.1 安装、示例篇


作者:未知    文章来源:www.jspcn.net
发布日期:2005年01月19日    浏览次数:2283次
在前一篇文章中,我们详细的介绍了Struts 1.1 的工作原理,接着将会介绍它的安装,以及一个具体的应用。
1. Struts 1.1 安装
安装Struts 1.1 比较简单。假设我们使用的是Tomcat 5.0,并且安装在D: omcat下。首先,请到http://jakarta.apache.org/struts/ 下载Struts 1.1,解压缩后,可以看到jakarta-struts-1.1目录,在这个目录下面,你可以看到这样一个目录:webapps.该目录下面有多个*.war,我们copy struts-blank.war 文件到D: omcatwebapps下,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.java
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;
}
}
这个页面为ActionForm bean ,主要是用来封装客户端的用户名与密码。
2.3 LogonAction.java
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”) && 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 : *.properties

3. 总结
本文详细讲解了安装方法,并且举了一个登陆例子作为Struts框架应用。另外,本文对Struts的目录结构也有说明,这大大减轻了初学者学习负担,应该可以作为Struts入门之用。  
分享到:
评论

相关推荐

    struts示例程序.rar

    这个"struts示例程序.rar"压缩包提供了一个实际的Struts2项目,旨在帮助开发者理解和学习Struts2框架的基本操作和核心概念。以下是关于Struts2框架的关键知识点和在压缩包中的应用: 1. **MVC模式**:Struts2基于...

    wincvs、ajaxanywhere+struts示例+easyjweb指南

    【标题】"wincvs、ajaxanywhere+struts示例+easyjweb指南"涉及的是几个关键的IT技术领域,主要包括版本控制系统Wincvs、Web开发框架Struts与AjaxAnywhere的集成应用以及轻量级Java Web开发框架EasyJWeb的使用教程。...

    servlet、spring、Struts示例代码

    "**tstruts.zip**"文件可能包含了Struts 1或Struts 2的配置文件、Action类、JSP页面和相关的拦截器示例。 这些示例代码对初学者来说非常有价值,因为它们可以提供实际操作的经验,帮助理解这些技术的工作原理。通过...

    扩展Struts示例程序的代码

    使用一个Struts应用的示例来示范如何使用这三种方式来扩展Struts。两个扩展Struts成功的范例是Struts自身的Validation和Tiles框架 用到了Hibernate, Spring, Struts的结构 此源代码教程: ...

    Struts2示例demo

    描述中的"Struts示例demo"进一步强调了这是一个实践性的教程,旨在帮助开发者理解并掌握Struts2的核心概念和工作流程。 标签"Struts2demo"表明这是一个关于Struts2的实例,可能涵盖了Action、Interceptor、Result...

    一个很好的struts源代码示例

    开发者可以导入这个SQL文件到数据库,以便于运行和测试Struts示例。 8. **CRUD操作**:在Struts中,CRUD操作通过ActionForm收集用户输入,然后Action类调用DAO进行数据操作。比如,"添加"操作可能涉及创建一个新的...

    struts2 入门示例程序

    struts2 入门示例程序struts2 入门示例程序struts2 入门示例程序struts2 入门示例程序struts2 入门示例程序struts2 入门示例程序struts2 入门示例程序struts2 入门示例程序

    struts 2.3.7 简单示例

    struts 2.3.7简单示例。 示例实现用户登录功能,由于该示例是ssh整合的第一步,所以并未包含Spring、Hibernate框架,仅是Struts2的示例。 如果需要其他整合,请看:http://blog.csdn.net/xz2001/

    struts taglib使用示例

    struts taglib使用示例 struts taglib使用示例 struts taglib使用示例struts taglib使用示例 struts taglib使用示例

    struts教程,tomcat,配置到实例

    Struts教程:从基础到高级配置到实例 Struts是一个基于MVC(Model-View-Controller)设计模式的Java Web应用程序框架,它主要用于构建结构清晰、可维护性强的Web应用。Tomcat则是一款流行的开源Java Servlet容器,...

    精通Struts技术.pdf

    下面是一个简单的Struts视图组件的示例代码: ```jsp &lt;%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %&gt; &lt;title&gt;Struts 示例 提交" /&gt; ``` 在这个示例中,使用了Struts的HTML标签库来...

    struts1示例代码

    这个"struts1示例代码"是针对Struts1框架的一个实例,用于演示如何实现一个简单的登录功能,并且详细展示了Struts1的配置过程。 首先,我们要理解Struts1的核心概念: 1. **Action类**:在Struts1中,Action类是...

    struts2示例(包括tomcat连接池)

    struts2示例(包括tomcat连接池)struts2示例(包括tomcat连接池)struts2示例(包括tomcat连接池)

    struts2示例程序demo非常好

    这个"struts2示例程序demo非常好"的压缩包很可能是为了帮助开发者理解和学习Struts2框架的工作原理和最佳实践。下面我们将深入探讨Struts2的核心特性、工作流程以及如何通过示例程序进行学习。 首先,Struts2是...

    Struts2示例2

    在"Struts2示例2"中,我们可以深入探索Struts2的核心功能和常见用法。 首先,让我们来看看3.9、3.10、3.8、3.11这些版本号。它们代表了Struts2的不同版本。Struts2会定期发布更新,以修复已知问题、增强性能和引入...

    struts2示例程序

    这个"struts2示例程序"是为了帮助初学者理解并熟悉Struts2框架的基本概念和工作流程。该程序基于Struts2的2.0.14版本,这是Struts2的一个较早版本,但其核心概念和机制在后续版本中仍然适用。 Struts2的核心特性...

    完整struts2文件上传示例

    以下是对"完整Struts2文件上传示例"的详细解释: 1. **配置Struts2框架** 在Struts2中,我们首先需要在`struts.xml`配置文件中添加相关的拦截器(interceptor)来处理文件上传。`struts.multipart.parser`属性应...

    struts example

    2. **源码下载.txt** - 这个文件很可能包含了Struts示例项目的源代码下载地址,供用户参考和学习。通过阅读和分析这些源代码,开发者可以了解Struts框架在实际开发中的具体实现,包括控制器、模型和视图的交互,以及...

    MyEclipse_Struts_Quickstart

    本教程旨在引导读者通过使用MyEclipse Enterprise Workbench来开发和测试一个简单的Struts示例应用。即便之前没有Struts或MyEclipse的经验也无妨。由于Struts框架与JSF(JavaServer Faces)在某些方面具有相似性,...

Global site tag (gtag.js) - Google Analytics