📄 chatroomservlet.java
字号:
package onlyfun.caterpillar;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.LinkedList;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class ChatRoomServlet extends javax.servlet.http.HttpServlet implements
javax.servlet.Servlet {
private static LinkedList<Message> messages = new LinkedList<Message>();
private List<Message> addMessage(String text) {
if (text != null && text.trim().length() > 0) {
messages.addFirst(new Message(text));
while (messages.size() > 10) {
messages.removeLast();
}
}
return messages;
}
private List<Message> getMessages() {
return messages;
}
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
List<Message> list = null;
if("send".equals(request.getParameter("task"))) {
String msg = request.getParameter("msg");
// 中文处理
msg = new String(msg.getBytes("ISO-8859-1"), "UTF8");
list = addMessage(msg);
} else if("query".equals(request.getParameter("task"))){
list = getMessages();
}
response.setContentType("text/xml");
response.setHeader("Cache-Control", "no-cache");
response.setCharacterEncoding("UTF8");
PrintWriter out = response.getWriter();
out.println("<messages>");
for(int i = 0; i < list.size(); i++) {
String msg = list.get(i).getText();
out.println("<message>" + msg + "</message>");
}
out.println("</messages>");
out.close();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -