1: <%@ page contentType="text/html;charset=gb2312"%>
<html>
<head>
<title>实现简单购物车1 </title>
</head>
<body>
<center>
<%
session.setAttribute("product","54寸液晶电视机");
session.setAttribute("price","10000"); session.setAttribute("chanpin",session.getAttribute("product")+",");
session.setAttribute("jiaqian",session.getAttribute("price")+",");
out.print(session.getAttribute("chanpin")+" <br>");
out.print(session.getAttribute("jiaqian")+" <br>");
%>
<a href="test40.jsp">去买计算机 </a>
</center> </body>
</html>
上述红色的部分换成这样写:
<%@ page contentType="text/html;charset=gb2312"%>
<html>
<head>
<title>实现简单购物车1 </title>
</head>
<body>
<center>
<%//初始化session对象
if(session.getAttribute("flag")==null){
session.setAttribute("flag","ok");
session.setAttribute("product","");
session.setAttribute("price",""); }
session.setAttribute("chanpin",session.getAttribute("product")+"54寸液晶电视机,");
session.setAttribute("jiaqian",session.getAttribute("price")+"10000,");
out.print(session.getAttribute("chanpin")+" <br>");
out.print(session.getAttribute("jiaqian")+" <br>");
%>
<a href="test40.jsp">去买计算机 </a>
</center> </body>
</html>
这样写都可以通过编译且一样,我就想问一下是不是无论在什么样的编译要求下,这两种编译方式都可以相互使用,还是在一些情况下只能用第一种(第二种),其他情况用另一种。
还有这两句是什么意思呀:if(session.getAttribute("flag")==null)
session.setAttribute("flag","ok");
躬谢大家了!
<html>
<head>
<title>实现简单购物车1 </title>
</head>
<body>
<center>
<%
session.setAttribute("product","54寸液晶电视机");
session.setAttribute("price","10000"); session.setAttribute("chanpin",session.getAttribute("product")+",");
session.setAttribute("jiaqian",session.getAttribute("price")+",");
out.print(session.getAttribute("chanpin")+" <br>");
out.print(session.getAttribute("jiaqian")+" <br>");
%>
<a href="test40.jsp">去买计算机 </a>
</center> </body>
</html>
上述红色的部分换成这样写:
<%@ page contentType="text/html;charset=gb2312"%>
<html>
<head>
<title>实现简单购物车1 </title>
</head>
<body>
<center>
<%//初始化session对象
if(session.getAttribute("flag")==null){
session.setAttribute("flag","ok");
session.setAttribute("product","");
session.setAttribute("price",""); }
session.setAttribute("chanpin",session.getAttribute("product")+"54寸液晶电视机,");
session.setAttribute("jiaqian",session.getAttribute("price")+"10000,");
out.print(session.getAttribute("chanpin")+" <br>");
out.print(session.getAttribute("jiaqian")+" <br>");
%>
<a href="test40.jsp">去买计算机 </a>
</center> </body>
</html>
这样写都可以通过编译且一样,我就想问一下是不是无论在什么样的编译要求下,这两种编译方式都可以相互使用,还是在一些情况下只能用第一种(第二种),其他情况用另一种。
还有这两句是什么意思呀:if(session.getAttribute("flag")==null)
session.setAttribute("flag","ok");
躬谢大家了!
楼主【gjk11】截止到2008-06-23 08:15:18的历史汇总数据(不包括此帖):
发帖数:3 发帖分:70
结贴数:2 结贴分:40
未结数:1 未结分:30
结贴率:66.67 % 结分率:57.14 %
楼主加油
楼主可以看看api
你的这段程序没有什么特别的意思。无非就是往session里面存一些对象。只要语法没有错误编译都能通过。而你写的这两段程序都没有语法错误,所以编译都通过了。2.还有这两句是什么意思呀:if(session.getAttribute("flag")==null)
session.setAttribute("flag","ok"); flag一般用做表示“标志位”一般用来标志某些变量是否已经完成,或者有效,失效等。
你的程序里面的标志位用来表示session是否存储过product和price
if(session.getAttribute("flag")==null) //判断session是否存储了标志位,也就是是否存储过product和pricesession.setAttribute("flag","ok"); //设置标志位,证明sessoin已经存储过product和price 下次访问if(session.getAttribute("flag")==null)时判断条件就不一样了。
如果用户没用通过登录界面,而是直接方法站点的某个页面,一般用if(session.getAttribute("username")==null)来判断用户是否登录或者是否登录成功.
所以要使用哪种方式,是根据需求来制定的.楼书所说的两种情况并没什么大的区别.if(session.getAttribute("flag")==null) 来判断session中是否存在flag这个属性,如果不存在,则通过session.setAttribute("flag","ok")来设置flag属性.
session.setAttribute("product","54寸液晶电视机");
session.setAttribute("price","10000");
和第二种写法
session.setAttribute("product","");
session.setAttribute("price","");
你可以发现都是对session的属性product和price赋值。他们不同的就是第二种赋的是空值,第一种有值。
关于
if(session.getAttribute("flag")==null){
session.setAttribute("flag","ok");
这个代码,我想flag大约是一个是否登录的标志
一般在有权限的网站都要对页面进行是否登录的验证,如果没有登录,则跳到登录页面或者不能做某些操作。
只是你这里给的代码太少,还看不出flag的主要作用是什么。