=================
<html:form action="/register">
html:form action="/register">
input type="hidden" name="meththod" value="register">
password : html:text property="password"/>html:errors property="password"/>br/>
user : html:text property="user"/>html:errors property="user"/>br/>
email : html:text property="email"/>html:errors property="email"/>br/>
name : html:text property="name"/>html:errors property="name"/>br/>
html:submit/>html:cancel/>
/html:form>
<html:submit>
</html:submit>
<html:cancel>
</html:cancel>
</html:form>
============
业务逻辑层Ation
/*
* Generated by MyEclipse Struts
* Template path: templates/java/JavaClass.vtl
*/
package com.yourcompany.struts.action;
import java.lang.reflect.InvocationTargetException;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.beanutils.BeanUtils;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.actions.DispatchAction;
import com.yourcompany.struts.form.RegisterForm;
import com.yourcompany.DTO.User;
import com.yourcompany.DTO.Usertt;
import com.yourcompany.DAO.UserDAO;
import com.yourcompany.DAO.UserttDAO;
/**
* MyEclipse Struts
* Creation date: 09-27-2007
*
* XDoclet definition:
* @struts.action path="/register" name="RegisterForm" scope="request"
*/
public class RegisterAction extends DispatchAction {
/*
* Generated Methods
*/
/**
* Method execute
* @param mapping
* @param form
* @param request
* @param response
* @return ActionForward
*/
public ActionForward register(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
RegisterForm registerForm = (RegisterForm) form;
Usertt user = new Usertt();
try {
BeanUtils.copyProperties(user, registerForm);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
UserttDAO userDAO = new UserttDAO();
boolean regflag = userDAO.save(user);
if(regflag ){
return mapping.findForward("reg");
}
return mapping.getInputForward();
}
public ActionForward findAll(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
UserttDAO userDAO = new UserttDAO();
List users = userDAO.findAll();
request.getSession().setAttribute("list", users);
return mapping.findForward("list");
}
public ActionForward delete(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
RegisterForm registerForm = (RegisterForm) form;
Usertt user = new Usertt();
UserttDAO userDAO = new UserttDAO();
try {
BeanUtils.copyProperties(user, registerForm);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
userDAO.delete(user);
return findAll(mapping,form,request,response);
}
public ActionForward modify(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
RegisterForm registerForm = (RegisterForm) form;
Usertt user = new Usertt();
UserttDAO userDAO = new UserttDAO();
try {
BeanUtils.copyProperties(user, registerForm);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
userDAO.update(user);
return findAll(mapping,form,request,response);
}
public ActionForward findByName(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
RegisterForm registerForm = (RegisterForm) form;
Usertt user = new Usertt();
UserDAO userDAO = new UserDAO();
try {
BeanUtils.copyProperties(user, registerForm);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
User user1 = userDAO.findByName(user);
request.setAttribute("user", user1);
return mapping.findForward("find");
}
}
-------------
数据显示和删除更新操作
<html:form action="/register">
c:forEach items="$list}" var="users">
$users.name }
$users.password }
$users.user }
$users.email }
a href=request.getContextPath()/register.do?method=delete&id=$users.id}>删除/a
a href=request.getContextPath()/register.do?method=modify&id=$users.id}>编辑/a
/c:forEach
</html:form>
<c:foreach var="users" items="${list}">
删除
编辑
</c:foreach>
分享到:
相关推荐
如果希望一个Action处理多个请求,可以在同一个`<action>`元素内添加多个`<result>`子元素,每个`<result>`对应一个不同的请求。例如: ```xml <action name="myAction" class="com.example.MyAction"> ...
Struts2是一个强大的Java web应用程序框架,用于构建和管理MVC(模型-视图-控制器)架构的应用程序。在Struts2中,Action是核心组件,它负责接收HTTP请求并处理业务逻辑。这篇博客主要讨论了如何配置Struts2 Action...
1. **单一Action处理多个业务**:在一个Action类中定义多个方法,每个方法对应一个业务,然后在struts-config.xml配置文件中为每个方法指定不同的`<action>`元素。请求参数可以用来区分调用哪个方法。 2. **使用...
在"struts2.0.6多个action处理"这个主题中,我们将深入探讨如何在Struts2框架下管理并执行多个Action。这通常涉及到配置、映射和Action类的设计,以及请求的路由。 1. **Action配置**:在Struts2中,Action是业务...
利用Struts 2框架创建一个web项目chap2_e22,实现用户登录过程。具体要求是在loginAction类中分别用login()和registered()处理用户登录和注册的过程,分别创建login.jsp和register.jsp两个页面实现登录和注册的...
根据提供的文件信息,我们可以从《Struts 2实战 Struts2 in Action》这一书籍中提炼出与Struts 2框架相关的多个重要知识点。Struts 2是一个基于Java的开源Web应用框架,它继承了Struts 1的优点并进行了大量的改进和...
Struts2.0是Java Web开发中的一个框架,它的核心组件是Action,它负责处理用户的请求并进行业务逻辑处理。相较于Struts 1.x,Struts 2.0的Action模型有着显著的区别。 在Struts 1.x中,Action类需要继承`org.apache...
这里定义了一个名为 `login` 的 Action,当表单提交到 `/login.action` 时,Struts2 将会调用 `action.LoginAction` 类来处理这个请求。如果 `LoginAction` 返回 `"success"`,那么根据配置的 `redirect-action` ...
Struts 2.0 是一个基于 Model-View-Controller (MVC) 设计模式的Java Web框架,它极大地简化了开发过程。在Struts 2中,Action是处理用户请求的核心组件,负责业务逻辑的执行。与Struts 1.x相比,Struts 2.0的Action...
- Action处理完请求后返回一个结果,这个结果告诉Struts2如何继续下一步操作(如跳转到某个页面)。 - **示例代码**: ```java public class ExampleAction extends ActionSupport { private String name; ...
作为一个基于Action和基于拦截器的框架,Struts2提供了丰富的功能,使得开发者能够构建可维护、可扩展的Web应用。下面我们将深入探讨Struts2的主要特性、工作原理以及如何在实际开发中运用。 1. **核心概念**: - ...
- Action处理完业务逻辑后返回一个结果对象,该结果对象通常包含了一个视图的名称。 - 结果对象被解析为具体的视图技术(如JSP页面),并返回给用户。 #### 4. Struts 2的配置与定制 - **配置文件**:通常使用...
《Struts2 In Action》是一本专为Java开发者设计的实战指南,旨在深入解析Struts2框架的使用与实践。Struts2作为一款强大的MVC(Model-View-Controller)框架,极大地简化了Java Web应用的开发流程,提高了开发效率...
总的来说,"Struts2 in Action"这本书和其配套的源代码为学习和掌握Struts2框架提供了一个全面的平台,无论你是初学者还是经验丰富的开发者,都能从中受益。通过实践这些示例,你可以更好地理解MVC模式,提升Java ...
它允许开发者在一个Action类中定义多个处理方法,而不仅仅局限于传统的`execute()`方法。这种机制不仅能够减少代码重复,还能提高代码的可读性和可维护性。本文档将详细介绍如何在Struts 2中实现Action动态方法调用...
在Struts2框架中,处理多个请求的方法是通过一个Action类实现多个处理方法。这使得代码结构更加清晰,每个方法对应特定的业务逻辑。以下是Struts2处理多个请求的三种主要方式的详细说明: 1. **动态方法调用 (DMI -...
在`struts.xml`中,一个Action配置通常由`<action>`元素定义,包含了多个属性,如`name`、`class`、`method`等。 `name`属性用于定义Action的唯一标识,它在请求URL中出现,用于区分不同的Action。例如: ```xml ...
Struts2是一个流行的Java web框架,它用于构建和维护可扩展、模块化且易于管理的企业级应用程序。在处理用户请求时,Struts2允许开发者通过Action类来接收和处理参数,包括中文参数。当我们需要通过POST方法提交包含...
在Struts2的配置文件(通常是struts.xml)中,你需要为你的Action添加一个或多个action配置,指定处理文件上传的result类型。Struts2提供了一个特殊的`stream`结果类型,用于处理文件上传: ```xml <action name...