javaBean介绍

javaBean介绍javaBean介绍javaBean概述起初,JavaBean的目的是为了将可以重复使用的代码进行打包,在传统的应用中,JavaBean主要用于实现一些可视化界面,如一个窗体、按钮、文本框等,这

大家好,又见面了,我是你们的朋友全栈君。

 javaBean介绍

 javaBean 概述

起初,JavaBean的目的是为了将可以重复使用的代码进行打包,在传统的应用中,JavaBean主要用于实现一些可视化界面,如一个窗体、按钮、文本框等,这样的JavaBean称之可视化的JavaBean。随着技术的不断发展与项目的需求,目前JavaBean主要用于实现一此业务逻辑或封装一些业务对象,由于这样的JavaBean并没有可视化的界面,所以又称之为非可视化的JavaBean。
可视化的JavaBean一般应用于Swing的程序中,在Java Web开发中并不会采用,而是使用非可视化的JavaBean,实现一此业务逻辑或封装一些业务对象,下面就通过实例来了解一下非可视化的JavaBean。

<span role="heading" aria-level="2">javaBean介绍

 

 

 

JavaBean种类

1.**可视化的JavaBean:**主要实现一些可视化的界面
2.**非可视化的JavaBean:**实现一些业务逻辑或一些业务对象。

 


 

JavaBean的应用

1.获取JavaBean的属性信息

在javaBean对象中,为了防止外部直接对JavaBean属性的调用,通常将JavaBean中的属性设置为私有的(private),但需要为其提供公共的(public)访问方法,也就是getXXX()方法。

说明:使用 jsp:useBean标签可以实例化JavaBean对象,jsp:getProperty标签可以获取JavaBean中的属性信息,这两个标签可以直接操作我们所编写的类,但是它在JSP 页面中并不可以操作所有的Java类。

jsp:useBean标签与jsp:getProperty标签之所以可以操作java类,是因为我们所编写的Java类遵循了JavaBean规范。jsp:useBean标签获取类的事例,其内部是通过实例化类的默认构造方法进行获取,所以,JavaBean需要一个默认的无参的构造方法;jsp:getProperty标签获取JavaBean中的属性,其内部是通过调用指定类型的getXXX方法进行获取,所以,JavaBean规范要求为属性提供公共的(public)类型的访问器。因此,在编写就JavaBean是要遵循制定的JavaBean规范。


 

2.对JavaBean属性赋值

编写JavaBean对象要遵循JavaBean规范,在JavaBean’规范中的访问器的setXXX()方法,用于对JavaBean中的属性赋值,如果对JavaBean对象的属性提供了setXXX()方法,在JSP页面中就可以通过,<jsp:setProperty>对其进行赋值


 

3.在JSP页面中应用JavaBean

将JavaBean对象应用到JSP页面中,JavaBean的生命周期可以自行进行设置,它存在于4种范围之内,分别为:page、request、session、application,默认的情况下,JavaBean作用于page范围之内。


 

4.实例

实现档案管理系统,在其中录入用户信息功能,主要通过在JSP 页面中应用JavaBean进行实现。

