JavaBean保姆级教程
Posted 流楚丶格念
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaBean保姆级教程相关的知识,希望对你有一定的参考价值。
文章目录
就离谱,居然少整理了javabean,话不多说,接着进行保姆级教学。
首先
1. 什么是JavaBean
JavaBean 是一种JAVA语言写成的可重用组件。
为写成JavaBean,类必须是具体的和公共的,并且具有无参数的构造器。JavaBean 通过提供符合一致性设计模式的公共方法将内部域暴露成员属性。众所周知,属性名称符合这种模式,其他Java 类可以通过自身机制发现和操作这些JavaBean 的属性。
JavaBean可分为两种:
- 一种是有用户界面(UI,User Interface)的JavaBean;
- 还有一种是没有用户界面,主要负责处理事务(如数据运算,操纵数据库)的JavaBean。
JSP通常访问的是后一种JavaBean,我们下面说的都是第二种Javabean。
注意:
-
JavaBean类需要是public,这样外部才能够访问
-
JavaBean类中的属性都需要进行封装,也就是将属性设置为private
-
如果封装的属性需要被外部操作,则需要写setter和getter方法
JavaBean类举例:
public class FirstBean {
private String name;
private int age;
public void setName(String name) {
this.name = name;
}
public void setAge(int age) {
this.age = age;
}
public String getName() {
return this.name;
}
public int getAge() {
return this.age;
}
}
2. 使用JavaBean
2.1 使用JavaBean的好处
- 可以将html和java代码分离,后期维护更加方便
- 可以让代码得到复用
2.2 在JSP中如何使用JavaBean
注意需要在使用的地方引入JavaBean,引入JavaBean可以
- 采用
page的import
- 也可以使用
jsp的useBean
(用的多)
使用page的import
//xiaoD是包名
<%@ page import="xiaoD.FirstBean" %>
<%
FirstBean firstBean = new FirstBean();
firstBean.setName("xiaoD");
firstBean.setAge(21);
%>
<%=firstBean.getName() %>
<%=firstBean.getAge() %>
输出
xiaoD
21
使用jsp的useBean
<jsp:useBean id="firstBean" scope="request" class="xiaoD.FirstBean" />
<%
firstBean.setName("xiaoD");
firstBean.setAge(21);
%>
<%=firstBean.getName() %>
<%=firstBean.getAge() %>
输出
xiaoD
21
useBean使用注意:
这里的id是实例化以后的id,scope是对象的作用范围,可以取值为page,request,session,application。
-
如果我们在一个页面设置了其scope为page,那么跳转以后就获取不到了。
-
如果我们在一个页面设置了其scope为request,那么通过服务器跳转以后,如果想要获取,需要在获取的JSP页面也加上下面代码,指明作用范围
<jsp:useBean id="firstBean" scope="request" class="xiaoD.FirstBean" />
在jsp中删除JavaBean
(使用完成以后,不再使用了,需要删除)
//page范围的删除
pageContext.removeAttribute("实例对象的名称");
//request范围的删除
request.removeAttribute("实例化对象的名称");
//session范围的删除
session.removeAttribute("实例化对象的名称");
//application范围的删除
application.removeAttribute("实例化对象的名称");
3. 使用JSP标签设置和获取属性
3.1 设置属性
类型 | 语法 | 说明 |
---|---|---|
自动匹配 | <jsp:setProperty name=”实例化对象的名称” property = “*” /> | 如果form表单中的name值和JavaBean中的属性值一样,那么就都会自动匹配 |
指定属性 | <jsp:setProperty name=”实例化对象的名称” property=”属性名称” /> | 不要全部匹配,只是匹配指定的属性 |
指定参数 | <jsp:setProperty name=”实例化对象的名称” property=”属性名称” param=”参数名称” /> | 通过property和param进行匹配 |
指定内容 | <jsp:setProperty name=”实例化对象的名称” property=”属性名称” value=”内容” /> | 为每个参数指定内容 |
3.2 获取属性
<jsp:getProperty name="实例化对象的名称" property="属性名称" />
以上是关于JavaBean保姆级教程的主要内容,如果未能解决你的问题,请参考以下文章