CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Java >  Web 开发

从jsp文件向servlet传复杂的类变量,如何做?

楼主bandit110(bandit)2005-09-21 10:28:39 在 Java / Web 开发 提问

如题,谢谢,高分重谢 问题点数:100、回复次数:17Top

1 楼onray(39度)回复于 2005-09-21 11:02:06 得分 15

jsp中  
  request.setAttribute("obj",复杂的类变量);or  
  session.setAttribute("obj",复杂的类变量);  
  servlet中  
  (类名称)   a   =   (类名称)request.getAttribute("obj");   or  
  (类名称)   a   =   (类名称)session.getAttribute("obj");Top

2 楼findfeels( ☆爱玩感觉☆)回复于 2005-09-21 11:13:41 得分 10

用session建个Object传递Top

3 楼jFresH_MaN(十一月的萧邦-夜曲)回复于 2005-09-21 11:17:01 得分 5

上面的方法是没问题的  
  不过你要注意的是,这样传输的Object必须实现Serializeable接口Top

4 楼zhz586(最终幻想)回复于 2005-09-21 11:17:19 得分 5

推荐看看书  
  这里贴出来也是大篇幅  
  虽然很好理解  
  邮电的jsp   tomcat   servlet编程之类的书  
  估计第一章第二章肯定将这个  
  Top

5 楼bandit110(bandit)回复于 2005-09-21 11:57:04 得分 0

因为我这个项目中不允许用session,所以我是这样做的:  
  jsp中  
  request.setAttribute("obj",复杂的类变量);  
  servlet中  
  (类名称)   a   =   (类名称)request.getAttribute("obj");    
   
   
  但是好像不对,servlet中没有得到数据,哪位大虾指点一下Top

6 楼bandit110(bandit)回复于 2005-09-21 13:24:29 得分 0

dingTop

7 楼galewithwing(漂流的风)回复于 2005-09-21 13:36:09 得分 20

请求的是从客户端来的,你说客户端能传递复杂对象么?不能,因此,这样是不可以的!  
  对于web服务端两个对象,你传递的东西一般都要使用session,application,要不然就使用一个单例对象维持Top

8 楼bandit110(bandit)回复于 2005-09-21 14:09:58 得分 0

dingTop

9 楼bandit110(bandit)回复于 2005-09-21 16:17:20 得分 0

dingTop

10 楼xxzxzx(xxzxzx)回复于 2005-09-21 16:32:53 得分 0

ding  
  Top

11 楼doomwarrior(去死)回复于 2005-09-21 16:42:46 得分 10

request.setAttribute("obj",复杂的类变量);  
  这是不可行的,因为当请求到达页面的时候,request已经结束了,再提交或者跳转那就是另一个  
  request.  
   
  要从jsp开始传递类,session,application   或者单例类   才行Top

12 楼dawnming(笨小孩)回复于 2005-09-21 17:09:26 得分 5

同意漂流的风Top

13 楼linfv(海盗)回复于 2005-09-21 17:36:25 得分 12

因为我这个项目中不允许用session,所以我是这样做的:  
  jsp中  
  request.setAttribute("obj",复杂的类变量);  
  servlet中  
  (类名称)   a   =   (类名称)request.getAttribute("obj");    
   
   
  但是好像不对,servlet中没有得到数据,哪位大虾指点一下  
  =================================================================  
  这样是不行的,jsp中用到的和servlet中用到的request并不是同一个,jsp中的request是从别的页面或servlet传来的,在该页面内有效,如果重新提交请求到其他页面或servlet,这个request就失效了  
  servlet的requst是你通过该jsp   post或get   到一个servlet而新生成的  
   
  还有不知到为什么要通过jsp页面给Servlet传个对象,而且还不能用session?页面和servlet子间无非是数据的交互,你用对象传也只是用对象封装这些数据吧,用post或get不一样吗  
   
  Top

14 楼mxlmwl(飞星)回复于 2005-09-21 18:01:39 得分 10

除了session之类的这种对象之外,确实无法传递。request.setAttribute是从servlet传递到jsp的,反过来是不可以的,看来楼主还没明白request的含义。Top

15 楼mxlmwl(飞星)回复于 2005-09-21 18:02:14 得分 3

如果可能,你可以封装一个xml,然后在服务器段分析xml,也可以实现你的目的。Top

16 楼bandit110(bandit)回复于 2005-09-22 09:27:35 得分 0

本人的确是刚开始接触servlet,还有人多这个问题有什么看法么Top

17 楼chengys()回复于 2005-09-22 10:00:11 得分 5

漂流的风   是正解Top

相关问题

  • JSP页面中能定义文件输出流变量吗?
  • javascript如何在.js文件中使用jsp中的变量
  • jsp 文件里使用javascript, 怎么在javascript 里得到jsp 中的变量?
  • 急求servlet向JSP页面传送变量值的问题!
  • 请问如何在jsp中include一个可变的变量文件名,谢谢!
  • jsp中的变量
  • 求助,JSP与Servlet之间可以引用全局变量吗(Session范围的)?
  • 我想在jsp页面将一个form中的一个文本框author的值赋给servlet的一个全局变量x,要如何可以实现?注意因为现在要上传文件,所以不能在req
  • jsp文件中定义一个javascript变量,如何在它提交给自己的时候将这个变量传给它自己
  • jsp连sql server 2k出错,三个主要文件也考到了jre/lib/ext下。环境变量也加了。

关键词

  • servlet
  • 数据
  • jsp
  • 传递
  • 对象
  • 复杂的类变量
  • setattribute
  • 名称
  • getattribute
  • obj

得分解答快速导航

  • 帖主:bandit110
  • onray
  • findfeels
  • jFresH_MaN
  • zhz586
  • galewithwing
  • doomwarrior
  • dawnming
  • linfv
  • mxlmwl
  • mxlmwl
  • chengys

相关链接

  • CSDN Java频道
  • Java类图书
  • Java类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo