这篇文章主要讲解了JavaBean的用法,内容清晰明了,对此有兴趣的小伙伴可以学习一下,相信大家阅读完之后会有帮助。
一、什么是 javabean ?
在jsp页面中,包含html代码、css代码、java代码、以及业务逻辑处理代码等。javabean的作用就是将html代码与java代码分离,**将java代码单独封装成一个处理某种业务逻辑的类**,然后在jsp中调用该类,实现降低耦合多和简化页面的作用。
javabean是特殊的java类,具有以下特征
二、常用操作
访问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
没有定义无参数构造函数
看完上述内容,是不是对JavaBean的用法有进一步的了解,如果还想学习更多内容,欢迎关注亿速云行业资讯频道。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。