对于javaBean,我们说就是一个*.java文件。对于javaBean的应用必须结合表单才能体现。我们来以一个实例学习javaBean的应用。

  1. biaodan.html
  2. <html>
  3. <head>
  4. <title>WEB开发</title>
  5. </head>
  6. <body>
  7. <form action="javaBean_01.jsp" method="post">
  8. 姓名:<input type="text" name="name"><br>
  9. 年龄:  <input type="text" name="age"><br>
  10. <input type="submit" value="提交">
  11. <input type="reset" value="重置">
  12. </form>
  13. </body>
  14. </html>

有了提交页面,我们再来做接受显示页面。对于属性的定义应该用javaBean了。

  1. SimpleBean.java
  2. package javaBean01;
  3. public class SimpleBean {
  4. private String name;
  5. private int age;
  6. public SimpleBean(){
  7. }
  8. public void setName(String name){
  9. this.name=name;
  10. }
  11. public void setAge(int age){
  12. this.age=age;
  13. }
  14. public String getName(){
  15. return this.name;
  16. }
  17. public int getAge(){
  18. return this.age;
  19. }
  20. }

javaBean做好了后,再来做SimpleBean_01.jsp页面,这个页面才是关键,如果按照一般方法的话如下:

  1. SimpleBean_01.jsp
  2. <%@ page language="java" contentType="text/html" pageEncoding="gbk" %>
  3. <%@ page import="javaBean01.SimpleBean" %>  //导进包
  4. <html>
  5. <head>
  6. <title>web开发</title>
  7. </head>
  8. <body>
  9. <%
  10. request.setCharacterEncoding("gbk");   //编码
  11. SimpleBean simple=new SimpleBean();   //实例化对象
  12. simple.setName(request.getParameter("name"));   //接受参数
  13. simple.setAge(Integer.parseInt(request.getParameter("age")));
  14. %>
  15. <h3>姓名:<%=simple.getName() %></h3>
  16. <h3>年龄:<%=simple.getAge() %></h3>
  17. </body>
  18. </html>

以上的方法是一般的做法,先导进去javaBean的包,然后实例化对象,然后接受参数让其显示,这一种方法是最原始的手工定义javaBean的对象,可以说都是用手工完成的。       但是既然我们学了javaBean了,就会有一种更好的方法,那就是标签指令。标签指令在上一篇文章中已经学习过了,而这一次我们来更加深入的学习标签指令。

  1. SimpleBean_01.jsp
  2. <%@ page language="java" contentType="text/html" pageEncoding="gbk" %>
  3. <html>
  4. <head>
  5. <title>web开发</title>
  6. </head>
  7. <body>
  8. <%   request.setCharacterEncoding("gbk");%>
  9. <jsp:useBean id="simple" scope="page" class="javaBean01.SimpleBean"/>
  10. <jsp:setProperty name="simple" property="*"/>    操作javaBean中的属性
  11. <h3>姓名:<%=simple.getName() %></h3>
  12. <h3>年龄:<%=simple.getAge() %></h3>
  13. </body>
  14. </html>

用以上的这个方法我们可以发现它的好处,实例化对象用一个id就可以了,而且没有了接受参数这一块,没错,原来的接受参数被 <jsp:setProperty name="simple" property="*"/> 这个指令所代替了。

通过一个<jsp:setProperty>标签就可以完成所有请求参数的自动设置,而且可以自动将输入的String型变成int型的数据。对于<jsp:setProperty>,它的语法如下:

<jsp:setProperty>:表示操作指定javaBean中的属性,里面定义了两个属性

1. name: 表示的是使用javaBean中的id的定义

2.  property:表示的是设置里面的属性内容,如果为* 则表示自动匹配,与表单相匹配。

如果要想让表单的参数可以自动设置到javaBean之中的话,那么急需要让参数的名称与属性一致,但是这种说法并不明确,因为在这之中还包含了一个概念。

在编写简单的java类的时候一直强调,类中的属性必须封装,封装之后的属性需要按照指定的格式编写对应的setter、getter方法。

使用这种操作,实际上最终调用的是javaBean中的setter方法,而setter方法又有严格的命名要求,所以可以简单的理解为要想设置,则参数名称必须与属性名称一致,否则无法完成设置。

当然,这种操作的原理依然是反射机制,通过反射课一将指定属性名称的setter方法进行调用。

javaBean的优点必须结合表单才可以体现出来。

转载于:https://blog.51cto.com/zhaoyuqiang/1134335

