比如我在servlet类里定义了一个
int num = 100;可以这样把它传递给jsp页面:
request.setAttribute("num", num);
这样写是没问题的:编译器通过,而且运行时,jsp能正常得到这个值,也就是说可以正常运行。但是 num 是基本类型啊,request.setAttribute(String name, Object o);要求传递的是 Object 类型。所以总觉得不妥。大家有什么看法?

解决方案 »

  1.   

    没问题吧,实际传的是Integer,基本类型都有封装类的
      

  2.   

    这么说 Boolean、char、Double、Float 等等基本数据类型也可以这样传了?
      

  3.   

    是可以传递的, Object类型是所有数据类型的父类  将 int类型的放入当然没有问题啦。
    传递过去了以后你取了就是Object类型的,你需要 拆箱  强制装换。
      

  4.   

    我是这么认为的,实际应该不会很复杂的,而且这种问题我觉得比较鸡肋,不是很关键的,object都可以传,一个基本类型不是更简单吗
      

  5.   

    是否和这个有关:jdk1.5新特性之自动装箱拆箱-无需在基本类型(primitive types)(例如double)和包装类型(wrapper types)(例如Double)之间人工地进行转换。
      

  6.   


    int型被传递过去之后jsp中怎么得到这个int类型的值?
    String num = (String)request.getAttribute("num");
    jsp中这样写可以么
      

  7.   


    有int转到String的方法啊。
    String.valueOf()
      

  8.   

    现在的 java 高级了,, 知道自动 装拆箱了..
      

  9.   

    呵呵,高级语言。
    传object什么的都可以的。
    只是在取object的时候需要强制转回去一下。<Object>object
    很简单,很实用,也很强悍。