`

基于java web的博客平台(三)

 
阅读更多

(2)删除文章

<a href="<%=URL%>/ArticleAction.action?action=adminSelectList&typeID=">修改文章</a>要删除文章,我们首先要显示一个文章列表,这样我们就可以知道选择哪一篇文章来删除了。

所以这次给ArticleAction的action是adminSelectList,即获取当前用户的所有文章。我们先看看ArticleAction的excute方法里面对action是adminSelectList的调用哪一个方法的。

public String adminSelectList(HttpServletRequest request, HttpServletResponse response) 
			throws ServletException, IOException {
		//获得目前登录的博主对象
		HttpSession session=request.getSession();
		MasterBean masterBean=(MasterBean)session.getAttribute("masterBean");
		//获得博主的id
		int masterID=masterBean.getId();
		ArticleDao articleDao=new ArticleDao();
		//从页面上面获得需要操作的查找的类型
		String strID=request.getParameter("typeID");
		if(strID==null || strID.equals("")){
			strID="-1";
		}
		//把页面获得的string类型的id转换成int型
		int typeID=Common.strToint(strID);
		List articleList=articleDao.queryArticle(typeID,"all");
		request.setAttribute("articleList", articleList);
		String url="/admin/article/ArticleList.jsp";
		return url;
	}

 大致过程如下:

A、我们首先通过session,获取这个当前用户的所有信息,然后得到当前用户id。

B、然后通过articleDao类的queryArticle方法查询出该用户的所写的所有文章。

C、然后把结果存放的request里面,通过setAttribute方法添加”articleList”的属性,request.setAttribute("articleList", articleList);

D、最后跳转到"/admin/article/ArticleList.jsp",显示文章列表。

然后到ArticleList.jsp文件:

<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8" 
    import="java.util.List,com.MyBlog.common.GLOBALS,com.MyBlog.entity.ArticleBean"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<%String URL=session.getAttribute("url").toString();
  //获取页面传过来的articleList对象
  List<ArticleBean> articleList=(List<ArticleBean>)request.getAttribute("articleList");%>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>博客管理——显示所有文章</title>
</head>
<body>
	<!-- 显示所有文章表单设置 -->
	<form action="<%=URL%>/ArticleAction.action" method="post">
		<input type="hidden" name="action" value="adminSelectList">
		<table id="table_form">
			<tr>
				<td>
					<label for="typeID">文章类型ID</label><input id="typeID" type="text" name="typeID">
				</td>
			</tr>
		</table>
		<input type="submit" value="确定">
		<input type="reset" value="重置">
	</form>
	
	<!-- 显示我的文章  -->
	<table id="table_article">
		<tr height="80">
			<td>
				<a href="<%=URL%>/admin/article/ArticleSingle.jsp">【我的文章】</a>
			</td>
			<td align="right">
				<a href="<%=URL%>/admin/article/ArticleSingle.jsp">更多...</a>
			</td>
		</tr>
		<%
			if(articleList.size()==0){
		%>
		<tr height="100">
			<td align="center">
				<li>未查到任何关于该类型的文章!!!</li>
			</td>
		</tr>

		<%
			} else {
				for (int i = 0; i < articleList.size(); i++) {
					ArticleBean articleBean = articleList.get(i);
		%>
		<tr>
			<td  colspan="2">
				<a href="<%=URL%>/ArticleAction.action?action=read&id=<%=articleBean.getId()%>"> 
					<b><%=articleBean.getArticleTitle()%></b>
				</a> [<%=articleBean.getArticleFrom()%>]
			</td>
		</tr>
		
		<tr height="60">
			<td colspan="2" valign="top"><%=articleBean.getArticleCount()%>
			</td>
		</tr>
		
		<tr>
			<td >
				<a href="<%=URL%>/ArticleAction.action?action=read&id=<%=articleBean.getId()%>
				&count=<%=articleBean.getArticleCount()%>">阅读全文
				</a>
			</td>
			
			<td align="right">
				<a href="<%=URL%>/ArticleAction.action?action=modify&id=<%=articleBean.getId()%>">修改文章
				</a>
			</td>
		</tr>
		
		<tr>
			<td align="right" colspan="2">发表时间:<%=articleBean.getArticleFrom()%>|
				评论:| 阅读:<%=articleBean.getArticleCount()%>次
			</td>
		</tr>
		
		<tr>
			<td align="right" colspan="2">
				<a href="<%=URL%>/ArticleAction.action?action=delete&id=<%=articleBean.getId()%>">删除文章
				</a>
			</td>
		</tr>
		
		
		
		<tr height="1">
			<td background="<%=URL%>/images/front/line.jpg" colspan="2"></td>
		</tr>
		<%
			}
			}
		%>
	</table>
	
</body>
</html>

在ArticleList.jsp文件里,我还是通过request获得已经存在request里面的文章。List<ArticleBean> articleList=(List<ArticleBean>)request.getAttribute("articleList");

所有的文章存在一个List里面,我们在ArticleList里面循环显示文章,我们在每个文章后面加一个链接:

<a href="<%=URL%>/ArticleAction.action?action=delete&id=<%=articleBean.getId()%>">删除文章</a>

这个删除文章的操作也是交给ArticleAction,然后传递参数为delete的action,最后再加个这一篇文章的id。我们就把action和id参数传递到ArticleAction,然后删除操作就由ArticleAction处理。

现在我们看ArcitleAction的处理delete的action的函数

	public String deleteArticle(HttpServletRequest request, HttpServletResponse response) 
			throws ServletException, IOException {
		ArticleDao articleDao=new ArticleDao();
		ArticleBean articleBean=new ArticleBean();
		String messages="";
		String href="";
		String forward="";
		articleBean.setId(Common.strToint(request.getParameter("id")));
		boolean flag=articleDao.operationArticle("delete", articleBean);
		if(flag){
			String typeID=request.getParameter("typeID");
			messages+="<li>删除文章成功!!!</li>";
			href="<a href='"+this.URL+"/ArticleServlet?action=adminSelectList&typeID="
					+typeID+"'>[继续删除其他文章]</a>";
			forward="/admin/success.jsp";
		}
		else{
			messages+="<li>删除文章失败!!!</li>";
			href="< a href='javascript:window.history.go(-1)'>[返回]</a>";
			forward="/admin/error.jsp";
		}
		request.setAttribute("messages", messages);
		request.setAttribute("href", href);
		String url=this.adminSelectList(request, response);
		return url;
	}

A、先创建一个articleBean,给这个articleBean设置传过来的那个id。

B、把这个articleBean传入,由articleDao执行删除操作。

根据articleDao的operationArticle函数返回值,判断是否成功删除,若成功,跳回ArticleList,String url=this.adminSelectList(request, response),我们是先执行一次查询文章列表再返回。

分享到:
评论

相关推荐

    基于java web的博客系统

    【基于Java Web的博客系统】是一个综合性的软件开发项目,主要使用Java技术栈构建一个运行在Web环境下的博客平台。这个系统通常包含多个模块,如用户管理、文章发布、评论互动、分类管理、搜索功能等,为用户提供了...

    基于Java Web的博客系统

    这个描述简洁明了地指出了项目的核心内容——一个基于Java Web技术的博客平台。这种类型的系统通常具备用户注册、登录、发布文章、评论互动、分类管理等功能。开发者利用Java Web的特性,如请求处理、数据持久化、...

    基于java web芝麻开门博客网设计与实现.zip

    基于java web芝麻开门博客网设计与实现.zip基于java web芝麻开门博客网设计与实现.zip基于java web芝麻开门博客网设计与实现.zip基于java web芝麻开门博客网设计与实现.zip基于java web芝麻开门博客网设计与实现.zip...

    基于 java web编程爱好者博客地带设计与实现.zip

    基于 java web编程爱好者博客地带设计与实现.zip基于 java web编程爱好者博客地带设计与实现.zip基于 java web编程爱好者博客地带设计与实现.zip基于 java web编程爱好者博客地带设计与实现.zip基于 java web编程...

    web课程设计-基于Java web的博客系统(源码+数据库+报告).zip

    因此,基于Java Web技术开发和设计的博客系统,运用MVC开发模式,Eclipse + Myeclipse集成开发环境,数据库技术等设计了博客系统。 本次课程设计主要阐述了不同用户对博客的不同管理,对管理员来说,有博主管理、...

    基于Java Web的博客系统源码.zip

    【标题】"基于Java Web的博客系统源码.zip"是一个包含了一整套使用Java Web技术开发的博客系统源代码的压缩文件。这个博客系统适用于多种场景,如课程设计、大作业、毕业设计、项目练习以及学习演示,为学习者提供了...

    基于Java Web技术博客项目系统的设计 与开发JAVA语言

    基于Java Web技术博客项目系统的设计 与开发

    基于java的博客系统

    【标题】"基于Java的博客系统"是一款使用Java技术栈构建的在线博客平台,它集成了SQL Server 2005数据库、Tomcat应用服务器以及MyEclipse开发环境。这个系统设计精巧,功能全面,提供了后台管理、用户注册、相册管理...

    基于java的个人博客系统的设计与实现.zip

    本项目“基于Java的个人博客系统的设计与实现”旨在提供一个全面的、易于理解和学习的Java Web开发实例,为初学者提供宝贵的实践机会,同时也适合作为毕业设计的参考。 首先,我们需要理解Java技术栈的基础。Java是...

    基于Java web的美食网站系统的设计与实现.rar

    【标题】"基于Java web的美食网站系统的设计与实现"是一个关于构建在线美食分享平台的项目,它利用Java Web技术栈来实现。这个系统旨在提供一个互动的平台,让用户能够浏览、分享、评论各种美食信息,同时可能还包含...

    (原创+源码+论文) 基于Java Web技术开发的BBS论坛系统

    标题中的"(原创+源码+论文) 基于Java Web技术开发的BBS论坛系统"揭示了这个压缩包文件的主要内容,它是一个基于Java Web技术实现的BBS(Bulletin Board System,电子公告板)论坛系统的完整源码和相关论文。...

    基于Java web的个人博客系统文档.doc

    【基于Java Web的个人博客系统】是一个利用Java技术构建的在线平台,允许用户轻松创建、发布和管理他们的个人博客。这种系统充分利用了Web Log的概念,提供了简易的傻瓜化信息发布方式,让不具备专业编程知识的普通...

    个人博客 java web

    首先,Java Web是一种基于Java技术的Web应用开发框架,它提供了强大的服务器端编程能力,使得开发者能够构建功能丰富的动态网站。Java Web开发通常涉及Servlet、JSP(JavaServer Pages)、JSTL(JavaServer Pages ...

    基于Java的博客系统

    【基于Java的博客系统】是一种使用Java Web技术构建的在线平台,它允许用户发布、分享和阅读文章。这种系统的核心特点在于其稳定性和可扩展性,使得它能够处理大量并发访问,同时保持数据的安全和一致性。 Java Web...

    基于Java Web的博客网站.rar

    【标题】: "基于Java Web的博客网站" 是一个使用Java技术栈开发的Web应用程序,主要功能是构建一个在线博客平台。这个项目充分利用了Java Web技术的优势,为用户提供发布、阅读和评论博客的功能。 【描述】: 这个...

    java web 博客

    Java Web 博客系统是一种基于Java技术构建的网络应用程序,主要用于个人或团队发表文章、分享观点、提供互动交流的平台。在这个系统中,用户可以进行登录、注册、发布文章、评论、删除文章等一系列操作。下面我们将...

    基于Java Web的博客系统(含数据库文件)

    这是一个基于Java Web技术开发的博客系统项目,包含了完整的源代码以及相关的数据库文件。这个项目对于学习和理解Java Web开发有着重要的实践价值。下面将详细解释其中涉及的关键知识点。 1. **Java Web技术**:...

    基于Java Web的博客系统【源代码+PPT】

    本篇将深入探讨一个基于Java Web的博客系统,它展示了如何利用Java技术栈构建一个功能完备、用户体验良好的在线博客平台。 一、项目概述 该项目名为"基于Java Web的博客系统",提供了完整的源代码和PPT讲解材料,供...

    基于Java Web的个人博客1

    基于Java Web的个人博客系统设计 本资源摘要信息将详细介绍基于Java Web的个人博客系统的设计和实现,涵盖了前端、后端、前后端通信和会话、网站设计、项目架构等方面的知识点。 一、前端(客户端、浏览器端) 1....

    基于java的博客系统.zip

    【基于Java的博客系统】是一个使用SSH框架(Struts2、Spring、Hibernate)开发的完整博客平台。这个项目提供了一整套的博客管理功能,包括文章发布、分类管理、评论互动、用户注册与登录等。数据库文件的包含使得...

Global site tag (gtag.js) - Google Analytics