【11】JSP标准标签库JSTL程序设计

工程目录

【11】JSP标准标签库JSTL程序设计

一、说明

  • 此实验基于实验9-1
  • 途中红线部分为增加或修改部分
  • 此实验将页面中99%的Scriplet代码换为了使用JSTL实现

二、JSTL的配置

1、下载JSTL文件,本站地址:

2、下载 jakarta-taglibs-standard-1.1.2.zip 包并解压,将 jakarta-taglibs-standard-1.1.2/lib/ 下的两个 jar 文件:standard.jar 和 jstl.jar 文件拷贝到 本项目的 WebContent /WEB-INF/lib/ 下

3、将 jakarta-taglibs-standard-1.1.2/tld 下的需要的 tld 文件(我们只用到c.tld,只需要复制这个文件就可以了)复制到 WEB-INF 目录下

三、代码

index.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8"%>

<%@ page import="java.util.*"%>
<%@ page import="java.io.*"%>
<%@ page import="java.text.SimpleDateFormat"%>

<%@ page import="witersen.vo.*"%>
<%@ page import="witersen.factory.*"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>


<%
    request.setCharacterEncoding("UTF-8");
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>首页</title>
<script type="text/javascript">
	function edit(object) {
		//获取值
		var newsid = object.parentNode.parentNode.children[0]
				.getAttribute("id");
		var news_title = object.parentNode.parentNode.children[1].textContent;
		var news_content = object.parentNode.parentNode.children[2].textContent;
		//显示到页面
		document.getElementById("news_title").setAttribute("value", news_title);
		document.getElementById("news_content").setAttribute("value",
				news_content);
		document.getElementById("newsid").setAttribute("value", newsid);
		//移除不可点击属性
		document.getElementById("news_edit").removeAttribute("disabled");
	}
	//删除新闻
	function del(roleid,newsid,userid,authorid){
		location.replace("DelNews?roleid=" + roleid+"&newsid="+newsid+"&userid="+userid+"&authorid="+authorid);
	}
	//通过审核新闻
	function VerifyNews(roleid,newsid){
		location.replace("VerifyNews?roleid=" + roleid+"&newsid="+newsid);
	}
</script>
</head>
<body>
	<div style="text-align: center;">
		当前角色:${sessionScope.rolename}  当前用户:${sessionScope.username} <a
			href="logout">退出登录</a>
	</div>
	<form action="UpdateNews" method="post">
		<table id="edit_news" style="margin: 0 auto;">
			<tr>
				<td><input id="news_title" name="news_title" type="text"
					placeholder="输入新闻标题"></input></td>
				<td><input id="news_content" name="news_content" type="text"
					placeholder="输入新闻内容"></input></td>
				<td><input id="newsid" name="newsid" type="hidden"></input></td>
				<td><input id="roleid" name="roleid" type="hidden"
					value="${sessionScope.roleid}"></input></td>
				<td><input id="news_edit" type="submit" value="确认修改"
					disabled="disabled"></input></td> ${requestScope.update_news_result}
			</tr>
		</table>
	</form>
	<form action="AddNews" method="post">
		<table style="margin: 0 auto;">
			<tr>
				<td><input name="news_title" type="text" placeholder="输入新闻标题"></input></td>
				<td><input name="news_content" type="text" placeholder="输入新闻内容"></input></td>
				<td><input name="userid"
					value="<%=session.getAttribute("userid")%>" type="hidden"></input></td>
				<td><input type="submit" value="添加新闻"></input></td>
				${requestScope.add_news_result}
			</tr>
		</table>
	</form>
	<table id="mytab" border="1" style="margin: 0 auto; width: 50%;">
		<tr>
			<td>序号</td>
			<td>新闻标题</td>
			<td>新闻内容</td>
			<td>作者</td>
			<td>角色</td>
			<td>添加时间</td>
			<td>当前状态</td>
			<td>操作</td>
		</tr>
		<%
		pageContext.setAttribute("all", NewsDAOFactory.getINewsDAOInstance().GetNewsList(""));
		%>
		<c:forEach items="${all}" var="news" varStatus="status">
			<tr>
				<td id="${news.getNewsid()}">${status.index+1}</td>
				<td>${news.getNews_title()}</td>
				<td>${news.getNews_content()}</td>
				<td>${news.getAuthorname()}</td>
				<td>${news.getRolename()}</td>
				<td>${news.getSubmit_time()}</td>
				<td>${news.getIs_verified()==0?"<p style=\"color:#43cf78\">已发布</p>":"<p style=\"color:#be3b3b\">待审核</p>" }</td>
				<td>
					<button
						${sessionScope.roleid==1||news.getAuthorid()==sessionScope.userid?"":"disabled=\"disabled\""}
						onclick="edit(this)">编辑</button>
					<button ${sessionScope.roleid==1?"":"disabled=\"disabled\""}
						onclick="VerifyNews(${sessionScope.roleid},${news.getNewsid()})">通过审核
					</button>
					<button
						${sessionScope.roleid==1||news.getAuthorid()==sessionScope.userid?"":"disabled=\"disabled\""}
						onclick="del(${sessionScope.roleid},${news.getNewsid()},${sessionScope.userid},${news.getAuthorid()})">删除
					</button>
				</td>
			</tr>
		</c:forEach>
	</table>
</body>
</html>

list.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8"%>

<%@ page import="java.util.*"%>
<%@ page import="java.io.*"%>
<%@ page import="java.text.SimpleDateFormat"%>

<%@ page import="witersen.vo.*"%>
<%@ page import="witersen.factory.*"%>

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>首页</title>
</head>
<body>
	<div style="width: 50%;">
		<a href="login.jsp" style="float: right;">后台登录</a>
	</div>
	<table id="mytab" border="1" style="margin: 0 auto; width: 50%;">
		<tr>
			<td>序号</td>
			<td>新闻标题</td>
			<td>新闻内容</td>
			<td>作者</td>
			<td>角色</td>
			<td>发布时间</td>
		</tr>
		<%
		    pageContext.setAttribute("all", NewsDAOFactory.getINewsDAOInstance().GetNewsList(""));
		%>
		<c:forEach items="${all}" var="news" varStatus="status">
			<c:if test="${news.getIs_verified()!=1}">
				<tr>
					<td id="${news.getNewsid()}">${status.index+1}</td>
					<td>${news.getNews_title()}</td>
					<td>${news.getNews_content()}</td>
					<td>${news.getAuthorname()}</td>
					<td>${news.getRolename()}</td>
					<td>${news.getSubmit_time()}</td>
				</tr>
			</c:if>
		</c:forEach>
	</table>
</body>
</html>

login.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8"%>
<%@ page import="java.util.*"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
	<c:if test="${sessionScope.username!=null}">
		<c:redirect url="index.jsp">
		</c:redirect>
	</c:if>
	<c:forEach items="${requestScope.loginMessge}" var="iter">
	 ${iter}
	 </c:forEach>
	<form action=LoginCheck method="post">
		用户名:<input type="text" name="username"><br /> 密码:<input
			type="password" name="password"><br /> <input type="submit"
			value="登录"> <input type="reset" value="重置">
	</form>
</body>
</html>

原创文章,作者:witersen,如若转载,请注明出处:https://www.witersen.com

(3)
witersen的头像witersen
上一篇 2020年12月8日 下午8:12
下一篇 2020年12月9日 上午10:59

相关推荐

发表回复

登录后才能评论