JavaBean的使用

JavaBean

(1)POJO:没有继承或者实现接口,只用来收集数据
(2)表单bean

	1、必须要有包声明(bean的字节码文件只有放在这个包对应的目录下才能被使用),体现了分包管理的原则
	2、表单bean的类型名和文件名要相同,即public class,没有主方法,因为这个bean是web使用的,即tomcat使用,
	   如果有主方法,则是虚拟机使用了
	3、表单bean的属性的个数,类型和属性名都要和form表单的参数个数类型和参数名一致,而不是相同(因为整型字符串可以自动转化
	成int型,所以是一致而不是相同),并且,所有的表单bean的属性要隐藏,即属性要private
	4、对每一个属性都要有get,set方法
	5、一定要显示提供无参的构造方法,基本都是用无参的构造方法来创建对象,包括反射

(3)部署表单bean

	字节码文件要放到Web-inf 下的classes (自己创建)目录下的包对应的目录下
	1)可以自己创建classes文件,在当前目录下,通过打包编译(javac -d . SimpleBean.java)bean的java程序,
		将打包编译的结果复制到classes目录下

(4)jsp页面使用bean

	1)使用<%@page import="导包"%>,tomcat默认去web-inf下的classes下去找这个包对应的目录下找字节码文件
	2)通过get,set方法来对属性进行操作

(5)命名规范

	1)包命名:全部小写字母,用.代表不同层目录
	2)类命名:单词的首字母大写,接口名也一样
	3)属性名称:第一个单词的首字母小写,之后每一个单词的首字母大写,
	4)方法命名:与属性命名相同
	5)常量或者final类型的变量命名:全部单词大写,

(6)jsp的userBean标签

	<jsp:userBean id="zs" scope="page" class="cn.zte.pxb.SimpleBean"/>
	去page里面找属性名为zs的属性值,如果没有,就创建一个名为zs的属性,类型为SinpleBean类型,在page里面
	if(page.getAttribute("zs")==null){
		Page.setAttribute("zs",new SimpleBean());
		SimpleBean zs=(SimpleBean)page.getAttribute("zs");
}
	Zs.setName("tom");
	Zs.setPassword("123456");
	Zs.getName();
 <jsp:userBean id="zs" scope="page" class="cn.zte.pxb.SimpleBean"/>先判断有没有名为zs的属性,没有就创建

<jsp:setProperty name="zs" property="*">

自动收集表单中的数据,同时封装到name为zs的simpleBean中,这样就可以自动收集表单中的数据了,前提条件是simpleBean中属性的个数,类型和属性名都要和form表单的参数个数类型和参数名相同
这里的name=‘zs’是指在page中的名为zs的属性,类型为SimpleBean类型的,和zs中的name是两个东西

	<jsp:getProperty name="zs" property="name"/>//得到zs的name值
	等价于$<zs.name>

(7)

  • 如果表单bean中的个数,类型与表单参数不一致时

    如果类型不一致时:表单中的所有参数都是string类型的,如果Bean中的参数有一个是int型的
    1)如果age在表单中是整型字符串,则可以转化成int型
    2)如果age在表单中是23abc,则如果转成int型,则会报错
    所以,如果两个参数的类型是一致的,是可以转化的,如果参数类型不一致,则会报错

  • 如果个数不一样时

    在表单中,如果少了age这个输入框,则收集表单时,age=null,则不会将null赋值给表单bean中的属性,则会保持创建bean对象时的原值0(在创建表单bean时,在堆中开辟空间,String name=null;String password=null;int age=0)
    所以,如果参数个数不一样,就直接将表单中收集的参数赋值给bean中的属性,没有的就保持创建对象时的原值

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值