范例:servlet,JAVABeans与Jsp组合

 

我们用一个UserInfoBean类别来存储一个使用者的信息,并且在Servletjsp之间传送这个容器,以达到沟通和属性共享的目的,为了示范方便这个类别只提供一个属性:useName,代码如下:

//类名:userTnfoBean.java

//编译: javac –d..\classes UserInfoBean.java

Package cn.ts;

public class UserInfoBean{

private String userNanme;

public void setUsernName(String userName){

this.userName=username;

}

public String getUserName(){

return this.userName;

}

}

撰写Servlet

文件名:helloServlet2.java

package cn.ts;

 

import java.io.*;

import javax.servlet.*;

import  javax.servlet.http.*;

import cn.ts.UserInfoBean;

 

 

 

publicclass HelloServlet2 extends HttpServlet {

 publicvoid service(HttpServletRequest request, HttpServletResponseresponse)throws ServletException,IOException{

     // 下面两行让中文文字能正确显示;

     response .setContentType("text/html charset=big5");

     request.setCharacterEncoding("big5");

//  建立UserInfo容器,并指定一个sessionattribute与之对应;

     UserInfoBeanuserInfo=new UserInfoBean();

     usrInfo.setUserName("好好")

     HttpSession session=request.getSession();

     session.setAttribute("userInfo",userInfo);

     

//  前往指定的网页

     Requestdispatch rd;

     rd=getServletContext().getRequestDispatcher("/helloFromServlet2.jsp");

     rd.forward(request,response);

     

     

     

 }

 

}

Session.setAttribute()会将UserInfoBean的容器的属性存入session里面。

撰写jsp

<%@ page contentType="text/html;charset=big5" %>
<jsp:useBean id="userInfo" class="com.huanlin.UserInfoBean" scope="session"/>
 
<html>
<body>
<p> servlet 传入 UserInfoBean.userName 是:
<b>
  <jsp:getProperty name="userInfo" property="userName"/>
</b>
</body>
</html>

有个地方要特别注意。如果在Servlet储存属性时用的是session.setAttribute()方法,也就是将参数存入session中那么在jsp<jsp:useBean>标签的scope就必须指定为session,否则会发生取不到参数的情况。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值