ajax聊天室(JSP版)4
2007-09-17 23:24
260 查看
Servlet类真的没什么好说的。
先写个BaseServlet基类,以后的几个Servlet类就直接继承它,而不是HttpServlet。
[align=left]package org.jvk.chatroom.servlet;[/align]
[align=left] [/align]
[align=left]import java.io.IOException;[/align]
[align=left]import javax.servlet.ServletException;[/align]
[align=left]import javax.servlet.http.HttpServlet;[/align]
[align=left]import javax.servlet.http.HttpServletRequest;[/align]
[align=left]import javax.servlet.http.HttpServletResponse;[/align]
[align=left]import org.apache.commons.logging.Log;[/align]
[align=left]import org.apache.commons.logging.LogFactory;[/align]
[align=left] [/align]
[align=left]public abstract class BaseServlet extends HttpServlet {[/align]
[align=left] [/align]
[align=left] public final static String USER = "user";[/align]
[align=left] [/align]
[align=left] private static final longserialVersionUID = 520131401655L;[/align]
[align=left] [/align]
[align=left] protected Log log = LogFactory.getLog(this.getClass());[/align]
[align=left] [/align]
[align=left] @Override[/align]
[align=left] public void doGet(HttpServletRequest request, HttpServletResponse response)[/align]
[align=left] throws ServletException, IOException {[/align]
[align=left] execute(request, response);[/align]
[align=left] }[/align]
[align=left] [/align]
[align=left] @Override[/align]
[align=left] public void doPost(HttpServletRequest request, HttpServletResponse response)[/align]
[align=left] throws ServletException, IOException {[/align]
[align=left] execute(request, response);[/align]
[align=left] }[/align]
[align=left] [/align]
[align=left] /**[/align]
[align=left] *由子类实现,处理GET和POST请求[/align]
[align=left] *[/align]
[align=left] *@paramrequest[/align]
[align=left] *@paramresponse[/align]
[align=left] *@throwsServletException[/align]
[align=left] *@throwsIOException[/align]
[align=left] */[/align]
[align=left] publicab stract void execute(HttpServletRequest request,[/align]
[align=left] HttpServletResponse response) throws ServletException, IOException;[/align]
[align=left] [/align]
[align=left] protected final String getValue(HttpServletRequest request, String param) {[/align]
[align=left] String str = request.getParameter(param);[/align]
[align=left] if (str == null)[/align]
[align=left] return"";[/align]
[align=left] return str;[/align]
[align=left] }[/align]
[align=left] [/align]
[align=left] private static byte[] lock = new byte[0];[/align]
[align=left] [/align]
[align=left] protected final void setNoCache(HttpServletRequest request,[/align]
[align=left] HttpServletResponse response) {[/align]
[align=left] synchronized (lock) {[/align]
[align=left] if (request.getProtocol().compareTo("HTTP/1.0") == 0)[/align]
[align=left] response.setHeader("Prama", "no-cache");[/align]
[align=left] else if (request.getProtocol().compareTo("HTTP/1.1") == 0)[/align]
[align=left] response.setHeader("Cache-Control", "no-cache");[/align]
[align=left] response.setDateHeader("Expires", 0);[/align]
[align=left] }[/align]
[align=left] }[/align]
[align=left]}[/align]
[align=left]package org.jvk.chatroom.servlet;[/align]
[align=left] [/align]
[align=left]import java.io.IOException;[/align]
[align=left]import java.util.Collection;[/align]
[align=left] [/align]
[align=left]import javax.servlet.ServletException;[/align]
[align=left]import javax.servlet.http.HttpServletRequest;[/align]
[align=left]import javax.servlet.http.HttpServletResponse;[/align]
[align=left]import javax.servlet.http.HttpSession;[/align]
[align=left] [/align]
[align=left]import org.jvk.chatroom.bean.Room;[/align]
[align=left]import org.jvk.chatroom.bean.User;[/align]
[align=left]import org.jvk.chatroom.service.ChatroomManager;[/align]
[align=left] [/align]
[align=left]public class Login extends BaseServlet {[/align]
[align=left] [/align]
[align=left] private static final longserialVersionUID = 5201314016000L;[/align]
[align=left] [/align]
[align=left] // 设置session生命周期为1分钟[/align]
[align=left] private static intsessionTimeOut = 60 * 1;[/align]
[align=left] [/align]
[align=left] private static final String ROOM_PAGE = "pages/chatroom.jsp";[/align]
[align=left] [/align]
[align=left] private static final String LOGIN_PAGE = "pages/login.jsp";[/align]
[align=left] [/align]
[align=left] private staticf inal String this_PAGE = "login";[/align]
[align=left] [/align]
[align=left] private static final String ERROR_PAGE = "pages/error.jsp";[/align]
[align=left] [/align]
[align=left] public void execute(HttpServletRequest request, HttpServletResponse response)[/align]
[align=left] throws ServletException, IOException {[/align]
[align=left] String userName = getValue(request, "userName");[/align]
[align=left] String roomName = getValue(request, "roomName");[/align]
[align=left] if (userName.length() < 1 || roomName.length() < 1) {[/align]
[align=left] Collection<Room> rooms = ChatroomManager.newInstance().getRooms()[/align]
[align=left] .values();[/align]
[align=left] request.setAttribute("rooms", rooms);[/align]
[align=left] request.getRequestDispatcher(LOGIN_PAGE).forward(request, response);[/align]
[align=left] } else if (ChatroomManager.newInstance().exists(roomName, userName)) {[/align]
[align=left] log.info("该用户已存在,请使用其他字符");[/align]
[align=left] request.setAttribute("returnURL", this_PAGE);[/align]
[align=left] request.setAttribute("errorMessage", "该用户已存在,请使用其他字符");[/align]
[align=left] request.getRequestDispatcher(ERROR_PAGE).forward(request, response);[/align]
[align=left] } else {[/align]
[align=left] HttpSession session = request.getSession(true);[/align]
[align=left] User user = new User(userName, ChatroomManager.newInstance()[/align]
[align=left] .getRoom(roomName));[/align]
[align=left] session.setMaxInactiveInterval(sessionTimeOut);[/align]
[align=left] user.setLastGetMessage(510);[/align]
[align=left] user.setLastGetUserList(520);[/align]
[align=left] session.setAttribute(USER, user);[/align]
[align=left] session.setAttribute("room", ChatroomManager.newInstance().getRoom([/align]
[align=left] roomName));[/align]
[align=left] response.sendRedirect(ROOM_PAGE);[/align]
[align=left] }[/align]
[align=left] }[/align]
[align=left] [/align]
[align=left]}[/align]
[align=left][/align]
[align=left][/align]
[align=left]package org.jvk.chatroom.servlet;[/align]
[align=left] [/align]
[align=left]import java.io.IOException;[/align]
[align=left]import javax.servlet.ServletException;[/align]
[align=left]import javax.servlet.http.HttpServletRequest;[/align]
[align=left]import javax.servlet.http.HttpServletResponse;[/align]
[align=left]import javax.servlet.http.HttpSession;[/align]
[align=left] [/align]
[align=left]import org.jvk.chatroom.bean.Message;[/align]
[align=left]import org.jvk.chatroom.bean.User;[/align]
[align=left]import org.jvk.chatroom.service.ChatroomManager;[/align]
[align=left] [/align]
[align=left] [/align]
[align=left]public class SendMessage extends BaseServlet {[/align]
[align=left] private static final longserialVersionUID = 520131401655L;[/align]
[align=left] @Override[/align]
[align=left] public void execute(HttpServletRequest request, HttpServletResponse response) throws ServletException,[/align]
[align=left] IOException {[/align]
[align=left] HttpSession session = request.getSession(false);[/align]
[align=left] if (session == null){[/align]
[align=left] response.getWriter().write("");[/align]
[align=left] return;[/align]
[align=left] }[/align]
[align=left] synchronized (session) {[/align]
[align=left] User user = (User) session.getAttribute(USER);[/align]
[align=left] Message message = new Message();[/align]
[align=left] String to = request.getParameter("to");[/align]
[align=left] if ("all".equals(to))[/align]
[align=left] to = null;[/align]
[align=left] String content = request.getParameter("content");[/align]
[align=left] message.setContent(content);[/align]
[align=left] message.setFrom(user.getName());[/align]
[align=left] message.setTo(to);[/align]
[align=left] message.setDate(System.currentTimeMillis());[/align]
[align=left] ChatroomManager.newInstance().addMessageToRoom(message, user.getRoom());[/align]
[align=left] //假装响应下[/align]
[align=left] response.getWriter().write("");[/align]
[align=left] }[/align]
[align=left] }[/align]
[align=left]}[/align]
[align=left] [/align]
[align=left][/align]
[align=left] [/align]
[align=left]package org.jvk.chatroom.servlet;[/align]
[align=left] [/align]
[align=left]import java.io.IOException;[/align]
[align=left]import java.io.PrintWriter;[/align]
[align=left]import java.text.SimpleDateFormat;[/align]
[align=left]import java.util.Date;[/align]
[align=left]import java.util.List;[/align]
[align=left] [/align]
[align=left]import javax.servlet.ServletException;[/align]
[align=left]import javax.servlet.http.HttpServletRequest;[/align]
[align=left]import javax.servlet.http.HttpServletResponse;[/align]
[align=left]import javax.servlet.http.HttpSession;[/align]
[align=left] [/align]
[align=left]import org.jvk.chatroom.bean.Message;[/align]
[align=left]import org.jvk.chatroom.bean.User;[/align]
[align=left]import org.jvk.chatroom.service.ChatroomManager;[/align]
[align=left] [/align]
[align=left]public class GetMessage extends BaseServlet {[/align]
[align=left] [/align]
[align=left] @Override[/align]
[align=left] public void execute(HttpServletRequest request, HttpServletResponse response) throws ServletException,[/align]
[align=left] IOException {[/align]
[align=left] HttpSession session = request.getSession(false);[/align]
[align=left] if (session == null)[/align]
[align=left] return;[/align]
[align=left] synchronized (session) {[/align]
[align=left] User user = (User) session.getAttribute(USER);[/align]
[align=left] List<Message> messages = ChatroomManager.newInstance().getMessagesFromRoom(user);[/align]
[align=left] StringBuffer xml = new StringBuffer(4096);[/align]
[align=left] xml.append("<messages>");[/align]
[align=left] for (Message message : messages) {[/align]
[align=left] xml.append("<message>");[/align]
[align=left] xml.append("<from>" + message.getFrom() + "</from>");[/align]
[align=left] xml.append("<date>" + new SimpleDateFormat().format(new Date(message.getDate())) + "</date>");[/align]
[align=left] xml.append("<content>" + message.getContent() + "</content>");[/align]
[align=left] xml.append("</message>");[/align]
[align=left] }[/align]
[align=left] xml.append("</messages>");[/align]
[align=left] System.out.println("xml="+xml);[/align]
[align=left] setNoCache(request, response);[/align]
[align=left] response.setContentType("text/xml; charset=UTF-8");[/align]
[align=left] PrintWriter out = response.getWriter();[/align]
[align=left] out.print(xml);[/align]
[align=left] out.flush();[/align]
[align=left] }[/align]
[align=left] [/align]
[align=left] }[/align]
[align=left] [/align]
[align=left]}[/align]
[align=left] [/align]
[align=left][/align]
[align=left]package org.jvk.chatroom.servlet;[/align]
[align=left] [/align]
[align=left]import java.io.IOException;[/align]
[align=left]import java.io.PrintWriter;[/align]
[align=left]import java.util.List;[/align]
[align=left] [/align]
[align=left]import javax.servlet.ServletException;[/align]
[align=left]import javax.servlet.http.HttpServletRequest;[/align]
[align=left]import javax.servlet.http.HttpServletResponse;[/align]
[align=left]import javax.servlet.http.HttpSession;[/align]
[align=left] [/align]
[align=left]import org.jvk.chatroom.bean.User;[/align]
[align=left]import org.jvk.chatroom.service.ChatroomManager;[/align]
[align=left] [/align]
[align=left]public class GetUserList extends BaseServlet {[/align]
[align=left] [/align]
[align=left] @Override[/align]
[align=left] public void execute(HttpServletRequest request, HttpServletResponse response)[/align]
[align=left] throws ServletException, IOException {[/align]
[align=left] HttpSession session = request.getSession(false);[/align]
[align=left] if (session == null)[/align]
[align=left] return;[/align]
[align=left] synchronized (session) {[/align]
[align=left] User user = (User) session.getAttribute(USER);[/align]
[align=left] ChatroomManager dao = ChatroomManager.newInstance();[/align]
[align=left] List<User> list = dao.getUsersFromRoom(user);[/align]
[align=left] [/align]
[align=left] StringBuffer buffer = new StringBuffer(1024);[/align]
[align=left] buffer.append("<users>");[/align]
[align=left] for (User tempUser : list) {[/align]
[align=left] buffer.append("<user name=/"" + tempUser.getName() + "/"/>");[/align]
[align=left] }[/align]
[align=left] buffer.append("</users>");[/align]
[align=left] log.info("users=/n" + buffer);[/align]
[align=left] setNoCache(request,response);[/align]
[align=left] response.setContentType("text/xml; charset=UTF-8");[/align]
[align=left] PrintWriter out = response.getWriter();[/align]
[align=left] out.print(buffer);[/align]
[align=left] out.flush();[/align]
[align=left] }[/align]
[align=left] [/align]
[align=left] }[/align]
[align=left]}[/align]
[align=left]没有了,就这几个类。 [/align]
先写个BaseServlet基类,以后的几个Servlet类就直接继承它,而不是HttpServlet。
[align=left]package org.jvk.chatroom.servlet;[/align]
[align=left] [/align]
[align=left]import java.io.IOException;[/align]
[align=left]import javax.servlet.ServletException;[/align]
[align=left]import javax.servlet.http.HttpServlet;[/align]
[align=left]import javax.servlet.http.HttpServletRequest;[/align]
[align=left]import javax.servlet.http.HttpServletResponse;[/align]
[align=left]import org.apache.commons.logging.Log;[/align]
[align=left]import org.apache.commons.logging.LogFactory;[/align]
[align=left] [/align]
[align=left]public abstract class BaseServlet extends HttpServlet {[/align]
[align=left] [/align]
[align=left] public final static String USER = "user";[/align]
[align=left] [/align]
[align=left] private static final longserialVersionUID = 520131401655L;[/align]
[align=left] [/align]
[align=left] protected Log log = LogFactory.getLog(this.getClass());[/align]
[align=left] [/align]
[align=left] @Override[/align]
[align=left] public void doGet(HttpServletRequest request, HttpServletResponse response)[/align]
[align=left] throws ServletException, IOException {[/align]
[align=left] execute(request, response);[/align]
[align=left] }[/align]
[align=left] [/align]
[align=left] @Override[/align]
[align=left] public void doPost(HttpServletRequest request, HttpServletResponse response)[/align]
[align=left] throws ServletException, IOException {[/align]
[align=left] execute(request, response);[/align]
[align=left] }[/align]
[align=left] [/align]
[align=left] /**[/align]
[align=left] *由子类实现,处理GET和POST请求[/align]
[align=left] *[/align]
[align=left] *@paramrequest[/align]
[align=left] *@paramresponse[/align]
[align=left] *@throwsServletException[/align]
[align=left] *@throwsIOException[/align]
[align=left] */[/align]
[align=left] publicab stract void execute(HttpServletRequest request,[/align]
[align=left] HttpServletResponse response) throws ServletException, IOException;[/align]
[align=left] [/align]
[align=left] protected final String getValue(HttpServletRequest request, String param) {[/align]
[align=left] String str = request.getParameter(param);[/align]
[align=left] if (str == null)[/align]
[align=left] return"";[/align]
[align=left] return str;[/align]
[align=left] }[/align]
[align=left] [/align]
[align=left] private static byte[] lock = new byte[0];[/align]
[align=left] [/align]
[align=left] protected final void setNoCache(HttpServletRequest request,[/align]
[align=left] HttpServletResponse response) {[/align]
[align=left] synchronized (lock) {[/align]
[align=left] if (request.getProtocol().compareTo("HTTP/1.0") == 0)[/align]
[align=left] response.setHeader("Prama", "no-cache");[/align]
[align=left] else if (request.getProtocol().compareTo("HTTP/1.1") == 0)[/align]
[align=left] response.setHeader("Cache-Control", "no-cache");[/align]
[align=left] response.setDateHeader("Expires", 0);[/align]
[align=left] }[/align]
[align=left] }[/align]
[align=left]}[/align]
[align=left]package org.jvk.chatroom.servlet;[/align]
[align=left] [/align]
[align=left]import java.io.IOException;[/align]
[align=left]import java.util.Collection;[/align]
[align=left] [/align]
[align=left]import javax.servlet.ServletException;[/align]
[align=left]import javax.servlet.http.HttpServletRequest;[/align]
[align=left]import javax.servlet.http.HttpServletResponse;[/align]
[align=left]import javax.servlet.http.HttpSession;[/align]
[align=left] [/align]
[align=left]import org.jvk.chatroom.bean.Room;[/align]
[align=left]import org.jvk.chatroom.bean.User;[/align]
[align=left]import org.jvk.chatroom.service.ChatroomManager;[/align]
[align=left] [/align]
[align=left]public class Login extends BaseServlet {[/align]
[align=left] [/align]
[align=left] private static final longserialVersionUID = 5201314016000L;[/align]
[align=left] [/align]
[align=left] // 设置session生命周期为1分钟[/align]
[align=left] private static intsessionTimeOut = 60 * 1;[/align]
[align=left] [/align]
[align=left] private static final String ROOM_PAGE = "pages/chatroom.jsp";[/align]
[align=left] [/align]
[align=left] private static final String LOGIN_PAGE = "pages/login.jsp";[/align]
[align=left] [/align]
[align=left] private staticf inal String this_PAGE = "login";[/align]
[align=left] [/align]
[align=left] private static final String ERROR_PAGE = "pages/error.jsp";[/align]
[align=left] [/align]
[align=left] public void execute(HttpServletRequest request, HttpServletResponse response)[/align]
[align=left] throws ServletException, IOException {[/align]
[align=left] String userName = getValue(request, "userName");[/align]
[align=left] String roomName = getValue(request, "roomName");[/align]
[align=left] if (userName.length() < 1 || roomName.length() < 1) {[/align]
[align=left] Collection<Room> rooms = ChatroomManager.newInstance().getRooms()[/align]
[align=left] .values();[/align]
[align=left] request.setAttribute("rooms", rooms);[/align]
[align=left] request.getRequestDispatcher(LOGIN_PAGE).forward(request, response);[/align]
[align=left] } else if (ChatroomManager.newInstance().exists(roomName, userName)) {[/align]
[align=left] log.info("该用户已存在,请使用其他字符");[/align]
[align=left] request.setAttribute("returnURL", this_PAGE);[/align]
[align=left] request.setAttribute("errorMessage", "该用户已存在,请使用其他字符");[/align]
[align=left] request.getRequestDispatcher(ERROR_PAGE).forward(request, response);[/align]
[align=left] } else {[/align]
[align=left] HttpSession session = request.getSession(true);[/align]
[align=left] User user = new User(userName, ChatroomManager.newInstance()[/align]
[align=left] .getRoom(roomName));[/align]
[align=left] session.setMaxInactiveInterval(sessionTimeOut);[/align]
[align=left] user.setLastGetMessage(510);[/align]
[align=left] user.setLastGetUserList(520);[/align]
[align=left] session.setAttribute(USER, user);[/align]
[align=left] session.setAttribute("room", ChatroomManager.newInstance().getRoom([/align]
[align=left] roomName));[/align]
[align=left] response.sendRedirect(ROOM_PAGE);[/align]
[align=left] }[/align]
[align=left] }[/align]
[align=left] [/align]
[align=left]}[/align]
[align=left][/align]
[align=left][/align]
[align=left]package org.jvk.chatroom.servlet;[/align]
[align=left] [/align]
[align=left]import java.io.IOException;[/align]
[align=left]import javax.servlet.ServletException;[/align]
[align=left]import javax.servlet.http.HttpServletRequest;[/align]
[align=left]import javax.servlet.http.HttpServletResponse;[/align]
[align=left]import javax.servlet.http.HttpSession;[/align]
[align=left] [/align]
[align=left]import org.jvk.chatroom.bean.Message;[/align]
[align=left]import org.jvk.chatroom.bean.User;[/align]
[align=left]import org.jvk.chatroom.service.ChatroomManager;[/align]
[align=left] [/align]
[align=left] [/align]
[align=left]public class SendMessage extends BaseServlet {[/align]
[align=left] private static final longserialVersionUID = 520131401655L;[/align]
[align=left] @Override[/align]
[align=left] public void execute(HttpServletRequest request, HttpServletResponse response) throws ServletException,[/align]
[align=left] IOException {[/align]
[align=left] HttpSession session = request.getSession(false);[/align]
[align=left] if (session == null){[/align]
[align=left] response.getWriter().write("");[/align]
[align=left] return;[/align]
[align=left] }[/align]
[align=left] synchronized (session) {[/align]
[align=left] User user = (User) session.getAttribute(USER);[/align]
[align=left] Message message = new Message();[/align]
[align=left] String to = request.getParameter("to");[/align]
[align=left] if ("all".equals(to))[/align]
[align=left] to = null;[/align]
[align=left] String content = request.getParameter("content");[/align]
[align=left] message.setContent(content);[/align]
[align=left] message.setFrom(user.getName());[/align]
[align=left] message.setTo(to);[/align]
[align=left] message.setDate(System.currentTimeMillis());[/align]
[align=left] ChatroomManager.newInstance().addMessageToRoom(message, user.getRoom());[/align]
[align=left] //假装响应下[/align]
[align=left] response.getWriter().write("");[/align]
[align=left] }[/align]
[align=left] }[/align]
[align=left]}[/align]
[align=left] [/align]
[align=left][/align]
[align=left] [/align]
[align=left]package org.jvk.chatroom.servlet;[/align]
[align=left] [/align]
[align=left]import java.io.IOException;[/align]
[align=left]import java.io.PrintWriter;[/align]
[align=left]import java.text.SimpleDateFormat;[/align]
[align=left]import java.util.Date;[/align]
[align=left]import java.util.List;[/align]
[align=left] [/align]
[align=left]import javax.servlet.ServletException;[/align]
[align=left]import javax.servlet.http.HttpServletRequest;[/align]
[align=left]import javax.servlet.http.HttpServletResponse;[/align]
[align=left]import javax.servlet.http.HttpSession;[/align]
[align=left] [/align]
[align=left]import org.jvk.chatroom.bean.Message;[/align]
[align=left]import org.jvk.chatroom.bean.User;[/align]
[align=left]import org.jvk.chatroom.service.ChatroomManager;[/align]
[align=left] [/align]
[align=left]public class GetMessage extends BaseServlet {[/align]
[align=left] [/align]
[align=left] @Override[/align]
[align=left] public void execute(HttpServletRequest request, HttpServletResponse response) throws ServletException,[/align]
[align=left] IOException {[/align]
[align=left] HttpSession session = request.getSession(false);[/align]
[align=left] if (session == null)[/align]
[align=left] return;[/align]
[align=left] synchronized (session) {[/align]
[align=left] User user = (User) session.getAttribute(USER);[/align]
[align=left] List<Message> messages = ChatroomManager.newInstance().getMessagesFromRoom(user);[/align]
[align=left] StringBuffer xml = new StringBuffer(4096);[/align]
[align=left] xml.append("<messages>");[/align]
[align=left] for (Message message : messages) {[/align]
[align=left] xml.append("<message>");[/align]
[align=left] xml.append("<from>" + message.getFrom() + "</from>");[/align]
[align=left] xml.append("<date>" + new SimpleDateFormat().format(new Date(message.getDate())) + "</date>");[/align]
[align=left] xml.append("<content>" + message.getContent() + "</content>");[/align]
[align=left] xml.append("</message>");[/align]
[align=left] }[/align]
[align=left] xml.append("</messages>");[/align]
[align=left] System.out.println("xml="+xml);[/align]
[align=left] setNoCache(request, response);[/align]
[align=left] response.setContentType("text/xml; charset=UTF-8");[/align]
[align=left] PrintWriter out = response.getWriter();[/align]
[align=left] out.print(xml);[/align]
[align=left] out.flush();[/align]
[align=left] }[/align]
[align=left] [/align]
[align=left] }[/align]
[align=left] [/align]
[align=left]}[/align]
[align=left] [/align]
[align=left][/align]
[align=left]package org.jvk.chatroom.servlet;[/align]
[align=left] [/align]
[align=left]import java.io.IOException;[/align]
[align=left]import java.io.PrintWriter;[/align]
[align=left]import java.util.List;[/align]
[align=left] [/align]
[align=left]import javax.servlet.ServletException;[/align]
[align=left]import javax.servlet.http.HttpServletRequest;[/align]
[align=left]import javax.servlet.http.HttpServletResponse;[/align]
[align=left]import javax.servlet.http.HttpSession;[/align]
[align=left] [/align]
[align=left]import org.jvk.chatroom.bean.User;[/align]
[align=left]import org.jvk.chatroom.service.ChatroomManager;[/align]
[align=left] [/align]
[align=left]public class GetUserList extends BaseServlet {[/align]
[align=left] [/align]
[align=left] @Override[/align]
[align=left] public void execute(HttpServletRequest request, HttpServletResponse response)[/align]
[align=left] throws ServletException, IOException {[/align]
[align=left] HttpSession session = request.getSession(false);[/align]
[align=left] if (session == null)[/align]
[align=left] return;[/align]
[align=left] synchronized (session) {[/align]
[align=left] User user = (User) session.getAttribute(USER);[/align]
[align=left] ChatroomManager dao = ChatroomManager.newInstance();[/align]
[align=left] List<User> list = dao.getUsersFromRoom(user);[/align]
[align=left] [/align]
[align=left] StringBuffer buffer = new StringBuffer(1024);[/align]
[align=left] buffer.append("<users>");[/align]
[align=left] for (User tempUser : list) {[/align]
[align=left] buffer.append("<user name=/"" + tempUser.getName() + "/"/>");[/align]
[align=left] }[/align]
[align=left] buffer.append("</users>");[/align]
[align=left] log.info("users=/n" + buffer);[/align]
[align=left] setNoCache(request,response);[/align]
[align=left] response.setContentType("text/xml; charset=UTF-8");[/align]
[align=left] PrintWriter out = response.getWriter();[/align]
[align=left] out.print(buffer);[/align]
[align=left] out.flush();[/align]
[align=left] }[/align]
[align=left] [/align]
[align=left] }[/align]
[align=left]}[/align]
[align=left]没有了,就这几个类。 [/align]
相关文章推荐
- ajax聊天室(JSP版)1
- ajax聊天室(JSP版)6
- ajax聊天室(JSP版)2
- ajax聊天室(JSP版)5
- ajax聊天室(JSP版)5
- 我写了一个jsp+ajax简单聊天室
- AJAX_树_树型菜单_自定义标签_chat_聊天室_jsp聊天室_树_AJAX_AJAX树
- ajax聊天室(JSP版)4
- JSP + AJAX 打造簡單聊天室
- ajax聊天室(JSP版)6
- ajax聊天室(JSP版)3
- 如何实现java,jsp,ajax编写的在线聊天室啊?
- ajax聊天室(JSP版)2
- ajax聊天室(JSP版)3
- ajax聊天室(JSP版)1
- java jsp 页面下拉框 ajax异步加载数库数据
- AJAX+JSP实现基于WEB的文件上传的进度控制,作者:刘作晨
- Ajax+jsp实现动态修改表格
- ajax+jsp草稿自动保存
- 运用JSP+ajax实现分类查询功能的实例代码