jsp与后台传值

 1、一般是在Action中定义一个成员变量,然后对这个成员变量提供get/set方法,在JSP页面就可以取到这个变量的值了。
  1)在Action中定义成员变量
//定义一个成员变量
private String message;

//提供get/set方法
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
  2)在JSP页面中取值
${message}
或者
<s:property value="message"/>
  2、但是定义的成员变量多了,感觉整个Action的代码就很长了。这个时候可以使用一些Servlet API进行值的存取操作:HttpServletRequest、HttpSession和ServletContext。Struts2对这个三个对象用Map进行了封装,我们就可以使用Map对象来存取数据了。
  1)在Action中存值
ActionContext actionContext = ActionContext.getContext();

//get HttpServletRequest
Map<String,Object> request = (Map) actionContext.get("request");
request.put("a", "a is in request");

//get HttpSession
//Map<String,Object> session = (Map) actionContext.get("session");
Map<String,Object> session = actionContext.getSession();
session.put("b", "b is in session");

//get ServletContext
//Map<String,Object> application = (Map) actionContext.get("application");
Map<String,Object> application = actionContext.getApplication();
application.put("c", "c is in application");
  2)在JSP页面上取值
${a}
${b}
${c}
or
${requestScope.a}
${sessionScope.b}
${applicationScope.c}

传值 sql语句查询结果
1: JSON注解 允许我们在JavaScript中异步
/**
* 查询结果
* @return 查询结果集
*/
//设置
private List result;
@JSON(name="rows")
public List getResult() {
return result;
}
public void setResult(List result) {
this.result = result;
}
//传值
setResult(query.getResult());
//取值
url : ‘<s:url action="myGpsListJsonAction" namespace="/part/comm"></s:url>‘,
sortName : ‘type_id‘,
sortOrder : ‘desc‘,
2:
//传值
private String commPartType;
Object o = getSq().querySingle(commPartType,
Arrays.asList(getKeyId()), true);
putValue("commPartType", o);
//取值
var en = actionData.data.commPartType ? actionData.data.commPartType : {};
3: 不用注解     setget

private Long keyId;
private Map<String, Object> en;
@ReadFile(path="com/jerehsoft/erp/part/comm/sql/searchA_Test.sql") //sql查询语句
private String a_Test;
//传值
setEn(query.querySingle(getA_Test(), Arrays.asList(getKeyId()), true));
//取值
var en = actionData.en ? actionData.en : {};

jsp 向后台传值

1: URL 传值
var url = ‘<s:url action="ecSettingsDetail"></s:url>‘;
url = concatURL(url,{key:rowData.key});
window.open(url);
//取值 不用注解
private String key;
public String getKey() {
return key;
}

public void setKey(String key) {
this.key = key;
}

2: form 提交表单 post

时间: 2024-11-03 21:30:10

jsp与后台传值的相关文章

springmvc 中前后台传值

1.前台往后台传值: login.jsp输入框设置,主要是name属性 <h1>登录页面</h1> <form method="post" action=""> 用户名:<input type="text" name="userName"><br> 密 码:<input type="text" name="password"

前台向后台传值的两种方法 以及 从后台获取数据的方法

1.前台向后台传值方法一: 表单提交的方式: 1 <form action="${path }/manage/logon.do" method="post" id="logonForm"> 2 <table cellpadding="0" cellspacing="0" border="0"> 3 <tr height="50">

【jsp】Servlet与jsp之间的传值

Servlet与JSP 之间的传值有两种情况:JSP -> Servlet, Servlet -> JSP. 通过对象 request和 session (不考虑 application)完成传值. 一.JSP -> servlet JSP页面有3种方法向 servlet传值: form表单.URL <!-- JSP page --> ... <%...... session.setAttribute("testSession","Hell

多选框向后台传值,多选框的回显,对多选框的各种操作

1.多选框的回显: js:$(     function(){     var checkBoxAll =$("input[name^='checkbox_']");//获取前缀为checkbox_的所有多选框对象     var checkArray=${list};//获取多选框需要回显得对应的值集合     console.info("checkArray=",checkArray);     for(var i=0;i<checkArray.lengt

struts action和jsp之间的传值

一.jsp对Action传值 提交表单即可,Action的属性必须和表单的标签名字相同 二.Action对jsp传值: (1)利用session,(个人推荐) action中ActionContext.getContext().getSession().put(key,value); jsp中<%session.getAttribute(key) %> (2)利用struts提供的<s:property value=""/> (3)${属性名} (4)strut

Servlet与jsp间的传值问题

Servlet与JSP 之间的传值有两种情况:JSP -> Servlet, Servlet -> JSP.通过对象 request和 session (不考虑 application)完成传值. 一.JSP -> servlet JSP页面有3种方法向 servlet传值: form表单.URL .java片段代码 form表单: <form action="JspServlet?action=toServlet" method="post"

jsp之间url传值出现中文乱码

示例: T1.jsp http://localhost:8080/test/Test.action?site=北京 T2.jsp ..... <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> .........以上省略........ <div>${site}</div> ..... 然后

后台传值到前台的时候出现乱码

当后台传值给页面出现乱码的时候要加上response.setCharacterEncoding("utf-8"); 如果自己不知道是用request..setCharacterEncoding("utf-8");还是response.setCharacterEncoding("utf-8");就两个都写上 request是后台向前台请求数据.response是前台向后台请求数据.

PHP后台传值

前台数据往后台传值,往往是新手最头痛的,最近在学习thinkPHP的时候,也遇到了这种问题,总结一下,往不足之处请大家指教. 一.前台界面代码,往后台传值有两种方式,一种是get,另一种是post,新手入门,不管什么方式吧,往后台传值成功就可以了. 首先,写一个from表单, <form action="{:U(Recom/goodsprice)}" method="post"> <a href="{:U('Recom/goodspric