tomcat javaweb 开发(11javabean)

还是看看老师的课件吧,感觉贴到上面还挺方便的,就只好继续贴啦,为了以后看资料方便。

                                                                      JavaBean

首先:一:介绍一下什么是javabean

JavaBean:就是用Java语言定义的类,而这种类的设计需要遵循Sun指定的JavaBeans的标准.

JavaBean的编写要求:

1.   命名规范必须遵守
2.   JavaBean应该是public类,并且必须具有无参数的public构造方法。
3. 类中的全部属性必须封装,访问权限定义为private或protected,不能定义为public,属性名必须以小写字母开头。
4.对每个属性通常定义两个public方法,setter方法和getter方法,方法名应该定义为:getXxx(),setXxx()

二:引入javabean的好处

第一:将HTML和Java程序分离,方便维护。
第二:把常用的程序写成JavaBean组件,不必重新写相同的代码
第三:传递参数
  编写Simple.java

package org.lxh.demo ;
public class Simple{
	private String name ;
	private String password ;
	private int age ;
	public Simple(){
	}
	public void setName(String name){
		this.name = name ;
	}
	public void setPassword(String password){
		this.password = password ;
	}
	public void setAge(int age){
		this.age = age ;
	}
     publicString getName(){
      return this.name ;
       }
     public String getPassword(){
     return this.password; 
      }
     public int getAge(){
     return this.age ;
      }
        };


使用JavaBean

在WEB中使用JavaBean有两种方式:

                     - 通过page指令导入

                     -通过JSP中定义的JavaBean语法访问

范例1:JBDemo1.jsp直接在JSP中使用page指令导入

<%@ page contentType="text/html;charset=GBK"%>
<%@ page import="org.lxh.demo.Simple"%>
<%
	Simple simple = new Simple() ;
	simple.setName("张三") ;
	simple.setPassword("helloworld") ;
	simple.setAge(30) ;
%>
<h2>姓名:<%=simple.getName()%></h2>
<h2>密码:<%=simple.getPassword()%></h2>
<h2>年龄:<%=simple.getAge()%></h2>

范例2:通过JavaBean标签指令完成


<%@ page contentType="text/html;charset=GBK"%>
<jsp:useBean id="simple" class="org.lxh.demo.Simple" scope="page"/>
<%
	simple.setName("张三") ;
	simple.setPassword("helloworld") ;
	simple.setAge(30) ;
%>
<h2>姓名:<%=simple.getName()%></h2>
<h2>密码:<%=simple.getPassword()%></h2>
<h2>年龄:<%=simple.getAge()%></h2>

<jsp:useBeanid="simple" class="org.lxh.demo.Simple" scope="page"/>


<jsp:useBean>:表示在JSP中使用JavaBean

Id:凡是在标签中看到,表示生成的实例化对象,

Class:要引入的类及包。

Scope:此JavaBean的保存范围。四种范围:page,request,session,application.

实例化的操作是使用反射机制完成的。(要求必须有无参构造方法

JavaBean每次修改之后都必须重新启动服务器,因为重新启动服务器之后,才可以将新的类重新加载进来

利用Tomcat中提供的自动加载功能

修改server.xml:

<Context path=“/demo” docBase=“d:\webdemo”reloadable=“true”/>项目开发中使用此配置,项目发布后,一定要关闭


三 :javaBean的应用

接受参数

        使用表单的方式传递参数。通过两种方式进行比较,观察JavaBean语法的特点。

第一种方式:范例:JBDemo3.htm

<form action="JBDemo03.jsp" method="post">
	姓名:<input type="text" name="name"><br>
	密码:<input type="text" name="password"><br>
	年龄:<input type="text" name="age"><br>
	<input type="submit" value="提交">
</form>

原始方式接受JBDemo3.jsp

<%@ page contentType="text/html;charset=GBK"%>
<jsp:useBean id="simple" class="org.lxh.demo.Simple" scope="page"/>
<%
	request.setCharacterEncoding("GBK") ;
%>
<%
	simple.setName(request.getParameter("name")) ;
	simple.setPassword(request.getParameter("password")) ;
	simple.setAge(Integer.parseInt(request.getParameter("age"))) ;
%>
<h2>姓名:<%=simple.getName()%></h2>
<h2>密码:<%=simple.getPassword()%></h2>
<h2>年龄:<%=simple.getAge()%></h2>

原始方式存在的问题:

如果表单中的参数很多要一个个的接受
第二种方式:JavaBean接受
范例:JBDemo4.jsp
<%@ page contentType="text/html;charset=GBK"%>
<jsp:useBean id="simple" class="org.lxh.demo.Simple" scope="page"/>
<%
	request.setCharacterEncoding("GBK") ;
%>
<jsp:setProperty name="simple" property=“*" />
<h2>姓名:<%=simple.getName()%></h2>
<h2>密码:<%=simple.getPassword()%></h2>
<h2>年龄:<%=simple.getAge()%></h2>

设置JavaBean的属性
JavaBean定义完成之后,就可以直接使用设置属性的方式,为bean中的内如赋值,赋值的语句一般有四种:
方法一:通过自省的方式设置内容,最常用的方式。
< jsp:setProperty name="simple" property=“*" />

   ~name属性就是找的JavaBean中定义的id

   ~property=“*”,以后的所有变化都在此处,此时表示的是根据参数的名称自动进行设置


<form action="JBDemo04.jsp" method="post">
	姓名:<input type="text" name="name1"><br>
	密码:<input type="text" name="password"><br>
	年龄:<input type="text" name="age"><br>
	<input type="submit" value="提交">
</form>

如果在Simple.java中作如下修改

public void setName1(String name){
           System.out.println(“*********”);
		this.name = name ;
	}

方法二:指定一个属性

<jsp:setProperty name=“simple” property=“一个具体的属性" />
<%@ page contentType="text/html;charset=GBK"%>
<jsp:useBean id="simple" class="org.lxh.demo.Simple" scope="page"/>
<%
	request.setCharacterEncoding("GBK") ;
	String pass = "hello" ;
%>
<jsp:setProperty name="simple" property="name" />
<jsp:setProperty name="simple" property="password" />
<h2>姓名:<jsp:getProperty name="simple" property="name"/></h2>
<h2>密码:<jsp:getProperty name="simple" property="password"/></h2>
<h2>年龄:<jsp:getProperty name="simple" property="age"/></h2>

方法三:将指定的属性给指定的属性

<jsp:setProperty name=“bean的名称” property=“一个具体的属性“ param=“参数名称” />
<jsp:setProperty name="simple" property="name" param="password"/>
<jsp:setProperty name="simple" property="password" param="name"/>

方法四:设置指定的值给属性

<jsp:setProperty name=“bean的名称” property=“一个具体的属性“  value=“具体的内容” />

<%
	request.setCharacterEncoding("GBK") ;
	String pass = "hello" ;
%>
<jsp:setProperty name="simple" property="name" value="password"/>
<jsp:setProperty name="simple" property="password" value="<%=pass%>"/>

取得指定的属性

<jsp:getProperty name="simple" property="name"/>
<%=simple.getName()%>


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值