在Struts2中,怎么由jsp跳转到action中
大家看啊。jspjavacode大家看啊,我的jsp页面表单什么的都没写,就写了个遍历,肯定的当我直接访问jsp页面,判断集合为空,就会什么都不输出的。然后想问的是,怎么...
大家看啊。
jsp
java code
大家看啊,我的jsp页面表单什么的都没写,就写了个遍历,肯定的当我直接访问jsp页面,判断集合为空,就会什么都不输出的。然后想问的是,怎么直接访问jsp页面后跳到action中获取值。
由于第一天学struts,感觉很坑啊,希望大家耐心指教 展开
jsp
java code
大家看啊,我的jsp页面表单什么的都没写,就写了个遍历,肯定的当我直接访问jsp页面,判断集合为空,就会什么都不输出的。然后想问的是,怎么直接访问jsp页面后跳到action中获取值。
由于第一天学struts,感觉很坑啊,希望大家耐心指教 展开
3个回答
展开全部
哥们,你的理解有很大问题呀
不 jsp 跳到 action 取值
而是你应该访问action 然后返回你的jsp才能有值。
帮你梳理一下,什么是访问吧,呵呵
首先,浏览器访问一个地址,被你的servlet 获取,至于是不是访问jsp 还是访问action这个一般看你配置文件怎么配了,当然不会有人将action的标志写为 “jsp”,一般写.action 或者.do
那么如果你的拦截器也没有拦截jsp的话,(不明白拦截器可以忽略本段),会根据你的后缀名判断你要访问什么。
其实不管你访问什么,都可以认为最后通过 response 返回了一个字符串,返回文件不算。
那么这个字符串的构成不外乎有几种
1,全部静态,一般是 html,即直接指向一个静态页面,当然也可以通过actiong 转向一个html
2,全部动态,由java拼接一个字符串,返回,ajax请求一般是这种情况。当然,若全天是一个submit式提交,希望返回一个页面,那么你的字符串将被当作html代码展示。
3,半动态,也就是jsp方式,jsp中的html部分是静态不动的,其他jsp标签,如你写的s标签(s标签是strut的标签,说白了是jsp标签的一种),jsp标签会根据他的定义执行对应的java代码进行拼装。然后将拼装好的部分与原来的html部分结合,返回给浏览器。
无论是哪种,浏览器拿到的都是 静态的,也就是浏览器并不知道你后台做了什么,只是拿到一个已经拼装好了的html,(这个html原来可能就不需要拼装对应第一种,全部都是拼装的对应第二种,一半是拼装的对应第三种)
但是你直接访问jsp的问题是,当前sesson中没有你写的pages.pageList,所以啥也没有。
所以要在页面上显示列表有2种方案,这两种方案都很常见。
1,访问一个action,action先通过java取得值,将值付给某些变量,对你的来说就是pages.pageList,再将请求重定向到你的jsp,那么jsp中s标签就被拼装成你要值返回了前台。
页面上就有 表格了。
2,访问一个jsp,而这个jsp中没有你现在写的s标签,但是当jsp全部加载完成后,通过ajax向后台申请数据,再通过js(javascript)修改你前台的页面,展示出你要的结果,
随着这些年的发展,第二种方案越来越流行,其实怎么用还是要看自己。
不 jsp 跳到 action 取值
而是你应该访问action 然后返回你的jsp才能有值。
帮你梳理一下,什么是访问吧,呵呵
首先,浏览器访问一个地址,被你的servlet 获取,至于是不是访问jsp 还是访问action这个一般看你配置文件怎么配了,当然不会有人将action的标志写为 “jsp”,一般写.action 或者.do
那么如果你的拦截器也没有拦截jsp的话,(不明白拦截器可以忽略本段),会根据你的后缀名判断你要访问什么。
其实不管你访问什么,都可以认为最后通过 response 返回了一个字符串,返回文件不算。
那么这个字符串的构成不外乎有几种
1,全部静态,一般是 html,即直接指向一个静态页面,当然也可以通过actiong 转向一个html
2,全部动态,由java拼接一个字符串,返回,ajax请求一般是这种情况。当然,若全天是一个submit式提交,希望返回一个页面,那么你的字符串将被当作html代码展示。
3,半动态,也就是jsp方式,jsp中的html部分是静态不动的,其他jsp标签,如你写的s标签(s标签是strut的标签,说白了是jsp标签的一种),jsp标签会根据他的定义执行对应的java代码进行拼装。然后将拼装好的部分与原来的html部分结合,返回给浏览器。
无论是哪种,浏览器拿到的都是 静态的,也就是浏览器并不知道你后台做了什么,只是拿到一个已经拼装好了的html,(这个html原来可能就不需要拼装对应第一种,全部都是拼装的对应第二种,一半是拼装的对应第三种)
但是你直接访问jsp的问题是,当前sesson中没有你写的pages.pageList,所以啥也没有。
所以要在页面上显示列表有2种方案,这两种方案都很常见。
1,访问一个action,action先通过java取得值,将值付给某些变量,对你的来说就是pages.pageList,再将请求重定向到你的jsp,那么jsp中s标签就被拼装成你要值返回了前台。
页面上就有 表格了。
2,访问一个jsp,而这个jsp中没有你现在写的s标签,但是当jsp全部加载完成后,通过ajax向后台申请数据,再通过js(javascript)修改你前台的页面,展示出你要的结果,
随着这些年的发展,第二种方案越来越流行,其实怎么用还是要看自己。
2015-12-14 · 做真实的自己 用良心做教育
千锋教育
千锋教育专注HTML5大前端、JavaEE、Python、人工智能、UI&UE、云计算、全栈软件测试、大数据、物联网+嵌入式、Unity游戏开发、网络安全、互联网营销、Go语言等培训教育。
向TA提问
关注
展开全部
struts2中提交action的方法:
就要在页面上修改 form元素的action属性
例如:
form1.action = "doSomethingAction.action"
form1.submit;
<form id="form1" action="doNothingAction.action" >
</form>
就要在页面上修改 form元素的action属性
例如:
form1.action = "doSomethingAction.action"
form1.submit;
<form id="form1" action="doNothingAction.action" >
</form>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你应该是直接访问action,通过遍历方法获取你的数据,转向到jsp进行数据展示吧
追问
这种情况下都是直接访问action吗,要是我就想从jsp跳应该怎么办
追答
也可以啊。。通过js用ajax进行初始化
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询