📜  使用Java Servlet 的简单账单拆分器应用程序

📅  最后修改于: 2022-05-13 01:54:58.061000             🧑  作者: Mango

使用Java Servlet 的简单账单拆分器应用程序

先决条件: Java Servlets

Servlets 是一种用于服务器端编程的Java技术,通常用于创建 Web 应用程序。它是一个在支持 Java 的 Web 服务器中运行的模块。

在这里,您将通过开发 Bill Splitter 应用程序来查看实现。在这个Java Servlets 应用程序中,有两个输入列,一个是账单总额,第二列是账单将被拆分的人数。我们来看一下。

输入 :

输出 :

在这里,我们将构建一个简单的 Web 应用程序,该应用程序将在指定数量的人之间分配账单金额。

了解 Servlet 的工作原理:

  • 客户端向服务器发送请求,然后请求进入 Web 容器。
  • Web 容器使用名为 web.xml 的文件来检测要调用的 servlet,并调用所需的 servlet。
  • servlet 将处理信息并将响应发送到客户端机器。

设置 Eclipse IDE:

  • 从 http://www.eclipse.org/downloads/ 下载用于Java EE 开发的 Eclipse IDE
  • 从 https://tomcat.apache.org 下载 Tomcat 服务器
  • 转到文件>新建>动态 Web 项目。
  • 将包含 Tomcat 的文件夹的链接添加到窗口底部的 Servlets 选项卡,您就可以创建您的第一个 servlet!

为 Web 布局创建HTML 文件:

创建一个简单的 HTML 文件,其中包含一个表单,用于输入有关账单金额和人数的详细信息。

HTML


 


Bill Splitter
 
 
  

 

Bill Splitter

     
Input your bill:
Enter no. of people:
   


Java
package servlet;
 
import java.io.IOException;
import java.io.PrintWriter;
 
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
 
public class split extends HttpServlet{
     
public void service(HttpServletRequest req, HttpServletResponse res) throws IOException
{
    int i = Integer.parseInt(req.getParameter("bill"));
    int j = Integer.parseInt(req.getParameter("people"));
    double r = i/j;
     
    System.out.println(r);
   
    PrintWriter out=res.getWriter();
     
    out.println("Bill per person is Rs" +r);   
}
}


XML


  servlet
  
 
 
 serv1
 servlet.split
 
 
 serv1
 /splitter
 
   



创建Java文件:

创建一个新类并扩展 HttpServlet 类,使您的Java类成为一个 servlet。对于 Servlet 文件,响应和请求对象包含在 servlet 类中。 req对象用于从客户端获取数据,而res对象用于向客户端发送响应。这两个函数 parseInt 和 getParameter 将有助于从 HTML 表单中获取输入,并从中获取整数值,然后执行计算,您将看到 PrintWriter 对象来打印输出值。

parseInt is used to convert string to integer.
getParameter is used to get the user input in string form.
PrintWriter is used to fetch output to the output window and not the console.

Java

package servlet;
 
import java.io.IOException;
import java.io.PrintWriter;
 
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
 
public class split extends HttpServlet{
     
public void service(HttpServletRequest req, HttpServletResponse res) throws IOException
{
    int i = Integer.parseInt(req.getParameter("bill"));
    int j = Integer.parseInt(req.getParameter("people"));
    double r = i/j;
     
    System.out.println(r);
   
    PrintWriter out=res.getWriter();
     
    out.println("Bill per person is Rs" +r);   
}
}


配置 web.xml 文件:

每当您创建一个新的动态 Web 项目时,您都会在项目文件夹中获得一个名为web.xml的文件,该文件是将 servlet 和 HTML 文件映射到一起的最重要文件。 web.xml 文件使用两个标签将 Servlet 和 HTML 文件映射到一起。

 is used to assign a universal name to the servlet.
 is used to assign the java class to be executed when servlet is called.
 is used to define the url pattern which when found will call the java class 
defined in 

XML



  servlet
  
 
 
 serv1
 servlet.split
 
 
 serv1
 /splitter
 
   


运行应用程序:

启动服务器并运行!