JavaBean的相关知识简介

javaBean简介

       JavaBean就是符合某种特定的规范的Java类。使用Javabean的好处是解决代码重复编写,减少代码冗余,功能区分明确,提高了代码的维护性。

 

Javabean的设计原则

公有类

无参的公有构造方法

属性私有

Getter和setter方法

 

案例:

public class Person {

       private String name;

       private String address;

      

       public Person() {

 

       }

 

       public String getName() {

              return name;

       }

 

       public void setName(String name) {

              this.name = name;

       }

 

       public String getAddress() {

              return address;

       }

 

       public void setAddress(String address) {

              this.address = address;

       }

}

JSP动作元素

什么是JSP动作元素

       JSP动作元素(action elements),动作元素为请求处理阶段提供信息。动作元素遵循xml元素的语法,有一个包含元素名的开始标签,可以有属性、可选的内容、与开始标签匹配的结束标签。

 

动作元素有哪些

第一类是与存取JavaBean有关的,包括: (常用)

<jsp:useBean> <jsp:setProperty><jsp:getProperty>

第二类是JSP1.2就开始有的基本元素,包含6个动作元素:

<jsp:include> <jsp:forward> <jsp:param> <jsp:plugin> <jsp:params> <jsp:fallback>

第三类是JSP2.0新增加的元素,主要与JSP document有关,包括六个元素

<jsp:root> <jsp:declaration> <jsp:scriptlet> <jsp:expression> <jsp:text> <jsp:output>

第四类是JSP2.0新增的动作元素,主要是用来动态生成XML元素标签的值,包含3个动作

<jsp:attribute> <jsp:body> <jsp:element>

第五类是JSP2.0新增的动作元素,主要是用在Tag file中,有2个元素

<jsp:invoke> <jsp:dobody>

使用普通方式创建JavaBean

创建一个javaBean

public class Person {

       private String name;

       private String address;

      

       public Person() {

 

       }

 

       public String getName() {

              return name;

       }

 

       public void setName(String name) {

              this.name = name;

       }

 

       public String getAddress() {

              return address;

       }

 

       public void setAddress(String address) {

              this.address = address;

       }

}

在页面中引入这个Javabean

<%@ page language="java"  contentType="text/html;charset=UTF-8" import="com.ck.Person"

pageEncoding="UTF-8"%>

 

<%

        Person person = new Person();

        person.setName("张三");

        person.setAddress("北京");

%>

用户名:<%=person.getName() %><br>

密码:<%=person.getAddress() %>

UseBean动作元素

在JSP页面中使用JavaBean

像使用普通Java类一样,创建JavaBean实例

在JSP页面中使用jsp动作标签使用JavaBean

 

useBeans动作

setProperty动作

getProperty动作

 

<jsp:useBean>

作用 :在jsp页面中实例化或者在指定范围内使用JavaBean

<jsp:useBean id=”标识” class=”Java类的全限定名” scope=”作用范围”/>

 

案例:

<jsp:useBean id="p" class="com.ck.Person" scope="page"/>

姓名:<%=p.getName() %><br>

地址:<%=p.getAddress() %>

setProperty

<jsp:setProperty>

作用:给已经实例话的JavaBean对象的属性赋值,一共四种形式

<jsp:setProperty name=”JavaBean的实例名” property=”*” />(跟表单关联)

<jsp:setProperty name=”JavaBean的实例名” property=”javaBean的属性名” />(跟表单关联)

<jsp:setProperty name=” JavaBean的实例名” property=” javaBean的属性名” value=”属性值” /> (手工赋值)

<jsp:setProperty name=” JavaBean的实例名” property=”属性名” param=”request对象中的参数名” />(跟request参数关联)

 

案例:

Register.jsp输入:

<form action="index.jsp?myName=王五" method="post">

       <table>

              <tr>

                     <td>姓名:</td>

                     <td><input type="text" name="name"></td>

              </tr>

              <tr>

                     <td>地址:</td>

                     <td><input type="text" name="address"></td>

              </tr>

              <tr>

                     <td colspan="2"><input type="submit" value="提交"></td>

              </tr>

       </table>

</form>

 

Index.jsp中输入:

<%

request.setCharacterEncoding("utf-8");

response.setContentType("text/html;charset=UTF-8");

%>

 

<jsp:useBean id="p" class="com.ck.Person" />

 

<!-- 第一种方式 和表单所有属性关联 -->

<%-- <jsp:setProperty property="*" name="p"/> --%>

 

<!-- 第二种方式 和表单中指定的属性关联 -->

<%-- <jsp:setProperty property="name" name="p"/> --%>

 

<!-- 第三种方式 手工赋值 -->

<%-- <jsp:setProperty property="name" name="p" value="李四"/> --%>

 

<!-- 第四种方式 跟request参数关联 -->

<jsp:setProperty property="name" name="p" param="myName"/>

姓名:<%=p.getName() %><br>

地址:<%=p.getAddress() %><br>

JavaBean的四个作用域范围

说明:使用useBean的scope属性可以用来指定Javabean的作用范围

 

Page      仅在当前页面有效

Request 在一次请求中有效

Session   在一次会话中有效

Applicable在整个应用程序中都有效

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值