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后再将其显示;

java_第一年_JavaWeb(9)的更多相关文章

  1. java_第一年_JavaWeb(14)

    EL :EL表达式主要用于获取数据.执行运算.获取对象.调用java方法: 获取数据 语法:"${标识符}" 会调用pageContext.findAttribute方法,从pag ...

  2. java_第一年_JavaWeb(13)

    JSTL标签库——核心标签库 为了弥补html标签的不足,为了更加方便地在jsp页面中使用java逻辑代码,JSTL标签库因运而生,而其中的佼佼者,被恩宠最多的就是核心标签库了: 核心标签库从功能上可 ...

  3. java_第一年_JavaWeb(11)

    自定义标签:主要是用来移除JSP页面中的java代码. 先从一个简单的案例了解其怎么移除代码: 一个正常的jsp页面: <%@ page language="java" pa ...

  4. java_第一年_JavaWeb(15)

    Filter过滤器,Servlet API 中提供了一个Filter接口,用于实现用户在访问某个目标资源前对其进行拦截: 拦截原理:web服务器通过Filter接口调用doFilter方法,会传递一个 ...

  5. java_第一年_JavaWeb(12)

    SimpleTag标签 定义了五个方法:setJspContext.setJspBody.setParent和getParent以及最重要的doTag方法(完成了所有的业务逻辑): setJspCon ...

  6. java_第一年_JavaWeb(10)

    JavaWeb的两种开发模式 JSP+JavaBean框架:JavaBean负责封装数据.提供方法,JSP负责处理用户请求和显示数据:只能开发较为简单的业务: JSP+JavaBean+Servlet ...

  7. java_第一年_JavaWeb(8)

    前面说到,JSP在运行时会被编译成Servlet源代码,通过_jspServlet方法处理请求,此时该方法会传递和提供9个与web开发相关的对象进行使用,开发人员在JSP页面通过对这些变量即可引用这9 ...

  8. java_第一年_JavaWeb(7)

    JSP执行过程 客户端发出请求访问JSP文件 JSP Container将要访问的JSP文件转译为Servlet的源代码(转译时期),并将其编译成.class文件(编译时期): 执行编译后的.clas ...

  9. java_第一年_JavaWeb(6)

    会话 会话:浏览器从打开一个进程访问服务器到该浏览器关闭,我们称之为一个会话: 在浏览器和服务器交互期间,会不可避免地产生一些数据,而为了为每个用户保存其对应的数据,可使用两种技术:Cookie和Se ...

随机推荐

  1. Read-Only Tables 只读表

    Put  a table into read-only  mode,which prevents DDL or DML changes during table maintenance Put the ...

  2. Centos 的防火墙(firewalld,iptables)

    Centos系统防火墙介绍 概述: 1.Filewalld(动态防火墙)作为redhat7系统中变更对于netfilter内核模块的管理工具: 2.iptables service 管理防火墙规则的模 ...

  3. php7 mysqli连接mysql的几种方式

    一.过程是方法 function connect(){ static $conn; if(!$conn){ $conn = mysqli_connect(DB_HOST,DB_USER,DB_PWD) ...

  4. Qt 样式对于QPushbutton 增加 hover press release效果

    按钮的三种状态,未被选中,选中(划过),点击时候的效果 使用setStyleSheet即QSS样式实现. QPushButton *MyBtn = new QPushButton(this); MyB ...

  5. Zabbix通过邮件发送Screen图形报表实现

    在使用Zabbix的过程中,我们通常会建立一些需要的Screen图形报表来汇总需要监控的Graph. 而下面的两个脚本,则是通过从Zabbix数据库中获取所有的Screen图形参数,提供Zabbix的 ...

  6. pycharm安装第三方库失败module 'pip' has no attribute 'main'

    用的pycharm2017.3,新创建一个项目,在安装appium-python-client时报错module 'pip' has no attribute 'main'.通过强大的度娘,知道是pi ...

  7. 英语单词debug

    来源——docker官网首页https://www.docker.com/ 翻译 vt. 调试,排除故障,除错,改正有毛病部分 过去式 debugged 过去分词 debugged 现在分词 debu ...

  8. 英语单词Obsolete

    Obsolete 来源——命令帮助 [root@centos73 ~]# help typeset typeset: typeset [-aAfFgilrtux] [-p] name[=value] ...

  9. 进入cmd的另外的一种方式

    按Shift键+鼠标右键 进入powershell ,进入的界面和普通的shell界面不一样

  10. Oracle分组函数之Grouping Sets

    功能介绍: 自定义分组的字段 创建表: 插入测试数据: Grouping Sets(null,t.classid,(t.classid,t.studentname)),类似于ROLLUP Select ...