⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 reqservlet.java

📁 一个小型的BBS系统
💻 JAVA
字号:
package com.servlet;

import java.io.IOException;
import java.util.*;

import bean.dbwrite.DBStateWrite;
import bean.dbwrite.DBWrite;
import bean.deleteDB.DeleteDB;
import bean.readdb.*;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

/**
 * Servlet implementation class for Servlet: ReqServlet
 *
 */
 public class ReqServlet extends javax.servlet.http.HttpServlet implements javax.servlet.Servlet {
   static final long serialVersionUID = 1L;
   
    /* (non-Java-doc)
	 * @see javax.servlet.http.HttpServlet#HttpServlet()
	 */
	public ReqServlet() {
		super();
	}   	
	
	/* (non-Java-doc)
	 * @see javax.servlet.http.HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		String action = request.getParameter("action");
		
		String url;
		ServletContext sc = getServletContext();
		
		if(action.equals("login")){
			url="/login.jsp";
			RequestDispatcher rd = sc.getRequestDispatcher(url);
			rd.forward(request, response);
		}
		else if(action.equals("register")){
			url="/register.jsp";
			RequestDispatcher rd = sc.getRequestDispatcher(url);
			rd.forward(request, response);
		}
		else if(action.equals("quit")){
			HttpSession session =request.getSession();
			session.invalidate();//终止当前会话
			url="/index.jsp";
			RequestDispatcher rd = sc.getRequestDispatcher(url);
			rd.forward(request, response);
		}
		else if(action.equals("bbsform1")){
			Vector b = new Vector();
			Vector top = new Vector();
			String pageview ="1";//设置默认显示页码
			pageview = request.getParameter("pageview");//读取要显示的页码
			String bbsstate = new String(request.getParameter("bbsstate").getBytes("iso-8859-1"),"GB2312");
			System.out.println("传递参数bbsstate为"+bbsstate);
			HttpSession session = request.getSession();
			String control = (String)session.getAttribute("control");
			String id = (String)session.getAttribute("name");//获取id
			DBRead dbr = new DBRead();
			b = dbr.DBReader(bbsstate);
			top = dbr.DBReader_top(bbsstate);
			session.setAttribute("master", "0");//为普通用户添加master位
			if(control.equals("1")){
				String state = dbr.DBReader_Master(id);
				StringTokenizer t = new StringTokenizer(state, " ");//以空格为划分进行版块筛选
				int c=0;//设置临时标志位 0为未发现 1为发现
				while(t.hasMoreTokens()){
					if(bbsstate.equals(t.nextToken())){
						c=1;
						break;
					}
				}
				if(c==0){
					session.setAttribute("master", "0");//当control 和 master位同时为1时 代表这个人是本版版主
					
				}
					else session.setAttribute("master", "1");//master为0 代表这个人是版主但不是本版版主
				System.out.println("判定版主master位:"+c);
			}
			
			int size = b.size();
			int size_top = top.size();
			if(size==0 && size_top ==0){
				String temp = "该板块尚无帖子发布";
				request.setAttribute("temp", temp);
				request.setAttribute("bbsstate", bbsstate);
				request.setAttribute("pageview", pageview);
				request.setAttribute("isempty", "0");
			}
			else{
				int i = size/5;
				String temp = "本版块当前共有"+String.valueOf(i)+"个帖子";
				request.setAttribute("temp", temp);
				
				
				request.setAttribute("bbsstate", bbsstate);
				request.setAttribute("pageview", pageview);
				request.setAttribute("isempty", "1");
			}
			request.setAttribute("post", b);
			request.setAttribute("top", top);
			
			
			
			url="/bbsform1.jsp";
			RequestDispatcher rd = sc.getRequestDispatcher(url);
			rd.forward(request, response);
		}
		else if(action.equals("usermanage")){
			Vector user = new Vector();
			DBRead dbr = new DBRead();
			user = dbr.DBReader_User();//获取用户
			Vector state = new Vector();
			state = dbr.DBReader_State();//获取版块信息
			int size = user.size();
			System.out.println("返回当前用户数"+size/6);
			if(size ==0){
				String temp = "目前0用户";
				request.setAttribute("temp", temp);
				request.setAttribute("isempty", "0");
			}
			else{
				int i = size/6;
				String temp = "当前共有"+String.valueOf(i)+"个用户";
				request.setAttribute("temp", temp);
				request.setAttribute("user", user);
				request.setAttribute("state", state);
				request.setAttribute("isempty", "1");
			}
			url="/usermanage.jsp";
			RequestDispatcher rd = sc.getRequestDispatcher(url);
			rd.forward(request, response);
		}
		else if(action.equals("statemanage")){
			Vector state = new Vector();
			DBRead dbr = new DBRead();
			state = dbr.DBReader_bbsstate();
			request.setAttribute("states", state);
			
			
			url="/statemanage.jsp";
			RequestDispatcher rd = sc.getRequestDispatcher(url);
			rd.forward(request, response);
		}
		else if(action.equals("delstate")){
			String state = new String(request.getParameter("bbs_entry").getBytes("iso-8859-1"),"GB2312");
			System.out.println("要删除的版块名称:"+state);
			DeleteDB ddb = new DeleteDB();
			ddb.DelState(state,1);//将要删除的版块del字段置1
			
			
			url="/ReqServlet?action=statemanage";
			RequestDispatcher rd = sc.getRequestDispatcher(url);
			rd.forward(request, response);
		}
		else if(action.equals("undelstate")){
			String state = new String(request.getParameter("bbs_entry").getBytes("iso-8859-1"),"GB2312");
			System.out.println("要恢复的版块名称:"+state);
			DeleteDB ddb = new DeleteDB();
			ddb.DelState(state,0);//将要恢复的版块del字段置0
			
			url="/ReqServlet?action=statemanage";
			RequestDispatcher rd = sc.getRequestDispatcher(url);
			rd.forward(request, response);
		}
		else if(action.equals("changestatename")){
			String name = new String(request.getParameter("bbs_entry").getBytes("iso-8859-1"),"GB2312");
			String newname = new String(request.getParameter("state").getBytes("iso-8859-1"),"GB2312");
			System.out.println("要更名的版块名称:"+name +"即将更名为:"+newname);
			DBStateWrite dbsw = new DBStateWrite();
			dbsw.UpdateStateName(name,newname);//更名版块
			
			url="/ReqServlet?action=statemanage";
			RequestDispatcher rd = sc.getRequestDispatcher(url);
			rd.forward(request, response);
		}
		else if(action.equals("addstate")){
			String name = new String(request.getParameter("addstate").getBytes("iso-8859-1"),"GB2312");
			System.out.println("要添加的版块名称:"+name);
			DBStateWrite dbsw = new DBStateWrite();
			dbsw.AddState(name);//添加版块
			
			url="/ReqServlet?action=statemanage";
			RequestDispatcher rd = sc.getRequestDispatcher(url);
			rd.forward(request, response);
		}
		else if(action.equals("usercontrolform")){
			System.out.println("进入控制面板SERVLET");
			DBRead dbr = new DBRead();
			Vector user = new Vector();
			String id = new String(request.getParameter("userid").getBytes("iso-8859-1"),"GB2312");
			user = dbr.DBReader_UserInfo(id);
			
			request.setAttribute("userinfo", user);//保存读取出的用户信息
			url="/usercontrolform.jsp?userid="+id;
			RequestDispatcher rd = sc.getRequestDispatcher(url);
			rd.forward(request, response);
		}
		else if(action.equals("completeusermodify")){
			String id = (String)request.getParameter("userid");
			String pwd = (String)request.getParameter("pwd");
			String subpwd = (String)request.getParameter("subpwd");
			if(pwd.equals(subpwd)){
				String head = (String)request.getParameter("head");
				DBWrite dbw = new DBWrite();
				dbw.UpdateUserModify(id, pwd, head);//完成修改
				
				url="/index.jsp";
				RequestDispatcher rd = sc.getRequestDispatcher(url);
				rd.forward(request, response);
			}
			else{
				url="/usermodifyerror.jsp?userid="+id;
				RequestDispatcher rd = sc.getRequestDispatcher(url);
				rd.forward(request, response);
			}
		}
		else if(action.equals("message")){
			String id = (String)request.getParameter("userid");
			DBRead dbr = new DBRead();
			Vector message = new Vector();
			message = dbr.DBReader_Message(id);
			
			request.setAttribute("message", message);//保存读取出的短消息
			url="/message.jsp?userid="+id;
			RequestDispatcher rd = sc.getRequestDispatcher(url);
			rd.forward(request, response);
		}
	}  	
	
	
	/* (non-Java-doc)
	 * @see javax.servlet.http.HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		
	}   	  	    
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -