这里是一个简单的 Servlet-JSP 通信示例代码:
index.jsp
<!doctype html>
<html>
<head>
<title>Servlet - JSP Communication Demo</title>
</head>
<body>
<%
if(request.getAttribute("message") != null) {
out.println("<h1>" + request.getAttribute("message") + "</h1>");
}
%>
<form method="get" action="sayhello">
<label for="name">Enter your name</label>
<input type="text" name="name" id="name" />
<input type="submit" value="Submit">
</form>
</body>
</html>
ServletDemo.java
package com.demo;
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 ServletDemo extends HttpServlet{
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
if(request.getParameter("name") != null && request.getParameter("name") != "") {
request.setAttribute("message", "Hello " + request.getParameter("name"));
}else {
request.setAttribute("message", "");
}
getServletContext().getRequestDispatcher("/index.jsp").forward(request, response);
}
}
web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<servlet>
<servlet-name>Servlet-JSP Communication Demo</servlet-name>
<servlet-class>com.demo.ServletDemo</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Servlet-JSP Communication Demo</servlet-name>
<url-pattern>/sayhello</url-pattern>
</servlet-mapping>
</web-app>
目录结构
--tomcat
--webapps
--servlet
--WEB-INF
--classes
--com
--demo
--ServletDemo.class
--web.xml
--index.jsp
代码说明
这里我创建了一个简单的表单,通过GET 方法将表单数据发送到ServletDemo servlet。另一方面,servlet 获取表单数据并回复一些消息。在 JSP 中显示消息。