将前端按钮值传递到后端_转----JAVA前端与后端参数传递⽅
法⼩结
1,从Action中传值到JSP页⾯的⽅法
①在Action中定义⼀个成员变量,然后对这个成员变量提供get/set⽅法,在JSP页⾯就可以取到这个变量的值了。
1)在Action中定义成员变量
//定义⼀个成员变量
private String message;
//提供get/set⽅法
public String getMessage() {
el表达式获取map的值return message;
}
public void setMessage(String message) {
}
2)在JSP页⾯中取值
${message}
或者
②使⽤⼀些Servlet API进⾏值的存取操作:HttpServletRequest、HttpSession和ServletContext。Struts2对这个三个对象⽤Map进⾏了封装,我们就可以使⽤Map对象来存取数据了。
1)在Action中存值
ActionContext actionContext = Context();
//get HttpServletRequest
Map request = (Map) ("request");
request.put("a", "a is in request");
//get HttpSession
//Map session = (Map) ("session");
Map session = Session();
session.put("b", "b is in session");
//get ServletContext
//Map application = (Map) ("application");
Map application = Application();
application.put("c", "c is in application");
//quest
HttpServletRequest Request()
request.setAttribute("c2", "test5");
request.put("c3","test6")
//或者直接放⼊上下⽂中
2)在JSP页⾯上取值(使⽤EL表达式)
${a}
${b}
${c}
${d}
${c2}
${c3}
or
${requestScope.a}
${sessionScope.b}
${applicationScope.c}
${actionContext.d}
${requestScope.c2}
${requestScope.c3}
or //使⽤Context().put("d","d is an application")的情况
在Context().put("a", "  test3")后页⾯上⽤${a}或获得test3的值
#相当于ActionContext. getContext() ,#session.b表达式相当于Context().getSession(). getAttribute(”b”)
③对于传递list的值,可以使⽤ actionContext的valueStack来传递值栈
1) 在后台使⽤Hibernate查询 ,EntityManager 通过createQuery()来getResultList()获得List,将list放⼊valueStack中Context().getValueStack().push(model);
2)在页⾯上通过标签遍历list的每条值显⽰在table上。
编号影⽚类型影⽚名称发布⼈发布时间审核状态操作
${o.id}${o.name }${o.type}${berName }
2,从前台向后台传递参数
①通过表单传递参数
1)在前端jsp页⾯设置form表单,确定需要传递的参数name让⽤户在input中输⼊,通过点击按钮后submit()提交到后台
活动名称
2)点击搜索后activityName会放到HttpServletRequest 中
HttpServletRequest httpReq = Request();
String s = Parameter("activityName");
另外,在后台也可以通过extends ActionSupport 并构建get/set⽅法在后台获得其值private String activityName;
public String getActivityName() {
return activityName;
}
public void setActivityName(String activityName) {
this.activityName = activityName;
}
public String list(){
System.out.println(activityName);
}
②通过超链接传递参数
1)前台通过超链接跳转时将参数加到⽅法的后⾯
src="${tPath}/images/info.png"
title="查看" />
2)后台通过HttpServletRequest 获得超链接后⾯参数所对应的值HttpServletRequest httpReq = Request();
Long id= Long.Parameter("Id"));
String s = Parameter("infot");
Long pageNum = Long.Parameter("pageNum"));

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。