JSP与javaBean


JSP中关于javaBean组件的标签:

<jsp:useBean>:用于在JSP页面中查找或实例化一个JavaBean组件;

<jsp:setProperty>:用于在JSP页面中设置一个JavaBean组件的属性;

<jsp:getProperty>:用于在JSP页面中获取一个JavaBean组件的属性;

  <body>

<jsp:useBeanid="person"class="cn.itcast.domain.Person"scope="page">

</jsp:useBean>

    <%=person.getName() %>

  </body>

  </head>

  <body>

   <jsp:useBean id="person"class="cn.itcast.domain.Person"/>

   <jsp:setPropertyname="person"property="name"value="XXX"/>

   <%=person.getName() %>

   <jsp:setPropertyname="person"property="name"param="name"/>

   <%=person.getName()%>

  </body>

</html>

案例:jspjavaBean做简易计算器!

javaBean部分:

package cn.itcast.domain;

import java.math.BigDecimal;

publicclass CalculatorBean {

    private StringfirstNum="0";

    privatecharoperator='+';

    private StringsecondNum="0";

    private Stringresult="0";

    public String getFirstNum() {

       returnfirstNum;

    }

    publicvoid setFirstNum(String firstNum) {

       this.firstNum = firstNum;

    }

    publicchar getOperator() {

       returnoperator;

    }

    publicvoid setOperator(char operator) {

       this.operator = operator;

    }

    public String getSecondNum() {

       returnsecondNum;

    }

    publicvoid setSecondNum(String secondNum) {

       this.secondNum = secondNum;

    }

    public String getResult() {

       returnresult;

    }

    publicvoid setResult(String result) {

       this.result = result;

    }

    publicvoid calculate(){

       BigDecimal first=new BigDecimal(this.firstNum);

       BigDecimal second=new BigDecimal(this.secondNum);;

       switch(this.operator){

       case'+':{

          this.result=first.add(second).toString();

          break;

       }

       case'-':{

          this.result=first.subtract(second).toString();

          break;

       }

       case'*':{

          this.result=first.multiply(second).toString();

          break;

       }

       case'/':{

          if(second.doubleValue()==0){

             thrownew RuntimeException("被除数不能为零");

          }

          this.result=first.divide(second,20,BigDecimal.ROUND_HALF_UP).toString();

          break;

       }

       default:

          thrownew RuntimeException("运算符只能是+-*");

       }

    }

   

}

Jsp部分

<%@pagelanguage="java"import="java.util.*"pageEncoding="UTF-8"%>

<!DOCTYPEHTMLPUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

  <head>

    <title>计算器</title>

  </head>

  <bodystyle="text-align:center;">

      <jsp:useBeanid="calculatorBean"class="cn.itcast.domain.CalculatorBean"/>

      <jsp:setPropertyname="calculatorBean"property="*"/>

      <%

        calculatorBean.calculate();

      %>

      <br/>-------------------------------<br>

        计算结果是:

        <jsp:getPropertyname="calculatorBean"property="firstNum"/>

        <jsp:getPropertyname="calculatorBean"property="operator"/>

        <jsp:getPropertyname="calculatorBean"property="secondNum"/>

        =

        <jsp:getPropertyname="calculatorBean"property="result"/>

        

      <br/>-------------------------------<br>

      <br/>

    <form action="/day09/Calculator.jsp"method="post">

    <table>

        <tr >

            <td colspan="2">简单的计算器</td>

        </tr>

        <tr>

            <td>第一个参数</td>

            <td>

               <inputtype="text"name="firstNum">

            </td>

        </tr>

        <tr>

            <td>操作符</td>

            <td>

               <selectname="operator">

                   <optionvalue="+">+</option>

                   <optionvalue="-">-</option>

                   <optionvalue="*">*</option>

                   <optionvalue="/">/</option>

               </select>

            </td> 

        </tr>

       

         <tr>

            <td>第二个参数</td>

            <td>

               <inputtype="text"name="secondNum">

            </td>

        </tr>

        <tr>

            <td cosspan="2"> 

               <inputtype="submit"value="计算">

            </td>

        </tr>

    </table>

    </form>

  </body>

</html>

 

MVC设计模式:modeljavaBean)、viewJSP)、controllerservlet

EL表达式和JSTL快速入门:

JSP页面中:${标识符}àpageContext.findAttribute(“data”)àpagerequestsessionapplication

注:用EL表达式在取数据时,通常用“.”号,取不出来时,用[ ];

${pageContext.request.contextPath}à获取当前web应用名称

JSTL标签库:JSTLSUN公司开发的一套标签库,使用JSTL可以在页面中实现一些简单的逻辑,从而替换页面中的脚本代码;

在页面中使用JSTL标签需要完成以下2个步骤:

1、  导入jstl.jarstanderd.jar这两个JSTLjar文件

2、  在JSP页面中使用<%@tablib uri=” ” prifix=” ”%>元素导入标签库

JSTL标签库中常用标签:<c:foreach var=” ” items=” ”><c:if test=” ”>

              uri—>standard.jaràMETA-INFàc.tIdàuri

 


 

 

 

 

你可能感兴趣的:(设计模式,jsp,android,String,application)