JavaBean

来源:互联网 发布:华为云和阿里云哪个好 编辑:程序博客网 时间:2024/04/30 10:39

编写JavaBean必须满足以下几点:
  1. JavaBean必须放在包中  package cn.mldn.lxh ;
  2. JavaBean 必须声明成 public class 类型,文件名与类名一致
  3. 所有属性必须封装
  4. 设置和取得属性可以通过setter getter
  5.使用jsp标签去调用JavaBean时必须有一个无参构造方法

java命名规范
  1. 包名全部小写 如:package cn.mldn.lxh ;
  2. 类名:每个组成单词第一个子母大写。如:SimpleBean
  3. 属性,方法 : 第一个组成单词小写,之后每个单词的首子母大写。如:studentName ;
  4. 常量 :全部大写 final String DBDRIVER="MLDN"
 

对java进行打包编译
javac -d . kkk.java
编译完的.class文件方在WEB-INF/classes 文件夹下。

引用JavaBean
1. <%@page import=""%>

2. <jsp:useBean id="sb"         //id为实例化的对象名称
                scope="page"    //属性范围
                class="cn.mldn.lxh.SimpleBean"   //JavaBean的路径

    >


实例代码
// 1
<%@page contentType="text/html;charset=gb2312"%>
<%@page import="cn.mldn.lxh.*"%>
<%
 // 实例化对象
 SimpleBean sb = new SimpleBean() ;
 sb.setName("李兴华") ;
 sb.setPassword("zzzzzz") ;
%>
<h1>姓名:<%=sb.getName()%></h1>
<h1>密码:<%=sb.getPassword()%></h1>


//2
<%@page contentType="text/html;charset=gb2312"%>
<jsp:useBean id="sb" scope="page" class="cn.mldn.lxh.SimpleBean"/>
<%
 sb.setName("李兴华") ;
 sb.setPassword("zzzzzz") ;
%>
<h1>姓名:<%=sb.getName()%></h1>
<h1>密码:<%=sb.getPassword()%></h1>


//3
<%@page contentType="text/html;charset=gb2312"%>
<jsp:useBean id="sb" scope="page" class="cn.mldn.lxh.SimpleBean"/>
<jsp:setProperty name="sb" property="*"/>
<%--
 // 如果有20个数据需要设置,则使用JavaBean的设置属性方式,可以自动完成
 // 代替以下代码
 sb.setName(request.getParameter("name")) ;
 sb.setPassword(request.getParameter("password")) ;
--%>
<h1>姓名:<%=sb.getName()%></h1>
<h1>密码:<%=sb.getPassword()%></h1>

//SimpleBean.java
// 所有的JavaBean必须放在一个包中
package cn.mldn.lxh ;

public class SimpleBean
{
 private String name ;
 private String password ;
 
 // 如果没有指定构造方法,则会自动生成一无参的什么都不做的构造方法
 public SimpleBean()
 {
  System.out.println("** public SimpleBean() .") ;
  System.out.println("-------------------------------------------") ;
 }
 
 public void setName(String name)
 {
  this.name = name ;
 }
 public void setPassword(String password)
 {
  this.password = password ;
 }
 public String getName()
 {
  return this.name ;
 }
 public String getPassword()
 {
  return this.password ;
 }
};

 page 范围 : 只在当前页有效,如果跳转到其他页面,则需要重新实例化。
request 范围 : 只保存在一次服务器跳转中。但是必须使用<jsp:forward page="*.jsp">跳转
session 范围 : 属性保存在一次会话中,可以使用任意方式连接其他页面,则此对象只实例化一次。适用于:使用JSP直接开发购物车。
application 范围: 属性公有,此对象在整个服务器上只实例化一次,尽量少用,非常占用资源。

实例代码:

<%@page contentType="text/html;charset=gb2312"%>
<jsp:useBean id="cb" scope="page" class="cn.mldn.lxh.CountBean"/>
访问第
<font color="red" size="15">
 <jsp:getProperty name="cb" property="coun"/>
</font>
次!!
<jsp:forward page="pageJBDemo02.jsp"/>

 


<%@page contentType="text/html;charset=gb2312"%>
<jsp:useBean id="cb" scope="request" class="cn.mldn.lxh.CountBean"/>
访问第
<font color="red" size="15">
 <jsp:getProperty name="cb" property="coun"/>
</font>
次!!
<jsp:forward page="requestJBDemo02.jsp"/>

原创粉丝点击