实验14 MVC

二、实验项目内容(实验题目)

编写代码,掌握MVC的用法。【参考课本 例1 】

三、源代码以及执行结果截图:

example7_1.jsp:

<%@ page contentType="text/html" %>

<%@ page pageEncoding = "utf-8" %>

<jsp:useBean id="digitBean" class ="save.data.Example7_1_Bean" scope="request"/>

<style>

   #tom{

      font-family:宋体;font-size:26;color:blue

   }

</style>

<HTML><body bgcolor=#ffccff>

<form action="computer" id =tom method=post>

<table>

<tr><td id =tom> 输入两个数:</td>

<td id =tom>

<input type=text name="numberOne"

       value=<%= digitBean.getNumberOne() %> id =tom size=6/></td>

<td><input type=text name="numberTwo"

       value=<%=digitBean.getNumberTwo()%> id =tom size=6/></td>

</tr>

<tr><td id =tom>选择运算符号:</td>

<td id =tom>

<select id =tom name="operator">

    <option value="+">+()

    <option value="-">-()

    <option value="*">*()

    <option value="/">/()

</select>

</td>

<td><input type="submit" id =tom value="提交" name="sub"/></td>

</tr>

</table></form>

<p id=tom>

运算结果:

<jsp:getProperty name="digitBean" property="numberOne"/>

<jsp:getProperty name="digitBean" property="operator"/>

<jsp:getProperty name="digitBean" property="numberTwo"/> =

<jsp:getProperty name="digitBean" property="result"/>

</p></body></HTML>

Example7_1_Servlet.Java:

package handle.data;

import java.io.*;

import javax.servlet.*;

import javax.servlet.http.*;

import save.data.*;

public class Example7_1_Servlet extends HttpServlet{

   public void init(ServletConfig config) throws ServletException{

       super.init(config);

   }

   public void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException{

       Example7_1_Bean digitBean = null;

       digitBean = new Example7_1_Bean(); 

     

       request.setAttribute("digitBean",digitBean);

       String str1 = request.getParameter("numberOne");

       String str2 = request.getParameter("numberTwo");

       if(str1==null||str2==null)

         return;

       if(str1.length()==0||str2.length()==0)

         return;

       double numberOne = Double.parseDouble(str1);

       double numberTwo = Double.parseDouble(str2);

       String operator = request.getParameter("operator");

       double result=0;

       if(operator.equals("+"))

           result = numberOne+numberTwo;

       else if(operator.equals("-"))

           result = numberOne-numberTwo;

       else if(operator.equals("*"))

           result = numberOne*numberTwo;

       else if(operator.equals("/"))

           result = numberOne/numberTwo;

       digitBean.setNumberOne(numberOne);

       digitBean.setNumberTwo(numberTwo); 

       digitBean.setOperator(operator);  

       digitBean.setResult(result);

    

       RequestDispatcher dispatcher= request.getRequestDispatcher("example7_1.jsp");

       dispatcher.forward(request,response);

   }

   public  void  doGet(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException{

       doPost(request,response);

   }

}

Example7_1_Bean:

package save.data;

public class Example7_1_Bean {

   double numberOne,numberTwo,result;

   String operator="+";

   public void setNumberOne(double n){

      numberOne=n;

   }

   public double getNumberOne(){

      return numberOne;

   }

   public void setNumberTwo(double n){

      numberTwo=n;

   }

   public double getNumberTwo(){

      return numberTwo;

   }

   public void setOperator(String s){

      operator=s.trim();;

   }

   public String getOperator(){

      return operator;

   }

   public void setResult(double r){

      result=r;

   }

   public double getResult(){

      return result;

   }

}

Web.xml:

<?xml version="1.0" encoding="utf-8"?>

<web-app>

    <!--  以下是web.xml文件新添加的内容 -->

    <servlet>

        <servlet-name>computer</servlet-name>

        <servlet-class>handle.data.Example7_1_Servlet</servlet-class>

    </servlet>

    <servlet-mapping>

        <servlet-name>computer</servlet-name>

        <url-pattern>/computer</url-pattern>

    </servlet-mapping>

    <servlet>

        <servlet-name>handleExpress</servlet-name>

        <servlet-class>handle.data.ExpressWish_Servlet</servlet-class>

    </servlet>

    <servlet-mapping>

        <servlet-name>handleExpress</servlet-name>

        <url-pattern>/handleExpress</url-pattern>

    </servlet-mapping>

    <servlet>

        <servlet-name>shopping</servlet-name>

        <servlet-class>handle.data.Example7_2_Servlet</servlet-class>

    </servlet>

    <servlet-mapping>

        <servlet-name>shopping</servlet-name>

        <url-pattern>/shopping</url-pattern>

    </servlet-mapping>

</web-app>

结果图:

  • 22
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MVC是一种软件设计模式,它包含三个核心组件:模型(Model)、视图(View)和控制器(Controller)。 模型(Model)是应用程序的核心组件,它负责处理数据逻辑。模型代表了应用程序的数据结构,以及对数据的操作和管理。模型独立于用户界面或其他表现形式,它可以通过各种接口与其他组件交互。 视图(View)是用户界面的表现层,负责展示数据给用户。它将模型中的数据以用户可视化的方式展示出来,使用户能够直观地理解和操作数据。视图通常是被动的,它根据需要从模型中获取数据并展示给用户。 控制器(Controller)是模型和视图之间的桥梁,负责协调模型和视图之间的交互。它接受用户的输入并将其传递给模型进行处理,然后再将处理结果传递给视图进行展示。控制器还负责处理用户交互事件和应用程序逻辑,协调各个组件之间的通信和交互。 MVC设计模式的实验原理就是将应用程序的功能划分为三个独立的组件,每个组件负责不同的责任,从而使代码更加模块化和可维护。模型负责处理数据的操作和管理,视图负责展示数据给用户,控制器负责协调模型和视图之间的交互。 通过使用MVC模式,可以使软件的设计更加清晰和结构化,提高代码的可读性和可维护性。同时,MVC模式也方便了团队的合作开发,每个人可以专注于自己的领域,不需要关注其他组件的具体实现。这种模式也可以降低软件的耦合度,使各个组件可以独立地进行修改和测试,从而提高软件的可扩展性和可重用性。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值