基于javaweb+mysql的jsp+servlet个人博客系统(java+jsp+servlet+mysql)

基于javaweb+mysql的jsp+servlet个人博客系统(java+jsp+servlet+mysql)

运行环境

Java≥8、MySQL≥5.7、Tomcat≥8

开发工具

eclipse/idea/myeclipse/sts等均可配置运行

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

技术框架

JSP Servlet MySQL

基于javaweb+mysql的JSP+Servlet个人博客系统(java+jsp+servlet+mysql)

	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		doGet(request, response);
	}

}

/**
 * Servlet implementation class UserServlet
 */
public class UserServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public UserServlet() {
        super();
        System.out.println("调用了构造方法实例化");
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		System.out.println("调用了服务方法");
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
		// TODO Auto-generated method stub
		super.destroy();
		System.out.println("调用了销毁方法!");
	}
	
	

}

/**
 * Servlet Filter implementation class LoginFilter
 */
public class LoginFilter implements Filter {

    /**
     * Default constructor. 
     */
    public LoginFilter() {
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see Filter#destroy()
	 */
	public void destroy() {
		// TODO Auto-generated method stub
	}

	/**
	 * @see Filter#doFilter(ServletRequest, ServletResponse, FilterChain)
	 */
	public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
		User user = (User)((HttpServletRequest)request).getSession().getAttribute("USER");
		if(user==null){
			((HttpServletResponse)response).sendRedirect("../login.jsp");
			return;
		}
		chain.doFilter(request, response);
	}

			listUserPageCategroy(request,response);
		}
		if("del".equals(method)){
			delCategroy(request,response);
		}
		
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
	 *      response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		// TODO Auto-generated method stub
		doGet(request, response);
	}

	protected void listCategroy(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		HttpSession session = request.getSession();
		User user = (User)session.getAttribute("USER");
		List categroys = null;
		if(user!=null){
			categroys=categroyDao.searchCategroy(user.getBlog().getBlogId());
			if(categroys!=null&&categroys.size()>0){
				session.setAttribute("CATEGROYS", categroys);
			}else{
				session.removeAttribute("CATEGROYS");
			}
		}
		request.getRequestDispatcher("main.jsp").forward(request, response);
	}
	
	
	
	protected void addCategroy(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		String categroyTitle = request.getParameter("categroyTitle");
		HttpSession session = request.getSession();
		User user = (User)session.getAttribute("USER");
		Categroy categroy = new Categroy(0, user.getBlog(), categroyTitle);
		int result = categroyDao.addCategroy(categroy);
		if (result > 0) {
			searchCategroy(request,response);
				//取得请求头信息
				String headerInfo = part.getHeader("content-disposition");
				//从头信息字符串中截取文件名称
				String fileName = headerInfo.substring(headerInfo.lastIndexOf("=")+2,headerInfo.length()-1);
				//得到服务器端存放上传图片的物理地址
				String fileSavingFolder = this.getServletContext().getRealPath("/upload");
				//得到服务器端图片的物理地址
				String fileSavingPath = fileSavingFolder+File.separator+fileName;
				//创建upload文件夹
				File f = new File(fileSavingFolder+File.separator);
				if(!f.exists()){
					f.mkdirs();
				}
				part.write(fileSavingPath);
				request.getRequestDispatcher("UserInfoServlet?fileName="+fileName).forward(request, response);
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		doGet(request, response);
	}

}

/**
 * Servlet implementation class UserServlet
 */
