【JavaWeb笔记】Servlet入门—获取参数

怎么把前端用户输入的信息成功获取到后台呢?

目录

前端页面

重写doPost方法

添加配置信息

运行结果


前端页面

比如我们现在有一个获取信息的前端表单(注:HTML 文件必须与 WEB-INF 同级

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Test</title>
</head>
<body>
    <form action="addSer" method = "post">
        名称:<input type="text" name = "fname"><br/>
        价格:<input type="text" name = "price"><br/>
        库存:<input type="text" name = "fcount"><br/>
        备注:<input type="text" name = "remark"><br/>
        <input type="submit" value = "添加">
    </form>
</body>
</html>

                                          

当我们点击添加按钮时,表单的数据就会被提交到后台

重写doPost方法

我们首先需要部署 Tomcat 服务器的相关 jar 包

File ——> Project Structure

一定要选择你想部署的 Model ,比如本文我想部署到 JavaWebCode 这个 model 下

点击加号,选择 Library,在 Library 下选择 Tomcat

按照以上路径即可完成相关 jar 包的部署 

接下来就可以重写 doPost 方法了,为什么要重写这个方法呢,因为在 HTML 页面,我们选择用 post 方法来接收参数,所以我们才要重写此方法

此 Java 文件需要写在 src 下

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

public class AddServlet extends HttpServlet {
    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        String fname = request.getParameter("fname");
        String priceStr = request.getParameter("price");
        Integer price = Integer.parseInt(priceStr);
        String fcountStr = request.getParameter("fcount");
        Integer fcount = Integer.parseInt(fcountStr);
        String remark = request.getParameter("remark");

        System.out.println("fname = " + fname);
        System.out.println("price = " + price);
        System.out.println("fcount = " + fcount);
        System.out.println("remark = " + remark);
    }
}

添加配置信息

在 WEB-INF 下有一个 web.xml,我们需要在里面指明,form action="addSer" 中的 addSer 就是连接到的 AddServlet 方法

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
         version="4.0">
    <servlet>
        <servlet-name>AddServlet</servlet-name>
        <servlet-class>com.AddServlet</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>AddServlet</servlet-name>
        <url-pattern>/addSer</url-pattern>
    </servlet-mapping>
</web-app>

我们来解释一下 XML 文件中的信息,我们添加的是 servlet 和 servlet-mapping 模块

servlet 中的 servlet-name 指的是我们重写 doPost 方法对应的类,servlet-class 是这个类的位置,从 src 下一级为起始

servlet-mapping 中的 servlet-name 也是我们重写 doPost 方法对应的类,url-pattern 则是我们链接的名称

从下往上看,我们的思路就是前端找到 addSer, addSer 连接到 AddServlet ,AddServlet 的位置在 com.AddServlet,在 Java 文件中找到重写的 doPost 方法,执行

运行结果

                                             

点击添加,我们就可以在后台看到相应的输出了

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

java小白。。

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值