javaBean【02】javaBean与表单应用相关推荐

  1. 【SpringSecurity系列02】SpringSecurity 表单认证逻辑源码解读

    概要 前面一节,通过简单配置即可实现SpringSecurity表单认证功能,而今天这一节将通过阅读源码的形式来学习SpringSecurity是如何实现这些功能, 前方高能预警,本篇分析源码篇幅较长 ...

  2. uni-app.02.提交form表单的两种方式

    提交form表单的两种方式 uni-app提交form表单的两种方式 form表单元素较少 前端代码举例 后端代码举例 form表单元素较多 前端代码举例: 后端java代码举例 uni-app提交f ...

  3. Vue.js-Day02-AM【Vue表单、核心指令(单选框、密码框、多行文本框、单选、多选、勾选、下拉列表)、组件汇总案例、ToDoList案例、计算属性(computed)、watch监听】

    Vue.js实训[基础理论(5天)+项目实战(5天)]博客汇总表[详细笔记] 目   录 1.Vue表单 原生JS实现异步表单提交 运行截图 代码 核心指令 单选框.密码框.多行文本框 单选 多选 勾 ...

  4. form表单通过checkbox_HTML表单标签基础

    HTML表单 一.传统表单(一) 1.表单是什么? 01.在网页中主要负责数据采集功能的组件. 02.通常与数据库相连. 03.由表单元素组成. 2.表单组件介绍: 01.文本(字段) 02.选择 0 ...

  5. JavaBean与表单处理

    6.1 非MVC模式(Model1) 6.1.1 单纯的JSP页面编程 定义:在单纯的JSP编程模式下,通过应用JSP中的脚本标志,可直接在JSP页面中实现各种功能. 优点:逻辑简单,容易理解 缺点: ...

  6. HTML/CSS学习笔记02【表单标签】

    w3cschool菜鸟教程.CHM(腾讯微云):https://share.weiyun.com/c1FaX6ZD HTML/CSS学习笔记01[概念介绍.基本标签.表单标签][day01] HTML ...

  7. 端午小长假--前端基础学起来02与浏览器交互,表单标签

    form  与用户进行交互,将浏览者的数据传到服务器端,相当于一个容器 语法:<form method = "传送方式"  action = "服务器文件" ...

  8. 02 Ajax表单提交

    目录 一.表单概念 1.表单 2.提交的两种方式 二.form-serize与FormData 1.form-serize 2.FormData 三.文件上传案例分析 以下的既为本文的核心概括 一.表 ...

  9. HTML5+CSS3 02(表格、表单标签、语义化,字符实体标签)

    一 表格的基本使用 1.1 表格的基本标签 场景:在网页中以行+列的单元格的方式整齐展示和数据,如:学生成绩表 基本标签: 标签名 说明 table 表格整体,可用于包裹多个tr tr 表格每行,可用 ...

最新文章

  1. 2022-2028年中国电动牙刷行业深度调研及投资前景预测报告(全卷)
  2. 【ACM】杭电OJ 4548 美素数(二次打表)
  3. Xcode8 注释快捷键无效, 解决方案
  4. mysql查询的题目_mysql查询语句练习题
  5. LeetCode - Valid Number
  6. 【《Effective C#》提炼总结】提高Unity中C#代码质量的21条准则
  7. Linux 线程如何实现同步与互斥
  8. [转载] 机器学习 - 如何使用 Java 调取 Python、R 的训练模型?
  9. 图像分割标注数据labelme解析时报错【Python已停止工作Windows正在检查该问题的解决方案...】【ValueError: Too many dimensions: 3 > 2】
  10. 计算机专业能当电子厂技术员,我在一个机械工厂从事电气技术员的工作,谁能告诉..._电气工程师_帮考网...
  11. c# asp.net在线问卷调查系统源码【源码分享】
  12. Eclipse快捷键 10个最有用的快捷键
  13. SQL中MINUS的用法
  14. oracle通过正则验证香港、澳门、台湾的身份证和护照
  15. 问题:oracle id自增 insert语句如何写?
  16. 如何重新设置苹果id密码_苹果怎么重新设置id账号和密码
  17. Vue组件,动画笔记,必看
  18. 常用虚拟机服务器系统,VM虚拟机10/11+各种纯净虚拟机系统镜像完整版
  19. 问卷网自动填写提交调查问卷
  20. JAVA中使用AES256加密

热门文章

  1. OpenCV3 识别图中表格-JAVA 实现
  2. Elasticsearch学习笔记-04.3批处理
  3. JVM 类型的生命周期学习
  4. 欧洲杯直播助PPTV日均流量登顶视频行业首位
  5. 构建Windows Server 2008虚拟实验室
  6. js list删除指定元素_删除js数组中的指定元素,有这两步就够了
  7. Linux bc 命令简单学习
  8. 基于Mint UI和MUI开发VUE项目一之环境搭建和首页的实现
  9. day4----函数-闭包-装饰器
  10. ChartCtrl源码剖析之——CChartAxis类