【实例】struct框架一个表单两个提交按钮-高级Action应用三(LookupDispatchAction应用)
来源:互联网 发布:淘宝交易额 英文 编辑:程序博客网 时间:2024/04/30 07:58
在login.jsp页面显示一个表单,该表单具备两个不同的提交按钮;分别能够输入用户账号,密码,第一个提交按钮是一个login(登陆),验证用户是否登录成功;第二个按钮是一个register (注册),点击,到达另一个页面。
使用LookupDispatchAction方法的流程
1新建(LoginAction.java)文件,建立一个LookupDispatchAction,编写处理函数
1.1 LookupDispatchAction类必须引用import org.apache.struts.actions.LookupDispatchAction;包
1.2 重写类中的getKeyMethodMap()抽象方法【重要】注意map.put(资源文件key,方法名)
1.3 为LoginAction.java中建立login函数和reg函数
2建立login.jsp页面
2.1 注意按钮标签从资源文件获取
2.2 编写ApplicationResources.properties资源文件
2.3 在struts-config.xml中添加配置parameter属性为parameter="ope"
2.4将提交按钮property和struts-config.xml中参数名称要一致
总结
1.首先是提交的两个按钮是从资源文件中得到的
2.然后是两个按钮的property属性,我们在struts-config.xml文件中配置过。
3.通过点击提交action="/login"调用Login.Action.java文件中的getKeyMethodMap()方法。通过getKeyMethodMap()方法,查询资源文件key中的不同值和方法名来进行处理
部分代码如下:
LoginAction.java文件代码
/* * Generated by MyEclipse Struts * Template path: templates/java/JavaClass.vtl */package guo_demo5.action;import java.util.HashMap;import java.util.Map;import guo_demo5.form.LoginForm;import javax.servlet.ServletException;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.apache.struts.action.Action;import org.apache.struts.action.ActionForm;import org.apache.struts.action.ActionForward;import org.apache.struts.action.ActionMapping;import org.apache.struts.actions.LookupDispatchAction;public class LoginAction extends LookupDispatchAction {// 重写getKeyMethodMap()方法protected Map getKeyMethodMap() { //用一个map保存资源文件key和方法名的映射Map map = new HashMap();map.put("info.login", "login");//map.put(资源文件key,方法名)map.put("info.reg", "reg");return map;}//登陆public ActionForward login(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response) {LoginForm loginForm = (LoginForm) form;// TODO Auto-generated method stubSystem.out.println("登陆");return null;}//注册public ActionForward reg(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response) {LoginForm loginForm = (LoginForm) form;// TODO Auto-generated method stubSystem.out.println("注册");return null;}}
ApplicationResources.properties资源文件
info.login=logininfo.reg=reg
struts-config.xml配置文件
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN" "http://struts.apache.org/dtds/struts-config_1_2.dtd"><struts-config> <data-sources /> <form-beans > <form-bean name="loginForm" type="guo_demo5.form.LoginForm" /> </form-beans> <global-exceptions /> <global-forwards /> <action-mappings> <action name="loginForm" path="/login" parameter="ope" type="guo_demo5.action.LoginAction"> <set-property property="cancellable" value="true" /> </action> </action-mappings> <message-resources parameter="guo_demo5.ApplicationResources" /></struts-config>
login.jsp文件
<%@ page language="java" pageEncoding="gb2312"%><%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean"%> <%@ taglib uri="http://struts.apache.org/tags-html" prefix="html"%> <html> <head><title>登陆LookupDispatchAction使用</title></head><body><html:form action="/login" method="post">account : <html:text property="account"/><br/>passWord : <html:password property="passWord"/><br/><html:submit property="ope"><bean:message key="info.login"/></html:submit><html:submit property="ope"><bean:message key="info.reg"/></html:submit></html:form></body></html>
- 【实例】struct框架一个表单两个提交按钮-高级Action应用三(LookupDispatchAction应用)
- ASP 一个表单 两个提交按钮
- 一个表单使用两个提交按钮
- 两个表单一个按钮;一个表单,两个提交按钮。分别执行两个asp文件(asp)
- 一个form表单提交到两个不同的action中
- 一个表单中两个提交按钮应怎么办?
- 【实例】仿购物车原理-高级Action应用三(通过MappingDispatchAction方式)
- 一个表单,多个提交按钮,提交到不同的action
- 多不同按钮提交一个表单,提交到不同的action中
- 带有两个提交按钮的表单(带有不同的 action)
- 表单的action属性和提交按钮
- MVC中一个表单实现多个提交按钮(一个action搞定添删改)
- Ajax+asp应用实例: 注册模块,表单提交
- JS实现一个表单form,多个submit按钮提交时带不同的action参数
- Struts---防止表单重复提交Interceptor的一个应用
- 一个表单中有编辑和删除两个按钮分别调用后台action的不同方法
- JSP表单应用实例
- iptables高级应用实例
- linux 分区图文详解
- linux fb设备(pandaboard)
- hiho #1080 : 更为复杂的买卖房屋姿势 线段树区间更新
- css命名规则:图片切图转网页的代码规范
- android 源码问题解答(异常处理)
- 【实例】struct框架一个表单两个提交按钮-高级Action应用三(LookupDispatchAction应用)
- javascript 获取项目根路径(备忘)
- 判别式模型与生成式模型
- Sicily 1176 Two Ends
- 树链剖分--利用数据结构维护一棵树
- Xampp配置
- Merge Sorted Array——算法练习
- 通知中心-在音乐软件中的应用
- Java 中 Vector、ArrayList、List 使用深入剖析