回 帖 发 新 帖 刷新版面

主题:学Jsp第2天,有个关于session例题怎么也弄不对,麻烦大家帮帮我,谢谢


学Jsp第2天,有个关于session例题怎么也弄不对,麻烦大家帮帮我,谢谢



--文件名ch5-12a.jsp

<html>


<form action="ch5-12b.jsp" method="post">
    <table border="1">
        <tr bgcolor="#C0C0C0">
            <td>trade name</td>
            <td>price</td>
            <td>input count</td>
        </tr>
    
        <tr>
            <td bgcolor="yellow">trade 1</td>
            <td>2000</td>
            <td><input type="text" size=8 name="good1"</td>
                
        </tr>
    
        <tr>
            <td bgcolor="yellow">trade 2</td>
            <td>1500</td>
            <td><input type=text size=8 name=good2</td>
        </tr>
    
        <tr>
            <td bgcolor="yellow">trade 3</td>
            <td>1000</td>
            <td><input type=text size=8 name=good3</td>
        </tr>
    
        <tr>
            <td bgcolor="yellow">trade 4</td>
            <td>1300</td>
            <td><input type=text size=8 name=good4</td>
        </tr>
        
        <tr>
            <td bgcolor="yellow">trade 5</td>
            <td>1800</td>
            <td><input type=text size=8 name=good5</td>
        </tr>
    
    
        <tr><td colspan="3" align="center"><input type="submit" value="send">
            <input type="reset" value="reset"></td></tr>
    
    </table>
    </form>
</html>



--文件名ch5-12b.jsp


<html>


<body>

    <%@page import="java.util.*" %>
    <%
        
        String name,count;
        request.getSession(true);
        Enumeration goods = request.getParameterNames();
        
        while(goods.hasMoreElements())
        {
            name = (String)goods.nextElement();
            count = request.getParameter(name);
            session.putValue(name,count);
        }
        
        String[] sname = session.getValueNames();
        out.print("<font size=5 color=green>buy trade list</font><p>");
        
        for(int i=0;i<sname.length;i++)
        {
            out.print(sname[i]+"=");
            out.print(session.getValue(sname[i])+"<br>");
        }
    
    %>

</body>


</html>







这是书上一个例题,但是我打完以后和书上的结果并不一样。
运行文件ch5-12a.jsp 分别输入 1,2,3,4,5


然后在,ch5-12b.jsp应该得到
buy trade list
good1 = 1
good2 = 2
good3 = 3
good4 = 4
good5 = 5


可我得到的却是……
buy trade list
good2good5good3good4good1=1

似乎只得到了good1的值,而且顺序还不对……晕了。查了半天,没找到错误。




另外,还有两点不太明白:
一:
ch5-12b.jsp文件中name,count应该是session的一个String变量。又不是数组。。
在while循环中要赋值5次,不是数组能存5个值?第2次赋值不会覆盖掉第一个的值么?


二:
依然在,ch5-12b.jsp文件中
(String)session.getValue(sname[i])
这里还要作String转换,那么session.getValue返回来的类型是什么?

在Jsp中,有没有Java那样的Api帮助文档呢?如果有文档就能查对象方法的返回类型了。呵呵



以上问题麻烦高手不忙时候解答下,感激不仅。

回复列表 (共3个回复)

沙发

你的代码<td><input type="text" size=8 name="good1"</td>
<td><input type=text size=8 name=good2</td>
<td><input type=text size=8 name=good3</td>
<td><input type=text size=8 name=good4</td>
<td><input type=text size=8 name=good5</td>
中都差一个“>”符号。我试过了,加了就能得到正确结果。
其他问题我无法回答,我也是才开始学jsp的。

板凳

找份api文档  或上网搜一下

3 楼

String[] sname = 这定义的难道不是数组吗,我也不懂了,文档可以网上找找有的

我来回复

您尚未登录,请登录后再回复。点此登录或注册