在struts2中从jsp页面传值到action中
1、通过<s:form action="跳转页面">提交值,但是在<s:form>标签中的action后面至多只能跟一个参数,并且还会报警告,所以如果想传递参数可以用<s:hidden name="" values="username"></s:hidden>来传值,但是正规的写法需要配合<s:set>标签来用 如:
<s:set name="temp" value="动态值"></s:set>或者<s:set name="temp">静态值(相当于一个字符串)</s:temp>
<s:hidden name="username" value="%{temp}"></s:hidden>
注意:如果想在value属性中写静态值需要如下写法:<s:set name="temp" value="%{ ' 静态值 ' }"></s:set> 里面的单引号不可忽略。
2、通过<s:a href="地址?parame1=***¶me2=***¶me3=***">文字说明</s:a>
或者配合<s:url>来使用 如下:
<s:url action="Login" id="Logincd">
<s:param name="year">2009</s:param>
<s:param name="month">12</s:param>
<s:param name="day">09</s:param>
<s:param name="infer">test</s:param>
<s:param name="username">yue</s:param>
<s:param name="password">yue</s:param>
</s:url>
<s:a href="%{Logincd}">传递参数</s:a>
注意:<s:a>连接地址后面可以跟多个参数,但是<s:form action="'>中的action后面却不能。
在action中接受这些参数值的时候可以使用set方法让action自动接受,也可以手动使用request.getParameter("name");的方法。
相关文档:
JSTL <c:out value="${EL}">不能正确输出的问题
由于Jsp2.0向后兼容的特性, 当遇到使用Jsp 1.2(Servlet v2.3)的网站时会默认的禁用JSP2.0 EL,所以导致c:out不能正确输出。
(这里注意Jsp 1.2禁用JSP2.0的EL,而是去使用JSTL 1.0 taglib去解析EL。所以使用JSP 1.2+JSTL 1.0不会出问题,
而使用了JSP 1.2+JSTL 1 ......
Servlet:
当然,在servlet中,一般跳转都发生在doGet, doPost等方法里面。
一、原理
1) redirect 方式
response.sendRedirect("/a.jsp");
页面的路径是相对路径。sendRedirect可以将页面跳转到任何页面,不一定局限于本web应用中,如:
response.sendRedirect("http://www.ycul ......
今天下午,临下课的时候有个学生问了个关于过滤器的使用的问题,也不知道她从搞想到的,估计也是网上哪位达人的演示,她说原来那个功能有些局限,自己扩张了一下,但老是达不到效果。于是就来找我了。
她的需求如下:
1、目标:限制登录用户的访问页面,根据不同的权限可以查询相应的页面。
2、场景:已有三个用户admi ......
pager.setActionName("../servlet/GetBookList?bookname="+booktemp.getBookName()
+"&author="+booktemp.getAuthor()+"&publish="+booktemp.getPublish()+"&");
<a
href="<c:out value="${pager.actionName}"/>pageNo=<c:out value="${pager.pageNo+1}"/& ......
function editFormSubmit() {
var dataForm = Ext.getDom("dataForm");
var conn = new Ext.data.Connection({url:"edit.action"});
conn.request({
params:{
selectId: ......