JavaBean是一个遵循某种特定写法的Java类,有以下特点:

  • 必需具有一个无参的构造函数
  • 属性必需私有化
  • 私有化的属性必需通过public类型的方法暴露给其它程序,其方法命名也有一定的规范

范例:

package lzj.learn;
public class Person{
private String name;
private String age;//私有化的属性
public Person(){
}//无参的构造函数;
public String getName(){
return name;
}
public void setName(String name){
this.name = name;
}
pubilc int getAge(){
return age;
}
public void setAge(int age){
this.age = age;
}//通过public方法对私有化属性进行添加并查询;其方法名固定为set、get后接属性名且属性名第一个字母要大写;
}

在JSP中使用JavaBean

JSP提供了3个关于JavaBean组件的动作标签

  • <jsp:useBean>标签:表明在JSP页面中查找或实例化一个JavaBean组件;

语法:

<jsp:useBean id = "xxx" class = "package.class" scope = "page|request|session|application" />

其中id属性表示所实例化JavaBean的对象名,class属性表示其完整的类名,必需带有包名,scope属性表示其实例化对象的储存的域范围,默认是page;

  • <jsp:setProperty>标签:设置一个JabaBean组件的属性

语法:

<jsp:setProperty name = "beanName" property = "propertyName" value = "string字符串|<%=expression%>|parameterName" />

其中name属性的实例化的JavaBean对象名,也就是前面<jsp:useBean>标签中的id属性所设定的对象名;property属性是所要设置的属性名,value属性可包含字符串、表达式或变量参数值;变量参数值即表示其值可由自己通过parameterName=“xxx”设定;

  • <jsp:getProperty>标签:获取一个JavaBean组件的属性

语法:

<jsp:getProperty name = "beanName" property = "PropertyName" />

其中name、property属性意义和上述的setProperty标签的属性类似;

结合3大jsp相关的javabean标签和上述给的Person类做一个简单的JSP页面:

<% page language = "java" import = "java.util.*" pageEncoding = "UTF-8" %>
<jsp:useBean id = "person" class="lzj.learn.Person" scope = "page" />
<%
person.setName("小兆")
%>
<jsp:setPorperty name = "person" property = "age" param = "parameterName" />
<! DOCTYPE HTML>
<html>
<head>
<title>jsp:javabean使用范例</title>
<head>
<body>
<h2>姓名:<%=peason.getName()%></h2>
<h2>年龄:<jsp:getPorperty name = "person" property = "age" /></h2>
</body>
</html>

由于我们在使用<jsp:setPorperty>标签时所设置的参数值是变量参数param,因此在调用该jsp时要指定其值,类似http://xxx.xxx/xxx/xxx.jsp?parameterName=23这样,将属性age的值设定为23后再将其显示;

最新文章

  1. LINQ to SQL语句(18)之运算符转换
  2. 解决 DotNetCore.1.0.1-VS2015Tools.Preview2.0.3.exe 在VS2015 Update3 安装失败的问题
  3. ecshop /includes/init.php Arbitrary User Login Vul
  4. VI 摘要
  5. DATA VISUALIZATION – PART 2
  6. 【Linux】管理在线用户
  7. jQuery经典案例
  8. 理解Activity.runOnUiThread()
  9. [BZOJ1878] [SDOI2009] HH的项链 (树状数组)
  10. css3新属性运用
  11. 如何用Baas快速在腾讯云上开发小程序-系列2:搭建Phabricator开发管理平台
  12. eclipse安装spring boot插件spring tool suite
  13. HttpClient与HttpUrlConnection下载速度比较
  14. python3之memcached
  15. iOS 去掉UITableView风格为group时候的最顶部的空白距离
  16. python补充2
  17. SQL处理数据并发,解决ID自增
  18. sqlserver查询数据库中包含某个字段的所有表和所有存储过程
  19. ASP.NET之报表--RDLC(一)---附源码
  20. fusionjs 学习二 核心概念

热门文章

  1. 记录面试一位三年经验Web前端开发者的过程
  2. Solr的学习使用之(九)facet.pivot实战
  3. Axios跨域实例
  4. MYSQL学习笔记——sql语句优化之索引
  5. tomcat启动报错:Error configuring application listener of class org.springframework.web.context.ContextLoaderListener
  6. Angular Viewchild undefined
  7. python笔记(1)--基础知识
  8. css--图片整合(精灵图)
  9. 容器宽高不确定,图片宽高不确定,css如何实现图片响应式?
  10. Log4j Threshold、Append