Jsp--JavaBean

一、像使用普通java类一样
1、创建一个web project项目。
2、在src文件下,创建一个包,在包中创建一个类,满足设计原则即可 (此类为公有类,保留无参构造方法,属性全部私有)
3、在index.jsp页面中通过import导入之前创建的类(import="包名.类名")
4、通过使用new创建Javabean实例(创建对象)
5、使用set方法赋值
6、使用get方法取值


 
 
.<jsp:useBean>动作标签:
<jsp:userBean id="标示符(就是创建的对象名)" class="指定类的完整包名" scope="作用范围(默认为pack)" ></jsp:userBean>  
作用:用来实例化一个对象,对象名由id指定,类由class指定。
1、<jsp:useBean id="标示符" class="java类名" scope="作用范围" /> (在一个jsp页面中实例化后根据scope的范围不同,也可能在其他jsp页面中使用其实例化对象)
2、【其中标示符为对象引用;java类名需要使用全名】
<jsp:setProperty>动作:给【已经实例化的Javabean对象的属性赋值】,一共有四种形式。
1、需要表单提交属性:<jsp:setProperty name="Javabean实例名" property="*"/>: 与之前页面提交的表单的【所有属性进行匹配】,若有与javabean类属性名相同的,则进行赋值。比如表坛提交了username="xxx",而javabean里有username属性,则对其进行赋值
2、需要表单提交属性<jsp:setPropery name="Javabean实例名" property="javabean属性名" />:对【指定的属性进行匹配】
3、手动设置属性:<jsp:setProperty name = "Javabean实例名" property="Javabean属性名" value="BeanValue" />
4、与request参数有关,通过url传参 :<jsp:setProperty name="Javabean实例名" property="propertyName" param="request对象中的参数名" />
注意:在当前页面用 jsp:setProperty jsp:getProperty 是 无法马上获取数据的,只有 表单提交后才能获取
<jsp:getProperty>标签
作用:获取指定JavaBean对象的属性值。
<jsp:getproperty name="对象名" property="JavaBean属性名"/>
<jsp:forward page="b.jsp"></jsp:forward> 起到了页面跳转的作用和request.getRequestDispatcher("b.jsp").forward(request, response);效果相同
但jsp:forward 可以使用jsp:param 子标签向b.jsp传入一些参数 eg。
<jsp:forward page="b.jsp">
  <jsp:param value="asd" name="username">
</jsp:forward>


JavaBean的四个作用域范围
   page //仅当前页面有效
   request //可以通过HttpRequest.getAttribute()方法获得JavaBean对象。
   session //可以通过HttpSession.getAttribute()方法获得JavaBean对象。
   application //可以通过application.getAttribute()方法获得JavaBean对象。


  
  
page范围:与当前页面相对应,JavaBean的生命周期存在于一个页面之中,当页面关闭时JavaBean被销毁。
request范围:与JSP的request生命周期相对应,JavaBean的生命周期存在于request对象之中,当request对象销毁时JavaBean也被销毁。
session范围:与JSP的session生命周期相对应,JavaBean的生命周期存在于session会话之中,当session超时或会话结束时JavaBean被销毁。
application范围:与JSP的application生命周期相对应,在各个用户与服务器之间共享,只有当服务器关闭时JavaBean才被销毁。
这4种作用范围与JavaBean的生命周期是息息相关的,当JavaBean被创建后,通过<jsp:setProperty>标签与<jsp:getProperty>标签调用时,将会按照page、request、session和application的顺序来查找这个JavaBean实例,直至找到一个实例对象为止,如果在这4个范围内都找不到JavaBean实例,则抛出异常。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值