J2EE学习笔记之JavaBean

J2EE学习笔记之JavaBean
JavaBean概述:
     JavaBean是一个简单的Java类,具有Java类的一切特征。如封装、继承、多态等。JavaBean可分为两类,一类是有用户接口的JavaBean,另一类则是没有用户接口的JavaBean;一般在JSP中使用的是没有用户接口(UI)的JavaBean。
  使用JavaBean主要是用来封装业务逻辑(如数据运算、数据库操作),从而实现业务逻辑与前后台程序的分离。
  标准的JavaBean有以下三个特点:
  (1)JavaBean必须是一个public的类,即JavaBean类的访问权限必为public。
  (2)JavaBean必须具有一个无参数的构造方法。
  (3)一般将JavaBean的属性设置为private的,通过使用getXXX()和setXXX()方法来对相应的属性进行读取和设置。
   原因嘛,表示不清楚。
学习目标:
     学会定义JavaBean
     学会在JSP中调用JavaBean
     学会设置并获得JavaBean属性
     学会设置JavaBean的范围
     学会移除JavaBean
(一)定义JavaBean
    示例说明:
package javaweb.javaBean;
public class UserBean{   //public类
     //设置private属性
     private String name;
     private String password;
     //属性相应的get和set方法
     public String getName(){
        return name;
     }
     public void setName(String username){
        this.name=username;
     }
     public String getPassword(){
        return password;
     } 
     public void setPassword(String passwd){
        this.password=passwd;
     }
     //默认的构造方法即为无参数的构造方法。
}
(二)在JSP中调用JavaBean
    将通常使用的业务逻辑代码封装到JavaBean中,实现了业务逻辑与显示代码的分离,同时也使得封装了业务逻辑的JavaBean可多次被调用,提高了代码的复用度,便于开发维护。


    使用<jsp:useBean>动作指令即可实现在JSP中调用JavaBean,语法格式为:
    <jsp:useBean id="JavaBean实例化后的对象的名称" scope="存储范围" class="JavaBean的类名"></jsp:useBean>
    scope属性是指JavaBean实例化后的对象的存储范围,取值为page、request、session、application。
    class属性指定JavaBean的类名,包括类名和包名。
示例说明用法:useBean.jsp
    <%@ page language="java" contentType="text/html;charset=gb2312"%>
    <html>
    <head>
        <title>JSP中调用JavaBean</title>
    </head>
    <body>
      <%--通过useBean动作指令来调用JavaBean--%>
      <jsp:useBean id="user" scope="page" class="javaweb.javaBean.UserBean"></jsp:useBean>
      <%
          user.setName("lee");
          user.setPassword("hello");
          out.println("用户名:"+user.getName()+"<br/>");
          out.println("用户密码:"+user.getPassword());
       %>
    </body>
    </html>
(三)设置JavaBean属性(与表单结合使用)
    JSP提供了4中格式的动作指令来设置JavaBean属性,如下:
    <jsp:setProperty name="JavaBean实例化后的对象名" property="*"/>
    <jsp:setProperty name="JavaBean实例化后的对象名" property="属性名称"/>
    <jsp:setProperty name="JavaBean实例化后的对象名" property="属性名称" param="参数名称"/>
    <jsp:setProperty name="JavaBean实例化后的对象名" property="属性名称" value="属性值">
    其实可用在JSP中用代码实现以上的功能,而不必非要用动作指令。
    下面对其进行详细的介绍。
    1.
    <jsp:setProperty name="实例化对象名" property="*"/>
    "*"是指根据表单发送过来的数据来对JavaBean的所有属性进行设置,当然这就要求表单发送过来的数据的参数的个数以及参数名都要与JavaBean的属性相一致。
    2.
    <jsp:setProperty name="实例化对象名" property="属性名">
    使用此指令可以设置JavaBean中指定的属性,而不必设置全部的属性。
    3.
    <jsp:setProperty name="实例化对象名" property="属性名" param="参数名"/>
    前两种<jsp:setProperty>动作指令均要求表单传过来的参数名与JavaBean中的属性名相一致,包括大小写,这样有点麻烦。而此动作指令没有这么一个要求,
    只需使用property属性指定要设置的JavaBean属性,而用param属性指定使用传送过来的那个参数对property指定的属性进行设置。
    4.
    <jsp:setProperty name="实例化对象名" property="属性名" value="属性值">
    可使用该动作指令动态设置JavaBean的属性,而不是根据从表单发送过来的数据进行设置。
(四)获得JavaBean属性
    可以通过实例化对象调用相应的get和set方法获得属性,而这里介绍的是使用<jsp:getProperty>动作指令来获得JavaBean属性,语法格式为:
    <jsp:getProperty name="实例化对象名" property="属性名"/>
    name属性要和<jsp:useBean>中的id属性一致
    
(五)设置JavaBean的范围
    JavaBean的存储范围与前面讲过得JSP属性存储范围相同,意义也一样。
(六)移除JavaBean
    JavaBean会根据其设置的范围来决定自己的生命周期,当生命周期结束时,JavaBean将会被自动移除。
    当然我们也可以手动的将其移除,移除不同范围的JavaBean就是移除不同范围的属性一样,调用pageContext、request、session、application的removeAttribute(String name)方法即可,从而将page、request、session、application范围内的JavaBean移除掉。
    name应与<jsp:useBean>中的id属性一致。
完结
基于遗传算法的微电网调度(风、光、蓄电池、微型燃气轮机)(Matlab代码实现)内容概要:本文档介绍了基于遗传算法的微电网调度模型,涵盖风能、太阳能、蓄电池微型燃气轮机等多种能源形式,并通过Matlab代码实现系统优化调度。该模型旨在解决微电网中多能源协调运行的问题,优化能源分配,降低运行成本,提高可再生能源利用率,同时考虑系统稳定性与经济性。文中详细阐述了遗传算法在求解微电网多目标优化问题中的应用,包括编码方式、适应度函数设计、约束处理及算法流程,并提供了完整的仿真代码供复现与学习。此外,文档还列举了大量相关电力系统优化案例,如负荷预测、储能配置、潮流计算等,展示了广泛的应用背景技术支撑。; 适合人群:具备一定电力系统基础知识Matlab编程能力的研究生、科研人员及从事微电网、智能电网优化研究的工程技术人员。; 使用场景及目标:①学习遗传算法在微电网调度中的具体实现方法;②掌握多能源系统建模与优化调度的技术路线;③为科研项目、毕业设计或实际工程提供可复用的代码框架与算法参考; 阅读建议:建议结合Matlab代码逐段理解算法实现细节,重点关注目标函数构建与约束条件处理,同时可参考文档中提供的其他优化案例进行拓展学习,以提升综合应用能力。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值