根据Struts in action 的第一章
struts组件图:
Struts的核心是ActionServlet ,ActionServlet控制导航流,当用户在IE 客户端的地址栏输入一个地址,ActionServlet就从容器接受到这个请求,它使用URI来决定哪个action来处理这个请求,请求输入的数据是由ActionServlet来绑定javabean(即formbean);每个请求都必须以 HTTP 响应进行应答,struts提供的核心类ActionForward 用来将一个页面的路径保存为逻辑名称,当完成业务逻辑后, Action 选择并向 Servlet 返回一个ActionForward, Servlet 然后使用保存在 ActionForward 对象中的路径来调用页面完成响应。
Action类:
public class RegisterAction extends Action {
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception{
RegisterForm rf = (RegisterForm)form;
String username = rf.getUsername();
String password1 = rf.getPassword1();
String password2 = rf.getPassword2();
ActionForward forward = new ActionForward();
if(password1.equals(password2)){
try{
// ((UserDirectory) UserDirectory.getInstence()).setUser(username, password1);
forward = mapping.findForward("success");
}catch(Exception e){
forward = mapping.findForward("failure");
}
} else{
forward = mapping.findForward("failure");
}
return forward;
}
}
form:
public class RegisterForm extends ActionForm {
private String password2;
private String password1;
private String username;
public String getPassword1() {
return password1;
}
public void setPassword1(String password1) {
this.password1 = password1;
}
public String getPassword2() {
return password2;
}
public void setPassword2(String password2) {
this.password2 = password2;
}
public String getUsername() {
return username;
}
public void setUsername(String usename) {
this.username = usename;
}
}
struts-config.xml配置文件:
<?xml version="1.0" encoding="UTF-8"?>
<!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>
<data-sources />
<form-beans>
<form-bean name="registerForm" type="com.app.RegisterForm">
</form-bean>
</form-beans>
<global-exceptions />
<global-forwards />
<action-mappings>
<action path="/registerAction" name="registerForm" scope="request" type="com.app.RegisterAction" >
<forward name="success" path="/page/app/success.jsp"></forward>
<forward name="failure" path="/page/app/failure.jsp"></forward>
<forward name="register" path="/page/app/register.jsp"></forward>
</action>
</action-mappings>
<message-resources parameter="com.yourcompany.struts.ApplicationResources" />
</struts-config>
页面:
1.register.jsp:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<%@ page
language="java"
contentType="text/html; charset=GB18030"
pageEncoding="GB18030"
%>
<HTML>
<HEAD>
<TITLE>register</TITLE>
</HEAD>
<BODY>
<P><html:form action="/registerAction.do">
用户名:<html:text property="username"></html:text><BR>
密码1: <html:text property="password1"></html:text><BR>
密码2: <html:text property="password2"></html:text><BR>
<html:submit value="Register"></html:submit>
</html:form></P>
</BODY>
</HTML>
2.success.jsp
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML>
<HEAD>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<%@ page
language="java"
contentType="text/html; charset=GB18030"
pageEncoding="GB18030"
%>
<TITLE>注册成功</TITLE>
</HEAD>
<BODY>
<P>注册成功!</P>
<P><BR>
<BR>
<A href="page/app/register.jsp">再试一次</A>
</P>
</BODY>
</HTML>
3.failure.jsp
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML>
<HEAD>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<%@ page
language="java"
contentType="text/html; charset=GB18030"
pageEncoding="GB18030"
%>
<TITLE>注册失败</TITLE>
</HEAD>
<BODY>
<P>注册失败!</P>
<P><BR>
<BR>
<A href="
page/app/register.jsp">再试一次</A>
</P>
</BODY>
</HTML>
需要注意配置的地方是action-mappings 中的action属性里的path 的值要和主页面里的
action的值保持一致(区分大小写);fref 的路径的开头不写/ ;在IE里面输入地址时应输入类似于:http://localhost:8088/test/page/app/register.jsp
(test为工程名,page、app为页面的路径)
- 大小: 19.2 KB
分享到:
相关推荐
struts例子struts例子struts例子struts例子struts例子struts例子struts例子struts例子struts例子struts例子struts例子struts例子struts例子
struts例子struts例子struts例子struts例子struts例子struts例子struts例子struts例子struts例子struts例子struts例子struts例子struts例子struts例子struts例子
网站 开发 struts 例子网站 开发 struts 例子网站 开发 struts 例子网站 开发 struts 例子网站 开发 struts 例子网站 开发 struts 例子
这个“struts2简单例子”是初学者理解Struts2工作原理和核心概念的一个很好的起点。让我们深入探讨一下Struts2的基础知识。 1. **MVC架构**: MVC模式是软件设计中的一个经典模式,它将应用逻辑分为三个主要部分:...
在这个"struts的一个例子"中,我们将深入探讨Struts框架的基本概念和工作原理。 首先,让我们理解MVC模式。在MVC架构中,Model代表业务逻辑和数据,View负责展示用户界面,而Controller作为中介,处理用户请求并...
在这个"liferay 整合struts例子"中,我们可以学习到以下几个关键知识点: 1. **Liferay Portal架构**:Liferay的核心在于其portlet架构,portlet是可重用的Web组件,可以独立于其他portlet运行。Liferay提供了一个...
这个“struts2完整例子”压缩包提供了学习和理解Struts2核心概念的实际示例。让我们深入探讨一下Struts2的关键知识点。 1. **MVC架构**:Struts2遵循MVC设计模式,它将业务逻辑(模型)、用户界面(视图)和应用...
这个"struts小例子"应该是博主在学习Struts框架过程中的一些实践项目和代码示例,非常适合初学者用来理解并熟悉Struts的核心概念和工作原理。 Struts框架的核心组成部分包括Action、ActionForm、ActionServlet、...
在这个“Struts2小例子”中,我们将深入理解Struts2的核心概念以及如何通过它来实现一个简单的用户登录功能。 首先,让我们了解一下Struts2框架的基本结构。Struts2提供了一个灵活的控制器组件,允许开发者通过...
struts 项目 例子struts 项目 例子struts 项目 例子struts 项目 例子struts 项目 例子struts 项目 例子struts 项目 例子struts 项目 例子struts 项目 例子struts 项目 例子struts 项目 例子struts 项目 例子struts ...
这个"struts 简单例子"很可能是为了帮助初学者理解Struts框架的基本工作原理和流程,特别是如何实现登录和注册功能。下面我们将深入探讨Struts框架的核心概念、配置以及在实际应用中的步骤。 1. **Struts框架基础**...
在这个“Struts例子.rar”压缩包中,我们可能找到了一个实际的Struts应用项目,名为"Project",这将包含了一系列用于演示Struts功能的源代码和配置文件。 首先,我们需要理解Struts的核心组件。`struts-config.xml`...
这个"struts简单例子(4)"是一个专门为初学者准备的教程,旨在帮助他们理解并掌握Struts框架的基础用法。 在Struts框架中,模型(Model)通常由业务逻辑组件构成,负责处理数据;视图(View)是用户界面,展示数据;...
本例子旨在帮助理解Struts2的基本概念、配置以及工作流程,通过实际操作来展示其核心功能。 首先,我们需要了解Struts2的核心组件。Controller部分由Struts2的Action类实现,它处理用户请求并调用相应的业务逻辑。...
Struts2是一个强大的Java web应用程序框架,用于构建和部署可维护、高性能的企业级应用。它在MVC(Model-View-Controller)设计模式的基础上提供了一种结构化开发的方法,简化了从前基于Servlet和JSP的复杂编码过程...
这个"struts2入门例子"旨在帮助初学者理解Struts2的基本架构和核心功能,通过实际操作来学习如何配置Struts2框架以及实现页面跳转。 在Struts2中,`struts.xml`是核心配置文件,它是整个应用的入口点,负责定义动作...
通过以上介绍,我们可以看出Struts2标签库为Web开发带来了很多便利。在实际项目中,开发者可以根据需要选择合适的标签来构建用户界面,提高开发效率。在压缩包中的"example"文件可能包含了一个或多个使用Struts2标签...
这个“一个Struts的简单例子”提供了一个基础的用户登录应用,非常适合初学者了解和学习Struts框架的基本用法。下面将详细解释这个例子中的关键知识点。 1. **MVC设计模式**: MVC模式是Web应用程序开发中常见的...
### Struts1编程示例详解:在MyEclipse中实现登录功能 在深入探讨如何在MyEclipse中使用Struts1框架构建一个简单的登录系统之前,让我们先对Struts1有个基本了解。Struts1是Apache软件基金会的一个开源项目,它提供...