public class UserServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public UserServlet() {
			query = Boolean.parseBoolean(q);//转换字符串为布尔类型
		}
		HttpSession session = request.getSession();
		User user = (User)session.getAttribute("USER");//从session中取出登录成功后的用户对象
		List<Article> articles = null;
		if(user!=null){
			articles = articleDao.listArticle(user.getBlog(),query);
		}
		session.removeAttribute("ARTICLES");//移除上一次查询的博文列表
		if(articles!=null&&articles.size()>0){
			session.setAttribute("ARTICLES", articles);	
		}
		request.getRequestDispatcher("CategroyServlet?method=list").forward(request, response);
   }
	
	public void addArticle(HttpServletRequest request, HttpServletResponse response)
			throws IOException, ServletException {
		String cateid = request.getParameter("cateId");	
		int cateId = 0;
		if(cateid!=null){
			cateId = Integer.parseInt(cateid);
		}
		String articleTitle = request.getParameter("title");
		String articleContent = request.getParameter("content");
		
		HttpSession session = request.getSession();
		User user = (User)session.getAttribute("USER");
		
		Categroy categroy = new Categroy(cateId,user.getBlog(),null);
		Article article = new Article(0,user.getBlog(),categroy,articleTitle,articleContent,new Date(),0,0);
		int result = articleDao.addArticle(article);
		if(result>0){
			request.getRequestDispatcher("UserArticleServlet?method=list&query=true").forward(request, response);	
		}else{
			request.getRequestDispatcher("article_add.jsp").forward(request, response);
		}
   }
	
	public void listUserPageArticle(HttpServletRequest request, HttpServletResponse response)
			throws IOException, ServletException {
		String pno = request.getParameter("pageNo");
		int pageNo = 0;
		if(pno!=null){
			pageNo = Integer.parseInt(pno);
		}
		HttpSession session = request.getSession();
		User user = (User)session.getAttribute("USER");
		
		PageUtil page = null;
		if(user!=null){
			page = articleDao.listPageArticle(user.getBlog(), pageNo, 2);
			page.setPageNo(pageNo);

/**
 * Servlet implementation class UserInfoServlet
 */
public class UserInfoServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
	private UserDao userDao = new UserDao();
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public UserInfoServlet() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		String method = request.getParameter("method");
		if("reg".equals(method)){
			reg(request,response);
		}
		if("login".equals(method)){
			login(request,response);
		}
		if("logout".equals(method)){
			logout(request,response);
		}
		if("updateBlogId".equals(method)){
			updateBlogId(request,response);
		}
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		doGet(request, response);
	}
	
	public void reg(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		//设置request对象字符编码
				//request.setCharacterEncoding("UTF-8");
				String uname = request.getParameter("uname");
//				uname = new String(uname.getBytes("ISO-8859-1"),"UTF-8");
				String upass = request.getParameter("pwd");
				String sex = request.getParameter("sex");
				String email = request.getParameter("email");
				String info = request.getParameter("content");
		System.out.println("正在访问"+projectName);
		ServletContext servletContext = config.getServletContext();
		String company = servletContext.getInitParameter("company");
		System.out.println(company);
	}

	@Override
	public void destroy() {
		// TODO Auto-generated method stub
		super.destroy();
		System.out.println("调用了销毁方法!");
	}
	
	

}

/**
 * Servlet Filter implementation class LoginFilter
 */
public class LoginFilter implements Filter {

    /**
     * Default constructor. 
     */
    public LoginFilter() {
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see Filter#destroy()
	 */
	public void destroy() {
		// TODO Auto-generated method stub
	}

	/**
	 * @see Filter#doFilter(ServletRequest, ServletResponse, FilterChain)
	 */
	public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {

/**
 * Servlet implementation class UserArticleServlet
 */
public class UserArticleServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
	private ArticleDao articleDao = new ArticleDao();   
    /**
     * @see HttpServlet#HttpServlet()
     */
    public UserArticleServlet() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		String method = request.getParameter("method");
		if("list".equals(method)){
			listUserArticle(request,response);
		}
		if("add".equals(method)){
			addArticle(request,response);
		}
		if("showPage".equals(method)){
			listUserPageArticle(request,response);
		}
		if("get".equals(method)){
			getArticle(request,response);
		}
		if("update".equals(method)){
			updateArticle(request,response);
		}
		if("del".equals(method)){
			delArticle(request,response);
		}
		if("categroy".equals(method)){
			queryCategroyArticle(request,response);
		}
		
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		doGet(request, response);
				User user = new User(0,null,uname,upass,sex,email,info,fileName);
				//调用Dao类方法处理数据 
				int result = userDao.insertUser(user);
				
				request.setAttribute("RESULT", result);
				request.getRequestDispatcher("/loginMessage.jsp").forward(request, response);
//				response.sendRedirect("http://www.sina.com");
//				if(result>0){
//					//请求转发
//					//request.getRequestDispatcher("/loginMessage.jsp").forward(request, response);
//					//重定向
//					response.sendRedirect("/myblog/loginMessage.jsp");
//				}else{
//					request.getRequestDispatcher("login.jsp").forward(request, response);
//				}
//				response.setCharacterEncoding("UTF-8");
//				response.setContentType("text/html;charset=UTF-8");
//				PrintWriter out = response.getWriter();
//				if(result>0){
//					out.println("注册成功!");
//				}else{
//					out.println("注册失败!");
//				}
	}
	
	public void login(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		//request.setCharacterEncoding("UTF-8");
		String username = request.getParameter("uname");
		String pwd = request.getParameter("pwd");
		
		User user = new User();
		user.setUserName(username);
		user.setUserpass(pwd);
		
		User userInfo = userDao.searchUser(user);
		//看当前session是否存在,如果存在返回已存在的session,如果不存在返回新的session对象
		HttpSession session = request.getSession();
//		session.setMaxInactiveInterval(60*60);
		//看当前session是否存在,如果存在返回已存在的session,如果不存在返回null
//		HttpSession session = request.getSession(false);
				}
				part.write(fileSavingPath);
				request.getRequestDispatcher("UserInfoServlet?fileName="+fileName).forward(request, response);
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		doGet(request, response);
	}

}

