一、什么是 javabean ?
在jsp页面中,包含html代码、css代码、java代码、以及业务逻辑处理代码等。javabean的作用就是将html代码与java代码分离,**将java代码单独封装成一个处理某种业务逻辑的类**,然后在jsp中调用该类,实现降低耦合多和简化页面的作用。
javabean是特殊的java类,具有以下特征
- 提供一个默认的无参构造函数。
- 需要被序列化并且实现了 Serializable 接口。
- 可能有一系列的 getter 或 setter 方法,决定了读、写属性。
- 用途:实现一些业务逻辑或封装一些业务对象。例如:字符串处理、数据库操作等。
二、常用操作
访问javaBean
<jsp:useBean id="对象的标识符" scope="bean的作用域" class="路径"/>
访问javaBean的属性信息
使用< jsp:setProperty/ >标签来调用setter方法。
<jsp:setProperty name="对象名" property="属性名" value="属性值"/>
其中property="*" 所有名字和bean属性名匹配的请求参数,都会使用set方法为后者赋值。
value="<%=变量名%>"自定义赋值
pram="requset中参数名" requeset参数赋值
使用< jsp:getProperty/ > 调用getter方法。
<jsp:getProperty name="对象名" property="属性名">
实例:
step1:建立javabean(class文件,具有getter、setter和默认构造方法)
package com.mail.bean;public class Email { private String mailAdd; private boolean test; public Email() {} public Email(String mailAdd) { this.mailAdd = mailAdd; } public boolean isEamil() { // 正则表达式,定义邮箱格式 String regex = "\\w+([-+.']\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*"; // matches()方法可判断字符串是否与正则表达式匹配 if (mailAdd.matches(regex)) { test = true; } return test; } public String getMailAdd() { return mailAdd; } public void setMailAdd(String mailAdd) { this.mailAdd = mailAdd; }}<!-- 输入邮箱 --><%@ page language="java" contentType="text/html; charset=utf8" pageEncoding="utf8"%><!DOCTYPE html><html><head><meta charset="utf8"><title>Insert title here</title></head><body><form action="check.jsp"method="get" > <input type="text" id="email" name="email"> <input type="submit" name="sumit" value="提交"></form></body></html><!-- 验证邮箱 --><%@ page language="java" contentType="text/html; charset=utf8" pageEncoding="utf8"%><!DOCTYPE html><html><head><meta charset="utf8"></head><% String s=request.getParameter("email"); %><jsp:useBean id="email" class="com.mail.bean.Email"></jsp:useBean><jsp:setProperty name="email" property="mailAdd" value="<%=s %>"/><body><jsp:getProperty name="email" property="mailAdd"/><%if(email.isEamil()){ out.print("是正确格式的邮箱。");}else{ out.print("不是正确格式的邮箱。");}%></body></html>遇见的Bug
没有定义无参数构造函数
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。