Struts2与jsp之前传递值

mgr.jsp如下:

<%--
  Created by IntelliJ IDEA.
  User: guoying
  Date: 2017/6/12
  Time: 下午8:21
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%-- 此处防止Struts2 跳转后,css样式消失 --%>
<base href="http://localhost:8080">
<html>
<head>
    <title>管理页面</title>
    <link rel="stylesheet" href="css/style_mgr.css" type="text/css">
    
    <script>
        function infoUser(count) {
            var targetFormInfo = document.forms[count];
            targetFormInfo.action = "<%=request.getContextPath()%>/jane/manager_info.do";
            targetFormInfo.submit();
        }

        function deleteUser(count) {
            var targetFormDelete = document.forms[count];
            targetFormDelete.action = "<%=request.getContextPath()%>/jane/manager_delete.do";
            targetFormDelete.submit();
        }
    </script>

</head>
<body>
<div id="middle">
    ID&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;用户名&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;真实名字&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;年龄&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;手机号&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;地址&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;操作<br>
    <c:forEach items="${list}" var="user" varStatus="status">
        <form method="post">
            <input type="text" value="${user.getId()}" name="id" id="id" readonly>
            <input type="text" value="${user.getUserName()}" name="userName" id="userName" readonly>
            <input type="text" value="${user.getPassword()}" name="password" id="password" style="display: none" readonly>
            <input type="text" value="${user.getRealName()}" name="realName" id="realName" readonly>
            <input type="text" value="${user.getAge()}" name="age" id="age" readonly>
            <input type="text" value="${user.getPhoneNum()}" name="phone" id="phone" readonly>
            <input type="text" value="${user.getAddress()}" name="address" id="address" readonly>
            
            <input type="submit" id="info" onclick="infoUser(${status.index})" value="详情">
            <input type="submit" id="delete" onclick="deleteUser(${status.index})" value="删除"><br>
        </form>
    </c:forEach>
</div>
</body>
</html>

需求1: mgr.jsp中需要从ManagerAction.do中取list的值然后foreach循环显示,前提就是ManagerAction中有个public的list
需求2: 每组值对应的删除、详情功能的实现:将每组值放到不同的form里,使用${status.index}来计数index,这样只需要操作对应的表单就可以了。。每个删除、详情按钮定义click不同的click事件,详见mgr.jsp中的代码

managerAction.java

package com.jane.action;

import com.jane.entity.UsersEntity;
import com.jane.service.impl.ManagerServiceImpl;
import com.jane.utils.HibernateUtils;
import com.opensymphony.xwork2.ActionContext;

import java.util.ArrayList;
import java.util.List;

/**
 * Created by guoying on 2017/6/14.
 */
public class ManagerAction {
    private int id;
    private String userName;
    private String realName;
    private int age;
    private String phone;
    private String address;
    private String password;
    private UsersEntity usersEntity = new UsersEntity();

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public String getRealName() {
        return realName;
    }

    public void setRealName(String realName) {
        this.realName = realName;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public String getPhone() {
        return phone;
    }

    public void setPhone(String phone) {
        this.phone = phone;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public ManagerServiceImpl getManagerService() {
        return managerService;
    }

    public void setManagerService(ManagerServiceImpl managerService) {
        this.managerService = managerService;
    }

    public List<UsersEntity> getList() {
        return list;
    }

    public void setList(List<UsersEntity> list) {
        this.list = list;
    }

    public UsersEntity getUsersEntity() {
        return usersEntity;
    }

    public void setUsersEntity(UsersEntity usersEntity) {
        this.usersEntity = usersEntity;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    private ManagerServiceImpl managerService = new ManagerServiceImpl();
    public List<UsersEntity> list = new ArrayList<UsersEntity>();

    public String delete() {
        managerService.deleteUser(id,userName,password,realName,age,address,phone);

        list = managerService.findAllUsers();

        return "delete";
    }

    public String info() {
        usersEntity = managerService.getInfo(id);

        return "info";
    }

    public String main() {
        list = managerService.findAllUsers();

        return "main";
    }
}

Struts.xml

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE struts PUBLIC
        "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
        "http://struts.apache.org/dtds/struts-2.3.dtd">

<struts>
    <constant name="struts.i18n.encoding" value="UTF-8"/>
    <constant name="struts.action.extension" value="do"/>
    <constant name="struts.serve.static.browserCache" value="false"/>
    <constant name="struts.devMode" value="true"/>
    <constant name="struts.configuration.xml.reload" value="true"/>
    <constant name="struts.ui.theme" value="simple"/>
    <constant name="struts.enable.DynamicMethodInvocation" value="true" />

    <package name="test" extends="struts-default" namespace="/jane">
        <action name="login" class="com.jane.action.LoginAction" method="execute">
            <result name="success">/mgr.jsp</result>
        </action>

        <action name="registe" class="com.jane.action.RegisteAction" method="execute">
            <result name="success">/mgr.jsp</result>
        </action>

        <action name="manager" class="com.jane.action.ManagerAction" method="main">
            <result name="main">/mgr.jsp</result>
        </action>

        <action name="manager_info" class="com.jane.action.ManagerAction" method="info">
            <result name="info">/info.jsp</result>
        </action>

        <action name="manager_delete" class="com.jane.action.ManagerAction" method="delete">
            <result name="delete">/mgr.jsp</result>
        </action>


    </package>

</struts>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值