/**
 * Servlet implementation class UserServlet
 */
public class UserServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public UserServlet() {
        super();
        System.out.println("调用了构造方法实例化");
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		System.out.println("调用了服务方法");
	}
				request.getRequestDispatcher("/loginMessage.jsp").forward(request, response);
//				response.sendRedirect("http://www.sina.com");
//				if(result>0){
//					//请求转发
//					//request.getRequestDispatcher("/loginMessage.jsp").forward(request, response);
//					//重定向
//					response.sendRedirect("/myblog/loginMessage.jsp");
//				}else{
//					request.getRequestDispatcher("login.jsp").forward(request, response);
//				}
//				response.setCharacterEncoding("UTF-8");
//				response.setContentType("text/html;charset=UTF-8");
//				PrintWriter out = response.getWriter();
//				if(result>0){
//					out.println("注册成功!");
//				}else{
//					out.println("注册失败!");
//				}
	}
	
	public void login(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		//request.setCharacterEncoding("UTF-8");
		String username = request.getParameter("uname");
		String pwd = request.getParameter("pwd");
		
		User user = new User();
		user.setUserName(username);
		user.setUserpass(pwd);
		
		User userInfo = userDao.searchUser(user);
		//看当前session是否存在,如果存在返回已存在的session,如果不存在返回新的session对象
		HttpSession session = request.getSession();
//		session.setMaxInactiveInterval(60*60);
		//看当前session是否存在,如果存在返回已存在的session,如果不存在返回null
//		HttpSession session = request.getSession(false);
		Integer lineNum = (Integer)this.getServletContext().getAttribute("LINE_NUM");
		if(lineNum==null){
			lineNum = 0;
		}
		if(userInfo!=null){
			lineNum++;
			this.getServletContext().setAttribute("LINE_NUM", lineNum);
			//将用户信息存放到session中
			session.setAttribute("USER", userInfo);
			
			if(userInfo.getBlog()!=null&&userInfo.getBlog().getBlogId()>0){
				response.sendRedirect("user/UserArticleServlet?method=list&query=true");
			}else{
				response.sendRedirect("user/blog.jsp");
			}
		}else{
			response.sendRedirect("loginMessage.jsp");
		}
	 * @param request
	 * @param response
	 * @throws IOException
	 * @throws ServletException
	 */
	public void visitorBlog(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException{
		String userId = request.getParameter("userid");
		int userid = 0;
		if(userId!=null){
			userid = Integer.parseInt(userId);
		}
		
		User user = userDao.getUser(userid);
		if(user!=null){
			HttpSession session = request.getSession();
			session.setAttribute("VISITOR", user);
		}
		
		request.getRequestDispatcher("UserArticleServlet?method=list").forward(request, response);
	}
}

/**
 * Servlet implementation class CategroyServlet
 */
public class CategroyServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
	private CategroyDao categroyDao = new CategroyDao();

	/**
	 * @see HttpServlet#HttpServlet()
	 */
	public CategroyServlet() {
		super();
		// TODO Auto-generated constructor stub
	}

	/**
		
		Categroy categroy = new Categroy(cateId,user.getBlog(),null);
		Article article = new Article(0,user.getBlog(),categroy,articleTitle,articleContent,new Date(),0,0);
		int result = articleDao.addArticle(article);
		if(result>0){
			request.getRequestDispatcher("UserArticleServlet?method=list&query=true").forward(request, response);	
		}else{
			request.getRequestDispatcher("article_add.jsp").forward(request, response);
		}
   }
	
	public void listUserPageArticle(HttpServletRequest request, HttpServletResponse response)
			throws IOException, ServletException {
		String pno = request.getParameter("pageNo");
		int pageNo = 0;
		if(pno!=null){
			pageNo = Integer.parseInt(pno);
		}
		HttpSession session = request.getSession();
		User user = (User)session.getAttribute("USER");
		
		PageUtil page = null;
		if(user!=null){
			page = articleDao.listPageArticle(user.getBlog(), pageNo, 2);
			page.setPageNo(pageNo);
			request.setAttribute("page", page);
		}
		request.getRequestDispatcher("article_manager.jsp").forward(request, response);
   }
	
	public void getArticle(HttpServletRequest request, HttpServletResponse response)
			throws IOException, ServletException {
		String aid = request.getParameter("aid");
		int articleId = 0;
		if(aid!=null){
			articleId = Integer.parseInt(aid);
		}
		Article article = articleDao.getArticle(articleId);
		HttpSession session = request.getSession();
		if(article!=null){
			session.setAttribute("ARTICLE", article);	
		}
		request.getRequestDispatcher("article_modify.jsp").forward(request, response);
   }
	
	public void updateArticle(HttpServletRequest request, HttpServletResponse response)

/**
 * Servlet implementation class UserInfoServlet
 */
public class UserInfoServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
	private UserDao userDao = new UserDao();
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public UserInfoServlet() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		String method = request.getParameter("method");
		if("reg".equals(method)){
			reg(request,response);
		}
		if("login".equals(method)){
			login(request,response);
		}
		if("logout".equals(method)){
			logout(request,response);
		}
   }
	
	public void getArticle(HttpServletRequest request, HttpServletResponse response)
			throws IOException, ServletException {
		String aid = request.getParameter("aid");
		int articleId = 0;
		if(aid!=null){
			articleId = Integer.parseInt(aid);
		}
		Article article = articleDao.getArticle(articleId);
		HttpSession session = request.getSession();
		if(article!=null){
			session.setAttribute("ARTICLE", article);	
		}
		request.getRequestDispatcher("article_modify.jsp").forward(request, response);
   }
	
	public void updateArticle(HttpServletRequest request, HttpServletResponse response)
			throws IOException, ServletException {
		String aid = request.getParameter("aid");
		int articleId = 0;
		if(aid!=null){
			articleId = Integer.parseInt(aid);
		} 
		String cateid = request.getParameter("cateId");	
		int cateId = 0;
		if(cateid!=null){
			cateId = Integer.parseInt(cateid);
		}
		String articleTitle = request.getParameter("title");
		String articleContent = request.getParameter("content");
		
		HttpSession session = request.getSession();
		User user = (User)session.getAttribute("USER");
		
		Categroy categroy = new Categroy(cateId,user.getBlog(),null);
		Article article = new Article(articleId,user.getBlog(),categroy,articleTitle,articleContent,new Date(),0,0);
		int result = articleDao.updateArticle(article);
		if(result>0){
			request.getRequestDispatcher("UserArticleServlet?method=showPage&pageNo=1").forward(request, response);	
		}else{
			request.getRequestDispatcher("article_modify.jsp").forward(request, response);
		}
   }
	
	public void delArticle(HttpServletRequest request, HttpServletResponse response)
		String pno = request.getParameter("pageNo");
		int pageNo = 0;
		if(pno!=null){
			pageNo = Integer.parseInt(pno);
		}
		HttpSession session = request.getSession();
		User user = (User)session.getAttribute("USER");
		
		PageUtil page = null;
		if(user!=null){
			page = categroyDao.listPageCategroy(user.getBlog(), pageNo, 3);
			page.setPageNo(pageNo);
			request.setAttribute("page", page);
		}
		request.getRequestDispatcher("categroy_manager.jsp").forward(request, response);
   }
	
	public void delCategroy(HttpServletRequest request, HttpServletResponse response)
			throws IOException, ServletException {
		String cid = request.getParameter("cid");
		int categroyId = 0;
		if(cid!=null){
			categroyId = Integer.parseInt(cid);
		}
		int result = categroyDao.delCategroy(categroyId);
		if(result>0){
			searchCategroy(request,response);
			request.getRequestDispatcher("CategroyServlet?method=showPage&pageNo=1").forward(request, response);	
		}
		
   }
	
	public void searchCategroy(HttpServletRequest request, HttpServletResponse response){
		HttpSession session = request.getSession();
		User user = (User)session.getAttribute("USER");
		List categroys = categroyDao.searchCategroy(user.getBlog().getBlogId());
		if(categroys!=null&&categroys.size()>0){
			session.setAttribute("CATEGROYS", categroys);
		}
	}

}

        System.out.println("调用了构造方法实例化");
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		System.out.println("调用了服务方法");
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		doGet(request, response);
	}

	@Override
	public void init(ServletConfig config) throws ServletException {
		// TODO Auto-generated method stub
		super.init(config);//不能删除
		System.out.println("调用了初始化方法");
		String projectName = config.getInitParameter("projectName");
		System.out.println("正在访问"+projectName);
		ServletContext servletContext = config.getServletContext();
		String company = servletContext.getInitParameter("company");
		System.out.println(company);
	}

	@Override
	public void destroy() {
		// TODO Auto-generated method stub
		super.destroy();
		System.out.println("调用了销毁方法!");
	}
	
	

}

请添加图片描述

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值