先在idea中创建HTML
建立一个水果表单
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<form action="add" 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>
注意: <form action="add" method="post">:提交的动作(action),提交的类型(post或get)
ADDServlet:接收数据
package com.atguigu.servlets;
import com.sun.net.httpserver.HttpServer;
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
public 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);
System.out.println(price);
System.out.println(fcount);
System.out.println(remark);
}
}
注意:
如图:此处继承要依赖tomcat包,记得导入包
doPost方法: <form action="add"
method="post">因此响应
price本是int类型,但是由于
HttpServletRequest request
只能传来字符串
所以只能进行强制转换
如何将hello.html和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>AddSerylet</servlet-name>
<servlet-class>com.atguigu.servlets.AddServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>AddSerylet</servlet-name>
<url-pattern>/add</url-pattern>
</servlet-mapping>
</web-app>
注意:
接收数据AddServlet的全类名
解读:
1.用户发请求, action=add
2.项目中, web.xm1中找到url-pattern = / add
2.项目中, web.xm1中找到url-pattern = / add
3.找servlet-name = Addservlet
4.找和servlet-mapping中servlet-name一致的servlet
4.找和servlet-mapping中servlet-name一致的servlet
5.找servlet-class ->com.atguigu.servlets.AddServlet
6.用户发送的是post请求(method=post), 因此 tomcat会执行Addservlet中的doPost方法
6.用户发送的是post请求(method=post), 因此 tomcat会执行Addservlet中的doPost方法
效果展示:
输入数据:
apple
3
50
ok
idea中返回