JAVAweb制作简易留言板的代码
时间: 2023-03-19 20:23:26 浏览: 156
以下是一个简单的使用Java Web技术实现留言板的代码示例:
1. 首先,在web.xml中配置servlet:
```xml
<servlet>
<servlet-name>MessageBoardServlet</servlet-name>
<servlet-class>com.example.MessageBoardServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>MessageBoardServlet</servlet-name>
<url-pattern>/message-board</url-pattern>
</servlet-mapping>
```
2. 创建一个Servlet类MessageBoardServlet,实现doGet和doPost方法来处理GET和POST请求:
```java
package com.example;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class MessageBoardServlet extends HttpServlet {
private List<String> messages = new ArrayList<>();
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
resp.setContentType("text/html");
PrintWriter out = resp.getWriter();
out.println("<html><head><title>留言板</title></head><body>");
out.println("<h1>留言板</h1>");
out.println("<ul>");
for (String message : messages) {
out.println("<li>" + message + "</li>");
}
out.println("</ul>");
out.println("<form method=\"post\">");
out.println("<input type=\"text\" name=\"message\" />");
out.println("<input type=\"submit\" value=\"提交\" />");
out.println("</form>");
out.println("</body></html>");
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
String message = req.getParameter("message");
if (message != null && !message.trim().isEmpty()) {
messages.add(message.trim());
}
resp.sendRedirect(req.getContextPath() + "/message-board");
}
}
```
在这个例子中,我们使用了一个ArrayList来存储留言板上的消息。在doGet方法中,我们遍历这个列表,并在页面上显示每个消息。同时,我们还在页面上添加了一个表单,允许用户输入新的消息。在doPost方法中,我们从表单中获取用户输入的消息,并将其添加到列表中。最后,我们使用sendRedirect方法将用户重定向到留言板页面,以便他们可以看到他们刚刚添加的消息。
3. 最后,在JSP页面中使用以下代码来访问servlet:
```html
<a href="${pageContext.request.contextPath}/message-board">访问留言板</a>
```
这将在页面上显示一个链接,允许用户访问留言板。