Java Web开发模式一(JSP+JavaBean)

Java Web开发模式一(JSP+JavaBean)

  Java Web开发方案有多种可供选择,例如:JSP+JAVABEAN开发模式,JSP+Servlet+JavaBean开发模式,Struts开发方案,Spring开发方案等,本文讲解比较经典的JSP+JAVABEAN开发模式。

JSP+JAVABEAN开发模式: 
特点:该模式将业务逻辑与页面表现进行分离,在一定程度上增加了程序的可调试性和维护性。
缺点:页面将控制与显示集于一身。
结论:简单,适合小型项目的快速构建与运行。

一、JavaBean概述

  
  JavaBean 是一种JAVA语言写成的可重用组件。用户可以使用JavaBean将功能、处理、值、数据库访问和其他任何可以用java代码创造的对象进行打包,并且其他的开发者可以通过内部的JSP页面、Servlet、其他JavaBean、applet程序或者应用来使用这些对象。用户可以认为JavaBean提供了一种随时随地的复制和粘贴的功能,而不用关心任何改变。
  JavaBean可分为两种:一种是有用户界面(UI,User Interface)的JavaBean;还有一种是没有用户界面,主要负责处理事务(如数据运算,操纵数据库)的JavaBean。JSP通常访问的是后一种JavaBean,本文讲解用来封装数据的“值JavaBean”
  JavaBean本质是符合Java语法的类,只不过在此基础上,对它还有更为细致的要求。在Web应用程序中使用的JavaBean,一般要满足如下要求:

  • 必须有一个访问权限为public的无参的构造方法
  • 属性的访问权限为private
  • 属性类型必须是String或者基本类型
  • 属性名和类型是由获取方法(getter)和设置方法(setter)推导而出
  • 必须按照命名约定规则来命名权限为public的获取方法和设置方法(首字母必须小写)
  • 设置方法的参数类型和获取方法的参数类型必须一样

下面在NetBeans IDE中,编写一个名为Student的JavaBean,用来封装学号和学生姓名信息,操作如下:
在Java Web项目中新建Student.java类,编写代码如下:

public class Student {
    String sno="";
    String sname="";
}

接下来在代码处点击右键,依次选择:重构——封装字段——全选——重构,IDE会自动生成代码如下:

public class Student {
    private String sno="";
    private String sname="";

    public String getSno() {
        return sno;
    }

    public void setSno(String sno) {
        this.sno = sno;
    }

    public String getSname() {
        return sname;
    }

    public void setSname(String sname) {
        this.sname = sname;
    }
}

二、在JSP页面使用JavaBean的例子

  在JSP页面上使用任何对象都是这样一个过程,实例化对象——初始化对象——使用该对象,使用JavaWeb也不例外,只不过按照JSP设计的意图,力求在整个过程中尽可能避免使用java脚本,而代之以标准的动作标记。下面描述在JSP页面上使用JavaBean的两种方式:通过java脚本语言方式和使用标准动作标记的方式。
  

1、通过Java脚本使用JavaBean  

  首先按照前文方法在Java web项目中新建Student.java类,再新建JSP页面useScriptlet.jsp,在jsp页面上实现“实例化对象——初始化对象——输出该对象属性信息”的业务逻辑,代码如下:

<%@ page import="example.Student" %>
<%@ page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>JSP Page</title>
    </head>
    <body>
        <% Student s=new Student();%>
        <% s.setSno("csdn");%>
        <% s.setSname("晚秋星辰");%>
        <! --输出学生信息-- >
        <%=s.getSno()%>
        <%=s.getSname()%>
    </body>
</html>

运行结果:这里写图片描述

2、使用标准动作标记使用JavaBean 

  新建JSP页面useScriptTag.jsp,通过使用 <jsp:useBean>,<jsp:setProperty>,<jsp:getProperty>分别实现实例化对象、初始化对象和输出对象信息,代码如下:

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>JSP Page</title>
    </head>
    <body>
        <jsp:useBean id="s" class="example.Student" scope="page"/>
        <jsp:setProperty name="s" property="sno" value="scdn"/>
        <jsp:setProperty name="s" property="sname" value="晚秋星辰"/>
        <jsp:getProperty name="s" property="sno"/>
        <jsp:getProperty name="s" property="sname"/>
    </body>
</html>

运行结果:这里写图片描述

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值