showtopiclist.java
来自「又一个课程设计 简易 JSP 论坛 功能较简单的那种, 界面上模仿了 Disc」· Java 代码 · 共 112 行
JAVA
112 行
package cn.ialvin.bbs.servlet;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.SQLException;
import java.util.ArrayList;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import cn.ialvin.bbs.bean.Forum;
import cn.ialvin.bbs.bean.Topic;
import cn.ialvin.bbs.bean.User;
import cn.ialvin.bbs.dao.DAOFactory;
import cn.ialvin.bbs.dao.IForumDAO;
import cn.ialvin.bbs.dao.ITopicDAO;
import cn.ialvin.bbs.dao.IUserDAO;
import cn.ialvin.web.PageInfo;
import cn.ialvin.web.Servlet;
public class ShowTopicList extends Servlet {
private static final long serialVersionUID = -1L;
public ShowTopicList() { super(); }
public void destroy() { super.destroy(); }
public void doAction(
HttpServletRequest request,
HttpServletResponse response,
PrintWriter out,
DAOFactory factory)
throws ServletException, IOException, SQLException {
String action = this.getParameter("action", request);
if ("forum".equals(action)) {
this.showForumTopicList(request, response, out, factory);
} else if ("usr".equals(action)) {
this.shwoUserTopicList(request, response, out, factory);
} else {
this.alert("非法进入!", out);
}
}
private void shwoUserTopicList(
HttpServletRequest request,
HttpServletResponse response,
PrintWriter out,
DAOFactory factory)
throws ServletException, IOException, SQLException {
String usn = this.getParameter("usn", request);
IUserDAO ud = factory.getUserDAO();
User vu = ud.getUser(usn);
if (vu == null) {
this.alert("非法进入!", out);
return;
}
PageInfo page = new PageInfo();
page.setPageSize(15);
page.setWeight("贴");
page.setQueryString("ShowTopicList?action=usr&usn="
+ cn.ialvin.web.Encoder.encodeURIComponent(usn));
ITopicDAO td = factory.getTopicDAO();
ArrayList<Topic> topics = td.getTopics(usn, page);
Forum forum = new Forum();
forum.setId(-1);
forum.setName(usn + "发表的贴子");
request.setAttribute("forum", forum);
request.setAttribute("topics", topics);
request.setAttribute("pageInfo", page);
request.setAttribute("title", forum.getName());
request.getRequestDispatcher("forumdisplay.jsp").forward(request, response);
}
private void showForumTopicList(
HttpServletRequest request,
HttpServletResponse response,
PrintWriter out,
DAOFactory factory)
throws ServletException, IOException, SQLException {
int forumid;
try {
forumid = this.getIParameter("forumid", request);
} catch (Exception e) {
this.alert("非法进入!", out);
return;
}
IForumDAO fd = factory.getForumDAO();
Forum forum = fd.getForum(forumid);
if (forum == null) {
this.alert("非法进入!", out);
return;
}
PageInfo page = new PageInfo();
page.setPageSize(15);
page.setWeight("贴");
page.setQueryString("ShowTopicList?action=forum&forumid=" + forumid);
try {
page.setCurrentPage(this.getIParameter("page", request));
} catch (Exception e) {
page.setCurrentPage(1);
}
ITopicDAO td = factory.getTopicDAO();
ArrayList<Topic> topics = td.getTopics(forumid, page);
request.setAttribute("forum", forum);
request.setAttribute("topics", topics);
request.setAttribute("pageInfo", page);
request.setAttribute("title", forum.getName());
request.getRequestDispatcher("forumdisplay.jsp").forward(request, response);
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?