怎么在jsp中设置一个数组全局变量,加static报错??能用application吗,怎么用
急求大神解救 --------------------编程问答-------------------- 小弟刚来,分给的少别介意。。。。。 --------------------编程问答-------------------- 你是什么意思啊,是不同页面共享这个数组全局变量吗?那就用request.getSession().setAttribute --------------------编程问答-------------------- 你在 class 里加,然后把这个 class import 进来试试 --------------------编程问答-------------------- 我用Arraylist数组new了一个goodslist对象用来存商品信息,然后把goodslist存到session中,我想定义一个全局变量,当从jsp传值(商品的name等)过来时依次存到goodslist中,而不是要每次都初始化。。。
执行Arraylist goodslist=new Arraylist();语句。。 --------------------编程问答-------------------- <%!List l=new ArrayList(); %>
这样声明,这个变量就是当前jsp全局的变量了。如果不加!,那么这个变量就是局部的, --------------------编程问答-------------------- <%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>
<%@ page import=" goodscar.GoodsSingle"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'showmsg.jsp' starting page</title>
<link href="layout1.css" rel="stylesheet" type="text/css" />
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
<%!
public static String toChinese(String str){
try{
byte s1 []=str.getBytes("ISO8859-1");
return new String(s1,"gb2312");
}catch(Exception e){
return str;
}
}
%>
<div id="container">
<div id="header"></div>
<div id="mainContent">
<div id="sidebar"></div>
<div id="sidebar2"></div>
<div id="content">
<IMG height=400 alt="" src="<%=request.getParameter("picUrl")%>" width=490></br>
<% String dishname=request.getParameter("dishname");%>
<% String price=request.getParameter("price");%>
<% double dishprice = Double.parseDouble(price);%>
<% float dishpr=(float)dishprice; %>
<center>菜名:<%=toChinese(dishname)%></center></br>
<center>价格:RMB<%=price%>元</center></br>
<% int i=0;
if(application.getAttribute("i")==null){
i=0;
}
else{ i=Integer.parseInt((String)application.getAttribute("i"));
i=i+1;
}
out.print(i);
application.setAttribute("i",String.valueOf(i));
%>
<% ArrayList goodslist=new ArrayList();
GoodsSingle single=new GoodsSingle();
single.setName(dishname);
single.setPrice(dishpr);
single.setNum(1);
out.print(i);
goodslist.add(i,single);
%>
<%
session.setAttribute("goodslist",goodslist);
%>
<center><a href="docar.jsp?action=buy"><img src=images/QQ截图20131008125234.png ></a></center>
</div>
</div>
</div>
</body>
</html>
--------------------编程问答-------------------- 刚学的java web 水平拙劣,每次从别的页面传值商品信息,加到商品数组goodslist下,怎么才能让goodslist始终是同一个?而不是每次都new一个?? --------------------编程问答-------------------- 只能对第一个传过来的值进行操作(加入购物车及累加),其他传的不起作用 --------------------编程问答--------------------
上个问题没结贴呢 你还是在发个帖吧 这个时间好久远了
补充:Java , Web 开发