创建一个扩展
HttpServlet的类,并在其上放置包含servlet应该侦听的所需URL的注释。
@WebServlet("/yourServletURL")
public class YourServlet extends HttpServlet {}
只需让表单动作point到这个URL。我也recommend使用POST方法的非幂等请求。最后,您应该确保您已经指定了输入字段的name属性。这表示HTTP请求参数名称。以下是各种HTML form input fields的一些示例:
Normal text field.
Secret text field.
Single-selection radiobuttons.
Male
Female
Single-selection checkbox.
Agree?
Multi-selection checkboxes.
User
Admin
Single-selection dropdown.
Netherlands
United States
Multi-selection listbox.
Cat
Dog
Text area.
Submit button.
在您的servlet中创建一个doPost()方法,它将提交的输入值作为由输入字段名称(而不是id!)键入的请求参数。您可以使用request.getParmeter()从单值字段获取提交的值,并使用request.getParameterValues()从多值字段获取提交的值。
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String name = request.getParameter("name");
String pass = request.getParameter("pass");
String gender = request.getParameter("gender");
boolean agree = request.getParameter("agree") != null;
String[] roles = request.getParameterValues("role");
String countryCode = request.getParameter("countryCode");
String[] animalIds = request.getParameterValues("animalId")
String message = request.getParameter("message");
boolean submitButtonPressed = request.getParameter("submit") != null;
// ...
}
如果必要的话,一些validation,最后坚持在DB通常的JDBC/DAO方式。
User user = new User(name, pass, roles);
userDAO.save(user);
也可以看看: