struts2怎样从jsp页面传值到action中

如题所述

jsp页面跟通常的html传值一样 通常有两种方式

1.form表单传值

2.url方式传值

通常后台接受前端传值 都是用的 request.getParameter("username")

但是在struts框架下 可以用set方法让action自动接收 也更方便

所以 action接收值也有两种方式

1.request.getParameter("username")

2.set 



下面记录多种组合方式,大家可以根据相应的情况选择使用:

方式一 jsp中form传值username,password, action中set方法接收

[java] view plain copy 

<%@taglib prefix="s" uri="/struts-tags" %>  

[java] view plain copy 

<form action="getIp/login" method="post" name="form1">  

        ç”¨æˆ·åï¼š  

        <s:textfield name="username" />  

        <br />   

        å¯† ç ï¼š  

        <s:password name="password" />  

        <br />  

        <s:submit value="提交" />  

    </form>  





login.jsp

[java] view plain copy 

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>  

<%  

    String path = request.getContextPath();  

    String basePath = request.getScheme() + "://"  

            + request.getServerName() + ":" + request.getServerPort()  

            + path + "/";  

%>  

<%@taglib prefix="s" uri="/struts-tags" %>  

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  

<html>  

<head>  

<base href="<%=basePath%>">  

  

<title>login page</title>  

  

</head>  

<body>  

    <form action="getIp/login" method="post" name="form1">  

        ç”¨æˆ·åï¼š  

        <s:textfield name="username" />  

        <br />   

        å¯† ç ï¼š  

        <s:password name="password" />  

        <br />  

        <s:submit value="提交" />  

    </form>  

</body>  

</html>  


loginAction.java


[java] view plain copy 

package action;  

  

import com.opensymphony.xwork2.ActionSupport;  

  

public class loginAction extends ActionSupport {  

    /** 

     * ç™»å½• 

     */  

    private static final long serialVersionUID = -6797327769546503535L;  

    private String username;  

    private String password;  

  

    public String getUsername() {  

        return username;  

    }  

  

    public void setUsername(String username) {  

        this.username = username;  

    }  

  

    public String getPassword() {  

        return password;  

    }  

  

    public void setPassword(String password) {  

        this.password = password;  

    }  

  

    public String execute() {  

        System.out.println("username:" + username);  

        System.out.println("password:" + password);  

        return SUCCESS;  

    }  

  

}  



spring文件
action.xml

[java] view plain copy 

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

    

   <!--  <bean id="testAction" class="action.TestAction">  

    </bean>   -->  

   <bean id="login" class="action.loginAction">  

    </bean>  

</beans>    


struts文件


action.xml

[java] view plain copy 

 

<struts>  

    <package name="getIp" extends="json-default" namespace="/getIp">  

    <!--     <action name="testJson" class="testAction">  

            <result type="json"></result>  

        </action>       

        <action name="testJsp"  class="testAction">  

            <result name="success">/index.jsp</result>  

        </action>  -->  

        <action name="login"  class="login">  

            <result type="json"></result>  

        </action>   

    </package>  

      

      

</struts>  

温馨提示:内容为网友见解,仅供参考
第1个回答  2016-12-24
在jsp中要传入的input的定义name属性并且把action中私有name的值如(<input type="text" name="username">)在action中定义 private String username;get{}set{}省略就可以了

struts2中如何在jsp页面中用js取得action中传过来的值?是用js得到...
js里可以直接写 var num="";actionNum就是action传过来的变量名

各位java前辈:1.在struts2中,在jsp页面是如何获取Action中值的?需要...
struts是采用ognl模型,就是对象关系模型,想要得到action中的值,首先的一点这个值要有set和get方法,在你请求action的时候,会重新生成一个action对象--》调用set方法给这个属性赋值,在jsp上展示用的是get方法,例如你有一个属性name需要展示,set、get方法写好后,在你请求的action中给name赋值,页面就...

hibernate+struts2批量更新从jsp到action怎么接收数据
可以新建一个Vo容器,来接收页面上的值,页面上标签里用 name="Vo.name"来传值,Action中定义private Vo vo,然后生成get,set方法就能取到页面上的值了

求Struts2中,在Action中跳转到Action中的方法,该怎么跳转,怎么写,求高 ...
<!-- 不同package下调用其它action --> <package name="isLogin" extends="struts-default"> <action name="loginUser" class="com.**"> <result name="input">index.jsp<\/result> <result type="redirectAction"> stuList!isList <\/result> <result name="false">index.jsp<\/result> <\/...

怎样将struts2 checkbox 选中的数据传到action中,action中怎样接受!
??? 类里面设置一个 private Boolean che; 加 get set 方法 就可以接受了 action 取值的时候 用for 循环将emplist的???对象取出, ???.getChe() 就是每个checkbox的值 输出结可以看到 是bool 类型的 true 或 false 数据库 用 bit 0 1 另外 如果是 checkbox name="che" che 的...

使用struts2标签再JSP页面中 遍历出我的Action 肿的LIST,应该怎样写啊...
s:lterator肯定只能在action里面显示而不能再jsp中显示了,你要先在后台action里面将数据放到jsp内置对象request或response里面保存,然后再在前台jsp中得到,在循环读取。。。

怎么在jsp首页跳转到struts2的action中 然后跳到studentInfo。jsp显 ...
forward> 标签跳转写的不对,。。、一般jsp文件还是指struts中的视图跳转?jsp中可以 链接也可以 链接 而struts中的视图 一般是<result name="success">\/*.jsp<\/resutl> 当然还有很多类型比如跳转到其他的action 这时候就要用type了

Struts2的:action中有个name,已经赋值了,我要在jsp用onclick="xxx.acti...
这跟你自己定义的action中的name不冲突,jsp中传递过来值你自己重新定义一个变量然后赋值给此变量就可以了。关键在于你自己能区分哪个是哪个。。定义变量名的时候区分开来就行了。

怎么在struts2里将批量被选中的checkbox提交到action里?
status="st"> 是否 使用form表单提交到action 在action中声明一个数组,这个数组变量名与checkbox的name一致即可。

关于struts2的 迭代出的值,然后怎样传到另一个jsp页面里啊?……_百...
可以url后面加上?id=xxx通过get的方法将ID传到ACtion中,然后通过数据库查找你想要得内容。也可以将页面的内容存储到session中在chang.jsp中用el表达式就可以得到,如果你不回用el表达式的话,也可以用<%session.get("")%>得到,session是JSP中的内置对象,不需要初始化 直接用就行。有问题追问。

相似回答