Java 具有Servlet操作的JSP表单bean

Java 具有Servlet操作的JSP表单bean,java,jsp,servlets,Java,Jsp,Servlets,文件Test.jsp: <form action="servlet.action"> <input type="text" name="fname"> <input type="text" name="lname"> </form> 文件TestServlets.java: private String fname; private String lname; doPost() {

文件
Test.jsp

    <form action="servlet.action">
    <input type="text" name="fname">
    <input type="text" name="lname">
    </form>
文件
TestServlets.java

    private String fname;
    private String lname;
    doPost() {
        ...
    }

如何使jsp中的表单字段映射到pojo并在Servlet中使用?

以下是使用
Servlet
s实现这一点的方法,它在
Struts
Spring
之前就已经存在:

webapp/Test.jsp或WebContent/Test.jsp Person.java
使用普通servlet和JSP没有直接的方法来实现这一点。有一些像Spring MVC或JSF这样的框架可以为程序员完成这一任务。使用普通servlet和JSP,您只能在
请求
会话
(通过servlet)中放置一些属性,然后在JSP中检索它们。没有映射这样的东西。看看JSF或者使用一个框架(Spring,Wicket,…有很多)。我知道您指定了一个Servlet,但是如果您可以使用JSP,那么您可以使用它,这就是我们在框架之前的日子里所做的。
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!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=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
    <form action="servlet.action">
        <input type="text" name="fname" placeholder="First"> <input
            type="text" name="lname" placeholder="Last"> <input type="submit" />
    </form>
</body>
</html>
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
    http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
    <servlet>
        <servlet-name>TestServlets</servlet-name>
        <servlet-class>TestServlets</servlet-class>
    </servlet>

    <servlet-mapping>
        <servlet-name>TestServlets</servlet-name>
        <url-pattern>/servlet.action</url-pattern>
    </servlet-mapping>
    <welcome-file-list>
        <welcome-file>Test.jsp</welcome-file>
    </welcome-file-list>
</web-app>
import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class TestServlets extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp)
            throws ServletException, IOException {
        Person person = new Person();
        person.setFname(req.getParameter("fname")); //Populate fields from request parameter
        person.setLname(req.getParameter("lname"));

    }
}
public class Person {

    private String fname;
    private String lname;

    public String getFname() {
        return fname;
    }

    public void setFname(String fname) {
        this.fname = fname;
    }

    public String getLname() {
        return lname;
    }

    public void setLname(String lname) {
        this.lname = lname;
    }

}