关于bean的共享问题!!救救我吧!再线等! 共享bean,其实如果你的bean使用:<jsp:useBean id="" scope="application(表示这个bean就被实例一次的说,直到你重启你的服务的)|session(这个就是在同一个session都公用相同的实例的说。)" 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 http://www-900.ibm.com/developerWorks/cn/java/ejbIntro/index6.shtml 那位打下能把jsp的代码写出一两句呀!不胜感激! <jsp:useBean>操作指令<jsp:useBean>操作指令用于在JSP 页面中实例化一个JavaBean 组件这个实例化的JavaBean 组件对象将可以在这个JSP 程序的其它地方被调用<jsp:useBean>操作指令的基本语法形式如下所示<jsp:useBean id="name" scope="page|request|session|application" typeSpec />或者<jsp:useBean id="name" scope="page|request|session|application" typeSpec />body</jsp:useBean>语法参数描述 id 属性用来设定JavaBeans 的名称利用id 可以识别在同一个JSP 程序中使用的不同的JavaBeans 组件实例 class 属性指定JSP 引擎查找JavaBeans 代码的路径一般是这个JavaBean 所对应的Java 类名 scope 属性用于指定JavaBeans 实例对象的生命周期亦即这个JavaBean 的有效作用范围scope 的值可能是page request session 以及application 在下面1.3 节中我们会详细讨论这四个属性值的含义与用法typeSpec 可能是如下的四种形式之一class="className"或者class="className" type="typeName"或者beanName="beanName" type=" typeName"或者type="typeName"当JavaBeans 组件对象被实例化以后你就可以访问它的属性来定制它我们要获得它的属性值应当使用<jsp:getProperty>操作指令或者是在JSP 程序段中直接调用JavaBeans对象的getXXX()方法<jsp:getProperty>操作指令的语法形式如下所示<jsp:getProperty id="Name" property="name" />使用这个操作指令可以获取将要用到的JavaBeans 组件实例对象的属性值实际的值将会被放在输出语句中要改变JavaBeans 的属性你必须使用<jsp:setProperty>操作指令或者是直接调用JavaBeans 对象的方法<jsp:setProperty>操作指令有以下两种语法形式<jsp:setProperty id="Name" property="*" />或者<jsp:setProperty id="Name" property="propertyNumber" value="string" />前者的功能是根据已提交的表单中的数据设置这个JavaBean 中相应(JavaBeans 属性的名称和表单对象的名称要相同)的属性值后者的功能是把这个JavaBeans 的指定的属性设为指定的值为了能在JSP 程序中使用JavaBeans 组件你需要特别注意JavaBeans 类程序的存放问题:为了使应用程序服务器能找到JavaBeans 类你需要将其类文件放在Web 服务器的一个特殊位置以JSWDK1.0.1 服务器为例JavaBeans 的类文件(编译好的class 文件)应该放在examples\WEB-INF\jsp\beans 目录下或者是webpages\WEB-INF\jsp\beans 目录下面在resin服务器中则是放在doc\WEB-INF\classes 目录下的至于JavaBeans 在其他服务器下的存放路径读者可以参考下文的介绍或者相应服务器的开发文档 我的代码节选,希望可以给你点参考:Bean文件 cardBean.java--------------------------------------------------------public class cardbean { private String card_No=""; private String card_Pass=""; public String getCard_No() { return card_No; } public void setCard_No(String card_No) { this.card_No = card_No; } public String getCard_Pass() { return card_Pass; } public void setCard_Pass(String card_Pass) { this.card_Pass = card_Pass; } public int cardlogin(){ //登陆//if ((this.card_No.equals("123")) && (this.card_Pass.equals("321"))){ setCard_Verified("true"); return 1;//返回成功标记 } else{ this.card_No = ""; this.card_Pass = ""; return 0; //返回登陆不成功的标志 }}login.jsp //登陆页面---------------------------------------<form method="post" action="check.jsp" name="loginform" onsubmit="return true;"><br>请输入你的卡号 : <input type=text size=12 name="card_id" maxlength=18><br><br>请输入你的密码 : <input type=password size=12 name="card_pass" maxlength=6><br><br><br><input type="submit" name="Submit" value="登录" ><input type="reset" value="清除"><input type="hidden" name= "loginpage" value = "login.jsp"><br></form>check.jsp//检测页面----------------------------------------------<jsp:useBean id="cardBeanId" scope="session" class="webapp.cardbean" /><jsp:setProperty name="cardBeanId" property="*" /><%if (request.getParameter("card_id")!=null){cardBeanId.setCard_No(request.getParameter("card_id"));}if (request.getParameter("card_pass")!=null){cardBeanId.setCard_Pass(request.getParameter("card_pass"));}if(cardBeanId.cardlogin()==1) { do something; session.setAttribute("frompage","check.jsp");//作为经过验证的标志 response.sendRedirect("success.jsp");}else{ response.sendRedirect("errorlogin.jsp");}%>success.jsp-------------------------------------------------<jsp:useBean id="cardBeanId" scope="session" class="webapp.cardbean" /><h1>登陆成功</h1><%if(session.getAttribute("frompage")!="check.jsp"){response.sendRedirect("errorlogin.jsp");}else{out.write("<h2>你已经成功登录!!!卡号为"+cardBeanId.getCard_No()+"的用户</h2>");out.write("卡号"+cardBeanId.getCard_No());out.write("<br>密码"+cardBeanId.getCard_Pass());}%> Spring 3.0 MVC + JDBC请教 某公司的面试题目.... birt报表问题!~如何用list等数据做数据源?list里面是javabean win下,用浏览器访问linux下ftp服务器的文件(文件是中文名字),有办法让浏览器显示时不是乱码吗? 请问JDBC连接数据库之后为什么不能更改SQL语句了? jrockit是否可以代替sun jdk? 高手进入:数据求和! 求一个自动发送邮件的代码 用JDBC-ODBC连接远端数据库发生错误 谁来帮我配置tomcat谢谢了 关于统计网站登陆人数的问题 请问一个函数的问题
不胜感激!
<jsp:useBean>操作指令用于在JSP 页面中实例化一个JavaBean 组件这个实例化的
JavaBean 组件对象将可以在这个JSP 程序的其它地方被调用<jsp:useBean>操作指令的基
本语法形式如下所示
<jsp:useBean id="name" scope="page|request|session|application" typeSpec />
或者
<jsp:useBean id="name" scope="page|request|session|application" typeSpec />
body
</jsp:useBean>
语法参数描述
id 属性用来设定JavaBeans 的名称利用id 可以识别在同一个JSP 程序中使用
的不同的JavaBeans 组件实例
class 属性指定JSP 引擎查找JavaBeans 代码的路径一般是这个JavaBean 所对应
的Java 类名
scope 属性用于指定JavaBeans 实例对象的生命周期亦即这个JavaBean 的有效作
用范围scope 的值可能是page request session 以及application 在下面1.3 节
中我们会详细讨论这四个属性值的含义与用法
typeSpec 可能是如下的四种形式之一
class="className"
或者
class="className" type="typeName"
或者
beanName="beanName" type=" typeName"
或者
type="typeName"
当JavaBeans 组件对象被实例化以后你就可以访问它的属性来定制它我们要获得
它的属性值应当使用<jsp:getProperty>操作指令或者是在JSP 程序段中直接调用JavaBeans
对象的getXXX()方法<jsp:getProperty>操作指令的语法形式如下所示
<jsp:getProperty id="Name" property="name" />
使用这个操作指令可以获取将要用到的JavaBeans 组件实例对象的属性值实际的值
将会被放在输出语句中
要改变JavaBeans 的属性你必须使用<jsp:setProperty>操作指令或者是直接调用
JavaBeans 对象的方法<jsp:setProperty>操作指令有以下两种语法形式
<jsp:setProperty id="Name" property="*" />
或者
<jsp:setProperty id="Name" property="propertyNumber" value="string" />
前者的功能是根据已提交的表单中的数据设置这个JavaBean 中相应(JavaBeans 属性
的名称和表单对象的名称要相同)的属性值后者的功能是把这个JavaBeans 的指定的属性
设为指定的值
为了能在JSP 程序中使用JavaBeans 组件你需要特别注意JavaBeans 类程序的存放问
题:为了使应用程序服务器能找到JavaBeans 类你需要将其类文件放在Web 服务器的一个
特殊位置以JSWDK1.0.1 服务器为例JavaBeans 的类文件(编译好的class 文件)应该放在
examples\WEB-INF\jsp\beans 目录下或者是webpages\WEB-INF\jsp\beans 目录下面在resin
服务器中则是放在doc\WEB-INF\classes 目录下的至于JavaBeans 在其他服务器下的存放
路径读者可以参考下文的介绍或者相应服务器的开发文档
--------------------------------------------------------
public class cardbean {
private String card_No="";
private String card_Pass="";
public String getCard_No() {
return card_No;
}
public void setCard_No(String card_No) {
this.card_No = card_No;
}
public String getCard_Pass() {
return card_Pass;
}
public void setCard_Pass(String card_Pass) {
this.card_Pass = card_Pass;
}
public int cardlogin(){ //登陆
//if ((this.card_No.equals("123")) && (this.card_Pass.equals("321"))){
setCard_Verified("true");
return 1;//返回成功标记
}
else{
this.card_No = "";
this.card_Pass = "";
return 0; //返回登陆不成功的标志
}
}login.jsp //登陆页面---------------------------------------<form method="post" action="check.jsp" name="loginform" onsubmit="return true;">
<br>请输入你的卡号 : <input type=text size=12 name="card_id" maxlength=18><br>
<br>请输入你的密码 : <input type=password size=12 name="card_pass" maxlength=6><br>
<br><br>
<input type="submit" name="Submit" value="登录" >
<input type="reset" value="清除">
<input type="hidden" name= "loginpage" value = "login.jsp">
<br>
</form>
check.jsp//检测页面----------------------------------------------
<jsp:useBean id="cardBeanId" scope="session" class="webapp.cardbean" />
<jsp:setProperty name="cardBeanId" property="*" />
<%
if (request.getParameter("card_id")!=null){
cardBeanId.setCard_No(request.getParameter("card_id"));}
if (request.getParameter("card_pass")!=null){
cardBeanId.setCard_Pass(request.getParameter("card_pass"));}if(cardBeanId.cardlogin()==1)
{
do something;
session.setAttribute("frompage","check.jsp");//作为经过验证的标志
response.sendRedirect("success.jsp");}
else{
response.sendRedirect("errorlogin.jsp");
}
%>success.jsp-------------------------------------------------
<jsp:useBean id="cardBeanId" scope="session" class="webapp.cardbean" />
<h1>登陆成功</h1>
<%
if(session.getAttribute("frompage")!="check.jsp")
{
response.sendRedirect("errorlogin.jsp");
}
else
{
out.write("<h2>你已经成功登录!!!卡号为"+cardBeanId.getCard_No()+"的用户</h2>");
out.write("卡号"+cardBeanId.getCard_No());
out.write("<br>密码"+cardBeanId.getCard_Pass());
}
%>