• 简单的JAVA MVC框架模式--Java-servlet-JavaBean


    MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码

    此框架模式是一个简单的解决个人所得税计算的业务逻辑

    servlet

    import java.io.IOException;
    
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import javax.servlet.http.HttpSession;
    
    /**
     * Servlet implementation class TaxServlet
     */
    public class TaxServlet extends HttpServlet {
    	private static final long serialVersionUID = 1L;
    
    	/**
    	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
    	 *      response)
    	 */
    	protected void doPost(HttpServletRequest request,
    			HttpServletResponse response) throws ServletException, IOException {
    
    		String income = request.getParameter("income");
    
    		int n = Integer.parseInt(income);
    
    		// 控制器调用业务模型
    
    		// 模型 JavaBean
    		Tax tax = new Tax();
    		int result = tax.getResult(n);
    
    		// 结果存入作用域
    		HttpSession session = request.getSession();
    		session.setAttribute("ic", result);
    
    		// 跳转到 show.jsp
    		response.sendRedirect("show.jsp");
    
    	}
    
    }

    JavaBean

    实现对数据的处理:个人所得税的计算

    
    public class Tax {
    
    	// 怎么计算个人所得税
    
    	public int getResult(int n) {
    		// 计算个人所得税
    		int x = n - 3500;
    		if (x <= 0) {
    			return 0;
    		}
    		if (x <= 1500) {
    			return (int) (x * 0.03f);
    		} else if (x <= 4500) {
    			return (int) (x * 0.1f - 105f);
    		} else if (x <= 9000) {
    			return (int) (x * 0.2f - 555f);
    		} else if (x <= 35000) {
    			return (int) (x * 0.25f - 1005f);
    		} else if (x <= 55000) {
    			return (int) (x * 0.3f - 2755f);
    		} else if (x <= 80000) {
    			return (int) (x * 0.35f - 5505f);
    		} else
    			return (int) (x * 0.45f - 13505f);
    	}
    
    }
    
    index.jsp

    <%@ page language="java" contentType="text/html; charset=UTF-8"
    	pageEncoding="UTF-8"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>个人所得税查询</title>
    </head>
    <body>
    
    	<h1>计算个人所得税</h1>
    	<form action="tax" method="post">
    		<input type="text" name="income"><input type="submit" value="提交">
    	</form>
    
    </body>
    </html>

    show.jsp

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Insert title here</title>
    </head>
    <body>
    <span style="white-space:pre">	</span><!-- 内置对象session接收数据   -->
    <span style="white-space:pre">	</span><%
    <span style="white-space:pre">	</span>int n =( (Integer)session.getAttribute("ic")).intValue();
    <span style="white-space:pre">	</span>%>
    <span style="white-space:pre">	</span><h1><%=n %></h1>
    </body>
    </html>



  • 相关阅读:
    深入剖析C#的多态
    .NET多线程编程:多任务和多线程
    .Net类库中实现的HashTable
    用C#编写ActiveX控件
    用微软.NET架构企业解决方案 学习笔记(四)业务层
    SQL事务
    WCF基础知识问与答
    在.NET环境中使用单元测试工具NUnit
    圣殿骑士博客转载系列
    系统架构师学习笔记_第十二章
  • 原文地址:https://www.cnblogs.com/gcczhongduan/p/4315013.html
Copyright © 2020-2023  润新知