目录
5.1编写和使用javaBean
5.1.1 编写JavaBean
编写的javabean必须遵循以下规则
1.必须为每个成员变量设置set()和get()方法
2.类中方法的访问权限必须是public
3.如果有构造方法,必须有一个无参构造方法。
5.1.2保存bean的字节码
1.在当前Web服务目录下建立子目录结构:\WEB-INF\classes,然后根据类的包名, 在classes下再建立相应的子目录,比如类的包名为tom.jiafei,那么在classes下建立 子目录结构:tom\jiafei。
2.将创建bean的字节码文件,
复制到“\WEB-INF\classes\tom\jiafei”中。
5.1.3创建和使用bean
1.使用Bean
语法格式为
<jsp:useBean id="bean的名字" class="创建bean的类" scope=“bean的有效范围”>
2.bean的加载原理
当jsp页面使用JSP动作加载一个bean时,JSP引擎将首先根据JSP动作标记给出 bean的id,以及scope给出的使用范围,查找JSP引擎内置pageContent对象中是否 含有这样的bean,如果这样的bean存在,JSP引擎就分配这样的bean给用户
如果在pageContent中没有查找到JSP动作标记要求的bean,就根据class指定的字 节码创建一个JSP动作标记要求的bean,并将所创建的bean添加到pageContent 内置对象中.
3.bean的有效范围和生命周期
1.page bean
2.session bean
3.request bean
4.application bean
5.2获取和修改bean的属性
5.2.1getProperty动作标记
<jsp:getProperty>标签的使用 作用:获取指定JavaBean对象的属性值。 <jsp:getproperty name="JavaBean实例名" property="属性名"/>
5.2.2setProperty动作标记
第一种形式:
<jps:setProperty name = "JavaBean实例名" property = "*"/>
该形式是设置Bean 属性的快捷方式.在Bean 中属性的名字,类型必须和request对象中的参数名称相匹配。由于表单中传过来的数据类型都是String 类型的,Jsp内在机制会把这些参数转化成Bean属性对应的类型。
property = "*"表示所有名字和Bean属性名字匹配的请求参数都将被传递给相应的属性set方法。
第二种形式:
<jsp:setProperty name = "JavaBean实例名" property = "JavaBean属性名" />
使用request对象中的一个参数值来指定Bean中的一个属性值。在这个语法中,property指定Bean 的属性名,而且Bean 属性和request参数的名字应相同。也就是说,如果在Bean 中有setUserName(String userName)方法,那么,propertyName的值就是"userName".这种形式灵活性较强,可以有选择的对Bean中的属性赋值