(1) 创建名称为Person的类,实现对用户信息的封装。

 1 package dao;
 2 
 3 public class Person { 4 // 姓名 5  private String name; 6 // 年龄 7 private int age; 8 // 性别 9  private String sex; 10 // 住址 11  private String add; 12  public String getName() { 13 return name; 14  } 15 public void setName(String name) { 16 this.name = name; 17  } 18 public int getAge() { 19 return age; 20  } 21 public void setAge(int age) { 22 this.age = age; 23  } 24  public String getSex() { 25 return sex; 26  } 27 public void setSex(String sex) { 28 this.sex = sex; 29  } 30  public String getAdd() { 31 return add; 32  } 33 public void setAdd(String add) { 34 this.add = add; 35  } 36 }

(2)创建程序的主页面index.jsp,在该页面中放置录入用户信息所需要的表单

 1 <%@ page language="java" contentType="text/html; charset=UTF-8"
 2     pageEncoding="UTF-8"%>
 3 <!DOCTYPE html>
 4 <html>
 5 <head>
 6 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 7 <title>Insert title here</title>
 8 </head>
 9 <body>
10     <form action="reg.jsp" method="post">
11         <table align="center" width="400" height="200" border="1">
12             <tr>
13                 <td align="center" colspan="2" height="40">
14                     <b>添加用户信息</b>
15                 </td>
16             </tr>
17             <tr>
18                 <td align="right">姓 名:</td>
19                 <td>
20                     <input type="text" name="name">
21                 </td>
22             </tr>
23             <tr>
24                 <td align="right">年 龄:</td>
25                 <td>
26                     <input type="text" name="age">
27                 </td>
28             </tr>
29             <tr>
30                 <td align="right">性 别:</td>
31                 <td>
32                     <input type="text" name="sex">
33                 </td>
34             </tr>
35             <tr>
36                 <td align="right">住 址:</td>
37                 <td>
38                     <input type="text" name="add">
39                 </td>
40             </tr>
41             <tr>
42                 <td align="center" colspan="2">
43                     <input type="submit" value="添 加">
44                 </td>
45             </tr>
46         </table>
47     </form>
48 </body>
49 </html>

(3)创建名称为reg.jsp的JSP页面,用于对index.jsp页面中的表单的提交请求进行处理。

 1 <%@ page language="java" contentType="text/html; charset=UTF-8"
 2     pageEncoding="UTF-8"%>
 3 <!DOCTYPE html>
 4 <html>
 5 <head>
 6 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 7 <title>Insert title here</title>
 8 </head>
 9 <body>
10     <%request.setCharacterEncoding("UTF-8");%>
11     <jsp:useBean id="person" class="dao.Person" scope="page">
12         <jsp:setProperty name="person" property="*"/>
13     </jsp:useBean>
14     <table align="center" width="400">
15         <tr>
16             <td align="right">姓 名:</td>
17             <td>
18                 <jsp:getProperty property="name" name="person"/>
19             </td>
20         </tr>
21         <tr>
22             <td align="right">年 龄:</td>
23             <td>
24                 <jsp:getProperty property="age" name="person"/>
25             </td>
26         </tr>
27         <tr>
28             <td align="right">性 别:</td>
29             <td>
30                 <jsp:getProperty property="sex" name="person"/>
31             </td>
32         </tr>
33         <tr>
34             <td align="right">住 址:</td>
35             <td>
36                 <jsp:getProperty property="add" name="person"/>
37             </td>
38         </tr>
39     </table>
40 </body>
41 </html>

运行结果:

<span role="heading" aria-level="2">javaBean介绍

 

 <span role="heading" aria-level="2">javaBean介绍

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/155782.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • crontab 定时同步时间_linux的crontab用法

    crontab 定时同步时间_linux的crontab用法1.首先需了解linux内一任务计划工具crontabcrontab可以定时去执行你要做的动作直接用crontab命令编辑 crontab -u//设定某个用户的cron服务,一般root用户在执行这个命令的时候需要此参数 crontab-l//列出某个用户cron服务的详细内容 crontab-r//删除某个用户的cron服务 crontab-e//编辑某个用户的cr…

    2022年8月24日
    11
  • 数据库行存储及列存储详解

    数据库行存储及列存储详解本文参见:https://blog.csdn.net/Xingxinxinxin/article/details/80939277未完待修改…………………..一.数据处

    2022年7月1日
    24
  • 1277. 统计全为 1 的正方形子矩阵(动态规划)

    1277. 统计全为 1 的正方形子矩阵(动态规划)给你一个 m * n 的矩阵,矩阵中的元素不是 0 就是 1,请你统计并返回其中完全由 1 组成的 正方形 子矩阵的个数。示例 1:输入:matrix =[ [0,1,1,1], [1,1,1,1], [0,1,1,1]]输出:15解释: 边长为 1 的正方形有 10 个。边长为 2 的正方形有 4 个。边长为 3 的正方形有 1 个。正方形的总数 = 10 + 4 + 1 = 15.示例 2:输入:matrix = [ [1,0,1], [1,1,0],

    2022年8月9日
    3
  • Python中的lambda表达式

    Python中的lambda表达式目录1.简约而不简单的lambda表达式1.1匿名函数基础1.2为什么要使用匿名函数?1.3Python函数式编程1.简约而不简单的lambda表达式在Python中,除了常规函数,你应该也会在代码中见到一些“非常规”函数,它们往往很简短,就一行,并且有个很酷炫的名字——lambda,没错,这就是匿名函数。匿名函数在实际工作中同样举足轻重,正确地运用匿名函数,能让我们的代码更简洁、易读。让我们一起来看下Python中简约而不简单的匿名函数。1.1匿名函数基础..

    2022年10月18日
    4
  • 字符指针赋值[通俗易懂]

    程序1:把两个相同的字符串赋值给两个不同的指针。比较两个指针
    #include
    intmain(void)
    {
    char*a;                          
    printf(“%p/n”,a);
    printf(“%d/n”,sizeof(a));//定义一个指针(一个字节),指针变量里面的值是随机的,所以这个指针也叫悬空指针。
    a=”hello”;                

    2022年4月16日
    58
  • 漏洞扫描工具汇总「建议收藏」

    漏洞扫描工具汇总「建议收藏」漏洞扫描器可以快速帮助我们发现漏洞,如SQL注入漏洞、CSRF、缓冲区溢出等。下面就介绍几种常用的漏洞扫描工具。Fortify代码审计工具FortifySCA(FortifyStaticCodeAnalyzer),一款软件代码安全测试工具,提供静态源码扫描能力,包含了五大引擎分析系统:语义、结构、数据流、控制流、配置流。分析的过程中与特有的软件安全漏洞规则集进行全面的匹配、查找,从而将源代码中存在的安全漏洞扫描出来,并生成报告。BurpSuiteAWVSAppScanDependen

    2025年11月7日
    8

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号