新闻发布系统

日常项目2021 9月-1月 新闻发布系统

jar包

在这里插入图片描述

jsp页面

jsp目录

在这里插入图片描述

登录界面jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@page import="com.sun.corba.se.spi.*"%>
<%@page import="com.sun.crypto.*"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>注册页面</title>
		<style>
			* {
				margin: 0;
				padding: 0;
			}

			html {
				height: 100%;
				width: 100%;
				overflow: hidden;
				margin: 0;
				padding: 0;
				background: url(img/bgc1.jpg) no-repeat 0px 0px;
				background-repeat: no-repeat;
				background-size: 100% 100%;
				-moz-background-size: 100% 100%;
			}

			body {
				display: flex;
				align-items: center;
				justify-content: center;
				height: 100%;
				/* background-image: url(img/bgc1.jpg); */
			}

			h1 {
				text-align: center;
				margin-bottom: 20px;
				margin-top: 20px;
				color: #f0edf3;
			}

			p {
				margin-top: 10px;
				margin-left: 20px;
				color: azure;

			}

			input {
				margin-left: 15px;
				border-radius: 5px;
				border-style: hidden;
				height: 30px;
				width: 140px;
				outline: none;
				color: #f0edf3;
				padding-left: 10px;
			}

			select {
				margin-left: 15px;
			}

			.favourite input,
			.sex input {
				width: 40px;
				height: 25px;
			}

			#loginDiv {
				position: relative;
				width: 37%;
				display: flex;
				justify-content: center;
				align-items: center;
				height: 700px;
				background-color: rgba(75, 81, 95, 0.3);
				box-shadow: 7px 7px 17px rgba(52, 56, 66, 0.5);
				border-radius: 5px;
			}

			#account,
			#pw,
			#repw {
				position: absolute;
				left: 150px;
				background-color: rgba(216, 191, 216, 0.5);
			}

			span {
				position: absolute;
				left: 325px;
			}

			.button {
				border-color: cornsilk;
				background-color: rgba(100, 149, 237, .7);
				color: aliceblue;
				border-style: hidden;
				border-radius: 5px;
				width: 100px;
				height: 31px;
				font-size: 16px;
			}
		</style>
		<script src="./js/jquery-3.6.0.js"></script>
		<script type="text/javascript">
			//onblur失去焦点的值

			//定义一个变量用于存放XMLHttpRequest对象
			var xmlHttp;

			function checkIt() {
				//获取文本框的值
				var account = document.getElementById("account").value;

				//alert("测试获取文本框的值:"+account);
				//先创建XMLHttpRequest对象
				// code for IE7+, Firefox, Chrome, Opera, Safari
				if (window.XMLHttpRequest) {
					xmlHttp = new XMLHttpRequest();
				} else {
					// code for IE6, IE5
					xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
				}

				//服务器地址和数据
				var url = "./UserCheckServlet";
				//规定请求的类型、URL 以及是否异步处理请求。
				xmlHttp.open("POST", url, true);
				//向请求添加 HTTP 头。这个必加,是提交到后台的方式
				xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
				//将请求发送到服务器
				xmlHttp.send("account=" + account);

				//回调函数
				xmlHttp.onreadystatechange = function() {
					if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {
						//给div设置内容
						document.getElementById("errorAccount").innerHTML = xmlHttp.responseText;
					}
				}

				//给div设置内容
				//document.getElementById("errorAccount").innerHTML=account;
			}
		</script>
	</head>
	<body>
		<div id="loginDiv">
			<form action="./logonServlet" method="post">
				<h1 style="padding: 20px;">用户注册</h1>
				<p>用户名: <input type="text" name="uname" id="account" onblur="checkIt()" required="required">
					<span id="errorAccount" style="color:red;display:inline;"></span>
				</p>
				<p>密码: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type="password" name="pass" required="required"
						id="pw">
					<span id="password_msg"></span>
				</p>

				<p>验证密码: <input type="password" name="pass_re" required="required" id="repw"><span id="tishi"></span>
					<span id="repassword_msg"></span>
				</p>

				<p class="sex">性别: <input type="radio" name="sex" value="男"><input type="radio" name="sex" value="女"></p>
				<p class="favourite">爱好: <input type="checkbox" name="favourite" value="编程">编程
					<input type="checkbox" name="favourite" value="旅游">旅游
					<input type="checkbox" name="favourite" value="爬山">爬山
					<input type="checkbox" name="favourite" value="瑜伽">瑜伽
				</p>
				<p>职业:
					<select name="profession">
						<option>请选择职业:</option>
						<option>老师 </option>
						<option>学生 </option>
						<option>家长 </option>
					</select>
				</p>
				<p>个人简介: <textarea rows="7" cols="20" name="note"></textarea></p>
				<p style="text-align: center;"><button type="submit" value="注册" class="button">注册</button><button
						type="reset" value="取消" class="button">取消</button></p>
				<p>
				<div style="text-align: center;color: #f0edf3;;">取消注册,去<a href="record.jsp" style="color:red;">登录</a>
				</div>
				</p>
			</form>

		</div>
	</body>
	<script type="text/javascript">
		$(function() {
			//是否为空
			function ifnull(txt) {
				if (txt.length == 0) {
					return true;
				}
				var $reg = /\s+/;
				return $reg.test(txt);
			}
			//在id为password的元素失去焦点时进行密码的验证
			$("#pw").blur(function() {
				if (ifnull($(this).val())) {
					$("#password_msg").html("用户密码不能为空");
				} else {
					$("#password_msg").html("√");
				}
			});
			//在id为repassword的元素失去焦点时进行密码的验证
			$("#repw").blur(function() {
				if (ifnull($(this).val())) {
					$("#repassword_msg").html("请确认密码");
				} else {
					if ($("#pw").val() != $("#repw").val()) {
						$("#repassword_msg").html("两次密码不一致");
					} else {
						$("#repassword_msg").html("√");
					}
				}
			});
		})
	</script>
</html>

注册页面jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@page import="com.sun.corba.se.spi.*"%>
<%@page import="com.sun.crypto.*"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>注册页面</title>
		<style>
			* {
				margin: 0;
				padding: 0;
			}

			html {
				height: 100%;
				width: 100%;
				overflow: hidden;
				margin: 0;
				padding: 0;
				background: url(img/bgc1.jpg) no-repeat 0px 0px;
				background-repeat: no-repeat;
				background-size: 100% 100%;
				-moz-background-size: 100% 100%;
			}

			body {
				display: flex;
				align-items: center;
				justify-content: center;
				height: 100%;
				/* background-image: url(img/bgc1.jpg); */
			}

			h1 {
				text-align: center;
				margin-bottom: 20px;
				margin-top: 20px;
				color: #f0edf3;
			}

			p {
				margin-top: 10px;
				margin-left: 20px;
				color: azure;

			}

			input {
				margin-left: 15px;
				border-radius: 5px;
				border-style: hidden;
				height: 30px;
				width: 140px;
				outline: none;
				color: #f0edf3;
				padding-left: 10px;
			}

			select {
				margin-left: 15px;
			}

			.favourite input,
			.sex input {
				width: 40px;
				height: 25px;
			}

			#loginDiv {
				position: relative;
				width: 37%;
				display: flex;
				justify-content: center;
				align-items: center;
				height: 700px;
				background-color: rgba(75, 81, 95, 0.3);
				box-shadow: 7px 7px 17px rgba(52, 56, 66, 0.5);
				border-radius: 5px;
			}

			#account,
			#pw,
			#repw {
				position: absolute;
				left: 150px;
				background-color: rgba(216, 191, 216, 0.5);
			}

			span {
				position: absolute;
				left: 325px;
			}

			.button {
				border-color: cornsilk;
				background-color: rgba(100, 149, 237, .7);
				color: aliceblue;
				border-style: hidden;
				border-radius: 5px;
				width: 100px;
				height: 31px;
				font-size: 16px;
			}
		</style>
		<script src="./js/jquery-3.6.0.js"></script>
		<script type="text/javascript">
			//onblur失去焦点的值

			//定义一个变量用于存放XMLHttpRequest对象
			var xmlHttp;

			function checkIt() {
				//获取文本框的值
				var account = document.getElementById("account").value;

				//alert("测试获取文本框的值:"+account);
				//先创建XMLHttpRequest对象
				// code for IE7+, Firefox, Chrome, Opera, Safari
				if (window.XMLHttpRequest) {
					xmlHttp = new XMLHttpRequest();
				} else {
					// code for IE6, IE5
					xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
				}

				//服务器地址和数据
				var url = "./UserCheckServlet";
				//规定请求的类型、URL 以及是否异步处理请求。
				xmlHttp.open("POST", url, true);
				//向请求添加 HTTP 头。这个必加,是提交到后台的方式
				xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
				//将请求发送到服务器
				xmlHttp.send("account=" + account);

				//回调函数
				xmlHttp.onreadystatechange = function() {
					if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {
						//给div设置内容
						document.getElementById("errorAccount").innerHTML = xmlHttp.responseText;
					}
				}

				//给div设置内容
				//document.getElementById("errorAccount").innerHTML=account;
			}
		</script>
	</head>
	<body>
		<div id="loginDiv">
			<form action="./logonServlet" method="post">
				<h1 style="padding: 20px;">用户注册</h1>
				<p>用户名: <input type="text" name="uname" id="account" onblur="checkIt()" required="required">
					<span id="errorAccount" style="color:red;display:inline;"></span>
				</p>
				<p>密码: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type="password" name="pass" required="required"
						id="pw">
					<span id="password_msg"></span>
				</p>

				<p>验证密码: <input type="password" name="pass_re" required="required" id="repw"><span id="tishi"></span>
					<span id="repassword_msg"></span>
				</p>

				<p class="sex">性别: <input type="radio" name="sex" value="男"><input type="radio" name="sex" value="女"></p>
				<p class="favourite">爱好: <input type="checkbox" name="favourite" value="编程">编程
					<input type="checkbox" name="favourite" value="旅游">旅游
					<input type="checkbox" name="favourite" value="爬山">爬山
					<input type="checkbox" name="favourite" value="瑜伽">瑜伽
				</p>
				<p>职业:
					<select name="profession">
						<option>请选择职业:</option>
						<option>老师 </option>
						<option>学生 </option>
						<option>家长 </option>
					</select>
				</p>
				<p>个人简介: <textarea rows="7" cols="20" name="note"></textarea></p>
				<p style="text-align: center;"><button type="submit" value="注册" class="button">注册</button><button
						type="reset" value="取消" class="button">取消</button></p>
				<p>
				<div style="text-align: center;color: #f0edf3;;">取消注册,去<a href="record.jsp" style="color:red;">登录</a>
				</div>
				</p>
			</form>

		</div>
	</body>
	<script type="text/javascript">
		$(function() {
			//是否为空
			function ifnull(txt) {
				if (txt.length == 0) {
					return true;
				}
				var $reg = /\s+/;
				return $reg.test(txt);
			}
			//在id为password的元素失去焦点时进行密码的验证
			$("#pw").blur(function() {
				if (ifnull($(this).val())) {
					$("#password_msg").html("用户密码不能为空");
				} else {
					$("#password_msg").html("√");
				}
			});
			//在id为repassword的元素失去焦点时进行密码的验证
			$("#repw").blur(function() {
				if (ifnull($(this).val())) {
					$("#repassword_msg").html("请确认密码");
				} else {
					if ($("#pw").val() != $("#repw").val()) {
						$("#repassword_msg").html("两次密码不一致");
					} else {
						$("#repassword_msg").html("√");
					}
				}
			});
		})
	</script>
</html>

注册成功

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>注册成功页面</title>
</head>
<body>
<h1>注册成功!!!</h1><hr>
 注册成功,请<a href="record.jsp">登录</a>!!!
</body>
</html>

登录错误界面

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>错误页面</title>
<style type="text/css">
*{
padding:0 auto;
}
</style>
</head>
<center>
<body background="./bgc3.jfif">
账号或密码错误!!!
<br><a href="record.jsp">重新登录</a>
</center>
</body>
</html>

主页(主) iframe

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8" import="UserClass.User"%>
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<meta name="viewport" content="width=device-width, initial-scale=1.0" />
		<title>iframe</title>
		<style>
			html {
				background: url(./img/bgc2.jpg);
			}
			#iframeTop {
				width: 100%;
				height: 15%;
				background-color: rgba(221, 210, 227, 0.7);
			}

			#iframeLeft {
				width: 15%;
				height: 763px;
				float: left;
				background-color: rgba(202, 186, 215, 0.7);
			}

			#iframeContent {
				width: 84%;
				height: 763px;
				margin-left: 1%;
				background-color: rgba(171, 170, 210, 0.7);
			}
		</style>
	<body>
		<div>
			<iframe id="iframeTop" name="iframeTop" frameborder="0" src="Homepage_head.jsp.jsp"></iframe>
			<iframe id="iframeLeft" name="iframeLeft" frameborder="0" src="Homepage_left.jsp"></iframe>
			<iframe id="iframeContent" name="iframeContent" frameborder="0"></iframe>
		</div>
	</body>
</html>

主页(head) iframe

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8" import="UserClass.User"%>
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
<title>Insert title here</title>
</head>

<body style="text-align:center">
<%
	User user=(User)session.getAttribute("user"); 
%>
		<%-- [<%="【"+session.getAttribute("uname")+"】"%>]你好!<a href="exit.jsp">退出</a>--%>
		[<%="【"+user.getUname()+"】"%>]你好!<a href="exit.jsp" target="_parent">退出</a>
		<br>
		人数:<%="【"+application.getAttribute("i")+"】" %>&nbsp;&nbsp;&nbsp;登陆成功!
	</body>
</html>

主页(left) iframe

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8" import="UserClass.User"%>
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
<title>Insert title here</title>
<style type="text/css">
div{
border: 2px solid #33333377;
border-radius: 5px;	
text-align: center;
width:150px;
line-height: 35px;
}
a {
text-decoration:none;
color: black;
}
a:hover{
text-decoration:none;
cursor:pointer;
}
</style>
</head>
<body>
<div>
		<!-- <a href="content.html" target="iframeContent">content</a>
		<br/>
		<a href="haha.html" target="iframeContent">haha</a> -->
		<% //add
			User user=(User)session.getAttribute("user");
	        if(user.getType()==1){
				//if(session.setAttribute("sql_type")=="1"){
				//if(Integer.parseInt(session.setAttribute("sql_type"))==1){
					
		%>
		<a href="user.jsp" target="iframeContent">用户管理</a>
		<%
		}
		%>
		<br />
		<a href="news/New_Management.jsp" target="_parent">新闻管理</a>
		

		<br />
		<a href="Change_Password.jsp" target="iframeContent">修改密码</a>
		<br />
		</div>
	</body>
</html>

用户管理

<%@page import="java.sql.ResultSet"%>
<%@page import="java.util.List"%>
<%@page import="UserClass.User"%>
<%@page import="com.sun.corba.se.spi.*"%>
<%@page import="com.sun.crypto.*"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>查询用户</title>
<style>

</style>
</head>
<body>
<%
//select uid,uname,pass,sex,profession,favorite,note,type,isValid from user
%>
<center>
<h2>新闻发布系统>>用户管理>>查询用户</h2><hr color ="black">
<form action="./selectServlet" method="post">
用户名:<input type="text" name="uname">
<input type="button" value="批量删除" onClick="batch()"/>
<input type="submit" value="查询">
<a href="./add.jsp?x=add">添加用户</a>
</form>
</center>
<p>
<%
	List<User> List = (List)session.getAttribute("list");//add
	session.setAttribute("list", List);
	//ResultSet rs = (ResultSet)session.getAttribute("rs");
	//if(rs == null){
	if(List == null){
		return;
	}
%>
	<table border="1" cellpading="0" cellSpacing="0" align="center" width="700px">
	<tr>
	<td>操作</td>
	<td>编号</td>
	<td>用户名</td>
	<td>性别</td>
	<td>职业</td>
	<td>爱好</td>
	<td>权限</td>
	<td>状态</td>
	<td>重置密码</td>
	<td>修改权限</td>
	<td>修改状态</td>
	<td>删除用户</td>
	</tr>
<%
	//while(rs.next()){
%>
<c:forEach var="user" items="${sessionScope.list }">
		<tr>
		    <td><input name="checkbox" type="checkbox" value="${user.uid}"></td>
			<td>${user.uid }</td>
			<td>${user.uname}</td>
			<td>${user.sex }</td>
			<td>${user.profession }</td>
			<td>${user.favourite }</td>
			<td>
				<c:if test="${user.type==0 }">普通用户</c:if>
				<c:if test="${user.type==1 }">管理员</c:if>
			</td>
			<td>
				<c:if test="${user.isValid==0 }">无效</c:if>
				<c:if test="${user.isValid==1 }">有效</c:if>
			</td>
			<td><a href="./passResetServlet?uid=${user.uid }">重置密码</a></td>
			<td><a href="./changeTypeServlet?uid=${user.uid }&type=${user.type}">修改权限</a></td>
			<td><a href="./changeIsvalidServlet?uid=${user.uid }&isValid=${user.isValid}">修改状态</a></td>
			<%-- <td><a href="./deleteServlet?uid=${user.uid }" onclick="return confirmDel('确定要删除该用户吗?')">删除用户</a></td>--%>
		    <td><a href="./deleteServlet?uid=${user.uid }">删除用户</a></td>
		</tr> 
</c:forEach>
	<%--
	<tr>
	<td><%=rs.getInt("uid") %></td>
	<td><%=rs.getString("uname") %></td>
	<td><%=rs.getString("sex") %></td>
	<td><%=rs.getString("profession") %></td>
	<td><%=rs.getString("favourite") %></td>
	<td><%=rs.getString("type") %></td>
	<td><%=rs.getString("isValid") %></td>
	<td><a href="./passResetServlet?uid=<%=rs.getInt("uid") %>">重置密码</a></td>
	<td><a href="./typeInput.jsp?uid=<%=rs.getInt("uid") %>">修改权限</a></td>
	<td><a href="isValidInput.jsp?uid=<%=rs.getInt("uid") %>">修改状态</a></td>
	
	<td><a href="./deleteServlet?uid=<%=rs.getInt("uid") %>" onclick="return confirmDel('确定要删除该用户吗?')">删除用户</a></td>
	</tr> 
	--%>
<%
	//}
%>
</table>

<script type="text/javascript">
function batch(){
	 if(confirm("确认删除?")){
	 	var boxarray = "";
	 	var box = document.getElementsByName("checkbox");
	 	for(var i = 0 ; i < box.length ; i++){
	 		if(box[i].checked){
	 			boxarray += ""+box[i].value+",";
				}
		}
		if(boxarray.length>1){
			boxarray = boxarray.substring(0,boxarray.length-1);
		}
  		if(boxarray.length>0){
			window.location.href="./deleteBatchServlet?boxarray="+boxarray;
		}else{
			alert("请选择你要删除的信息!");
		}
	}else{
		return ;
	}
}
	//function confirmDel(str){
		//return confirm(str);
	//}
</script>

</body>
</html>

添加用户

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>注册页面</title>
		<style>
			* {
				margin: 0;
				padding: 0;
			}

			html {
				height: 100%;
				width: 100%;
				overflow: hidden;
				margin: 0;
				padding: 0;
				background: url(img/bgc1.jpg) repeat 0px 0px;
				background-repeat: no-repeat;
				background-size: 100% 100%;
				-moz-background-size: 100% 100%;
			}

			body {
				display: flex;
				align-items: center;
				justify-content: center;
				height: 100%;
				/* background-image: url(img/bgc1.jpg); */
			}

			h1 {
				text-align: center;
				margin-bottom: 20px;
				margin-top: 20px;
				color: #f0edf3;
			}

			p {
				margin-top: 10px;
				margin-left: 20px;
				color: azure;

			}

			input {
				margin-left: 15px;
				border-radius: 5px;
				border-style: hidden;
				height: 30px;
				width: 140px;
				
				outline: none;
				color: #f0edf3;
				padding-left: 10px;
			}

			select {
				margin-left: 15px;
			}

			.favourite input,
			.sex input {
				width: 35px;
				height: 25px;
			}

			#logonDiv {
				position: relative;
				width: 37%;
				display: flex;
				justify-content: center;
				align-items: center;
				height: 700px;
				background-color: rgba(75, 81, 95, 0.3);
				box-shadow: 7px 7px 17px rgba(52, 56, 66, 0.5);
				border-radius: 5px;
			}

			#account,
			#pw,
			#repw {
				position: absolute;
				left: 150px;
				background-color: rgba(216, 191, 216, 0.5);
			}

			span {
				position: absolute;
				left: 325px;
			}

			.button {
				border-color: cornsilk;
				background-color: rgba(100, 149, 237, .7);
				color: aliceblue;
				border-style: hidden;
				border-radius: 5px;
				width: 100px;
				height: 31px;
				font-size: 16px;
			}
		</style>
		<script src="./js/jquery-3.6.0.js"></script>
		<script type="text/javascript">
			//onblur失去焦点的值

			//定义一个变量用于存放XMLHttpRequest对象
			var xmlHttp;

			function checkIt() {
				//获取文本框的值
				var account = document.getElementById("account").value;

				//alert("测试获取文本框的值:"+account);
				//先创建XMLHttpRequest对象
				// code for IE7+, Firefox, Chrome, Opera, Safari
				if (window.XMLHttpRequest) {
					xmlHttp = new XMLHttpRequest();
				} else {
					// code for IE6, IE5
					xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
				}

				//服务器地址和数据
				var url = "./UserCheckServlet";
				//规定请求的类型、URL 以及是否异步处理请求。
				xmlHttp.open("POST", url, true);
				//向请求添加 HTTP 头。这个必加,是提交到后台的方式
				xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
				//将请求发送到服务器
				xmlHttp.send("account=" + account);

				//回调函数
				xmlHttp.onreadystatechange = function() {
					if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {
						//给div设置内容
						document.getElementById("errorAccount").innerHTML = xmlHttp.responseText;
					}
				}

				//给div设置内容
				//document.getElementById("errorAccount").innerHTML=account;
			}
		</script>

	</head>
	<body>
		<div id="logonDiv">
			<form action="./logonServlet" method="post">
				<h1 style="padding: 20px;">添加用户</h1>
				<p>用户名: <input type="text" name="uname" id="account" onblur="checkIt()" required="required">
					<span id="errorAccount" style="color:red;display:inline;"></span>
				</p>
				<p>密码: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type="password" name="pass" required="required"
						id="pw">
					<span id="password_msg"></span>
				</p>

				<p>验证密码: <input type="password" name="pass_re" required="required" id="repw"><span id="tishi"></span>
					<span id="repassword_msg"></span>
				</p>

				<p class="sex">性别: <input type="radio" name="sex" value="男"><input type="radio" name="sex" value="女"></p>
				<p class="favourite">爱好: <input type="checkbox" name="favourite" value="编程">编程
					<input type="checkbox" name="favourite" value="旅游">旅游
					<input type="checkbox" name="favourite" value="爬山">爬山
					<input type="checkbox" name="favourite" value="瑜伽">瑜伽
				</p>
				<p>职业:
					<select name="profession">
						<option>请选择职业:</option>
						<option>老师 </option>
						<option>学生 </option>
						<option>家长 </option>
					</select>
				</p>
				<p>个人简介: <textarea rows="7" cols="20" name="note"></textarea></p>
				<p style="text-align: center;"><button type="submit" value="注册" class="button">注册</button><button
						type="reset" value="取消" class="button">取消</button></p>
				<p>
					<div style="text-align: center;color: #f0edf3;">取消添加,<a href="user.jsp" style="color:red;">返回查询页面</a>
					</div>
				</p>
			</form>

		</div>
	</body>
	<script type="text/javascript">
		$(function() {
			//是否为空
			function ifnull(txt) {
				if (txt.length == 0) {
					return true;
				}
				var $reg = /\s+/;
				return $reg.test(txt);
			}
			//在id为password的元素失去焦点时进行密码的验证
			$("#pw").blur(function() {
				if (ifnull($(this).val())) {
					$("#password_msg").html("用户密码不能为空");
				} else {
					$("#password_msg").html("√");
				}
			});
			//在id为repassword的元素失去焦点时进行密码的验证
			$("#repw").blur(function() {
				if (ifnull($(this).val())) {
					$("#repassword_msg").html("请确认密码");
				} else {
					if ($("#pw").val() != $("#repw").val()) {
						$("#repassword_msg").html("两次密码不一致");
					} else {
						$("#repassword_msg").html("√");
					}
				}
			});
		})
	</script>
</html>

jdbc.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8" import="java.sql.*"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>JDBC测试页面</title>
</head>
<body>
<h1>jdbc操作数据库的测试代码:初学写一步运行一 步以便知道哪里有问题,不要写完了才运行</h1><hr>
<%
//1-加载数据库驱动程序(如果有异常,要么是项目的lib下没有放数据库驱动,要么就是13行单词错了)
String className ="com.mysql.jdbc.Driver";
Class.forName(className);
//2-连接数据库(17- 19行访问数据库需要的信息通常是放在配置文件中,由程序读取,初学写死在程序中)
String url = "jdbc:mysql://localhost:3306/news_management?CharacterEncoding=UTF-8";//news__db是数据库的名字
String user = "root";// 访问数据库服务器的账号
String password = "123456";//访问数据库服务器的密码
Connection conn = DriverManager.getConnection(url,user, password);
//3-创建发送sql命令的陈述
Statement stmt = conn.createStatement();
//4-构造sq1命令并发送到数据库执行(初学的时候先在mysqlfront里把sql命令写好,没有问题后再贴到这里来)
//String sql = "update user set pass= '123456' where uid=1;";
//String sql = "DELETE from user where uid=1;";
String sql = "INSERT INTO USER (uname, pass, sex, profession, favourite )VALUES( '001', '666', '1', '教师', '影视娱乐' );";//这里有问题
int result = stmt.executeUpdate(sql);
//5-处理结果.
if(result >= 0){
	out.print("添加用户成功");
}else{
	out.print("添加用户夫败");
}
//6-关闭数据库,释放资源
stmt.close();
conn.close();
%>
</body>
</html>

退出登录

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<%


   // String id=(String) session.getAttribute("id");  //获取保存在session变量中的账号
    Object number=application.getAttribute("i");
    session.removeAttribute("uname");
    int i=Integer.parseInt(number.toString());
    if (i!=0){
        i--;
        application.setAttribute("i",i);
        response.sendRedirect("record.jsp");
    }else{
        response.sendRedirect("record.jsp");
    }
%>
</body>
</html>

背景图片

在这里插入图片描述

添加新闻

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8" import="UserClass.User"%>
<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>添加新闻</title>
		<style>
			* {
				margin: 0;
				padding: 0;
			}

			html {
				height: 100%;
				width: 100%;
				overflow: hidden;
				margin: 0;
				padding: 0;
			}

			body {
				display: flex;
				align-items: center;
				justify-content: center;
				height: 100%;
				/* background-image: url(img/bgc1.jpg); */
			}

			h1 {
				text-align: center;
				margin-bottom: 20px;
				margin-top: 20px;
				color: #f0edf3;
			}

			p {
				margin-top: 10px;
				margin-left: 15px;
				color: azure;

			}

			input {
				margin-left: 15px;
				border-radius: 5px;
				border-style: hidden;
				height: 30px;
				width: 140px;
				outline: none;
				color: #f0edf3;
				padding-left: 10px;
			}

			#logonDiv {
				position: relative;
				width: 37%;
				display: flex;
				justify-content: center;
				align-items: center;
				height: 500px;
				background-color: rgba(75, 81, 95, 0.3);
				box-shadow: 7px 7px 17px rgba(52, 56, 66, 0.5);
				border-radius: 5px;
			}

			#title,
			#uname,
			#pubtime{
				position: absolute;
				left: 190px;
				background-color: rgba(216, 191, 216, 0.5);
			}

			span {
				position: absolute;
				left: 355px;
			}

			.button {
				border-color: cornsilk;
				background-color: rgba(100, 149, 237, .7);
				color: aliceblue;
				border-style: hidden;
				border-radius: 5px;
				width: 100px;
				height: 31px;
				font-size: 16px;
			}
		</style>
	</head>
	<body>
		<%
		User user=(User)session.getAttribute("user"); 
   		 %>
		<div id="logonDiv">
			<form action="../addNewsServlet" method="post">
				<h1 style="padding: 20px;">添加新闻</h1>
				<p>新闻标题: <input type="text" name="title" id="title" required="required">
					<span id="title_msg"></span>
				</p>
				<p>发布人:<input type="text" name="uname" required="required" id="uname" value="<%=user.getUname()%>">
					<span id="uname_msg"></span>
				</p>
				<%-- <p>发布时间:<input type="text" name="pubtime" required="required" id="pubtime"><span id="tishi"></span>
					<span id="pubtime_msg"></span>
					
				</p>--%>
				<p>新闻内容:<textarea rows="7" cols="20" name="content" id="content"></textarea></p>
				<p style="text-align: center;"><button type="submit" value="发布" class="button">发布</button><button
						type="reset" value="取消" class="button">取消</button></p>
				<p>
				<%--<div style="text-align: center;color: #f0edf3;">取消添加,<a href="newsList.jsp" style="color:red;">返回查询页面</a> 
				</div>--%>
				</p>
			</form>

		</div>
	</body>
	<script src="../js/jquery-3.6.0.js"></script>
	<script type="text/javascript">
		$(function() {
			//是否为空
			function ifnull(txt) {
				if (txt.length == 0) {
					return true;
				}
				var $reg = /\s+/;
				return $reg.test(txt);
			}
			//在id为password的元素失去焦点时进行密码的验证
			$("#title").blur(function() {
				if (ifnull($(this).val())) {
					$("#title_msg").html("标题不能为空");
				} else {
					$("#title_msg").html("√");
				}
			});
			$("#uname").blur(function() {
				if (ifnull($(this).val())) {
					$("#uname_msg").html("发布人不能为空");
				} else {
					$("#uname_msg").html("√");
				}
			});
			<%--$("#pubtime").blur(function() {
				if (ifnull($(this).val())) {
					$("#pubtime_msg").html("发布时间不为空");
				} else {
					$("#pubtime_msg").html("√");
				}
			});
			--%>
		})
	</script>
</html>

修改新闻内容

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8" import="UserClass.User"%>
<%@page import="java.util.List"%>
<%@page import="UserClass.News"%>
<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>修改新闻</title>
		<style>
			* {
				margin: 0;
				padding: 0;
			}

			html {
				height: 100%;
				width: 100%;
				overflow: hidden;
				margin: 0;
				padding: 0;
				background: url(../img/bgc1.jpg) repeat 0px 0px;
				background-repeat: no-repeat;
				background-size: 100% 100%;
				-moz-background-size: 100% 100%;
			}

			body {
				display: flex;
				align-items: center;
				justify-content: center;
				height: 100%;
				/* background-image: url(img/bgc1.jpg); */
			}

			h1 {
				text-align: center;
				margin-bottom: 20px;
				margin-top: 20px;
				color: #f0edf3;
			}

			p {
				margin-top: 10px;
				margin-left: 15px;
				color: azure;

			}

			input {
				margin-left: 15px;
				border-radius: 5px;
				border-style: hidden;
				height: 30px;
				width: 140px;
				outline: none;
				color: #f0edf3;
				padding-left: 10px;
			}

			#logonDiv {
				position: relative;
				width: 37%;
				display: flex;
				justify-content: center;
				align-items: center;
				height: 500px;
				background-color: rgba(75, 81, 95, 0.3);
				box-shadow: 7px 7px 17px rgba(52, 56, 66, 0.5);
				border-radius: 5px;
			}

			#title,
			#uname,
			#pubtime{
				position: absolute;
				left: 190px;
				background-color: rgba(216, 191, 216, 0.5);
			}

			span {
				position: absolute;
				left: 355px;
			}

			.button {
				border-color: cornsilk;
				background-color: rgba(100, 149, 237, .7);
				color: aliceblue;
				border-style: hidden;
				border-radius: 5px;
				width: 100px;
				height: 31px;
				font-size: 16px;
			}
		</style>
	</head>
	<body>
		<%
		User user=(User)session.getAttribute("user"); 
		List<News> List = (List)session.getAttribute("list");//add
		//ResultSet rs = (ResultSet)session.getAttribute("rs");
		//if(rs == null){
		if(List == null){
			return;
		}
		
   		 %>
		<div id="logonDiv">
			<form action="./updateNewsServlet?nid=${news.nid }" method="post">
				<h1 style="padding: 20px;">修改新闻</h1>
				<p>新闻标题: <input type="text" name="title" id="title" required="required" value="${news.title }">
					<span id="title_msg"></span>
				</p>
				<p>新闻内容:<textarea rows="7" cols="20" name="content" id="content">${news.content }</textarea></p>
				<p style="text-align: center;"><button type="submit" value="修改" class="button">修改</button><button
						type="reset" value="取消" class="button">取消</button></p>
				<p>
				<div style="text-align: center;color: #f0edf3;">取消修改<a href="./news/newsList.jsp" style="color:red;">返回查询页面</a> 
				</div>
				</p>
			</form>

		</div>
	</body>
	<script src="../js/jquery-3.6.0.js"></script>
	<script type="text/javascript">
		$(function() {
			//是否为空
			function ifnull(txt) {
				if (txt.length == 0) {
					return true;
				}
				var $reg = /\s+/;
				return $reg.test(txt);
			}
			//在id为password的元素失去焦点时进行密码的验证
			$("#title").blur(function() {
				if (ifnull($(this).val())) {
					$("#title_msg").html("标题不能为空");
				} else {
					$("#title_msg").html("√");
				}
			});
		})
	</script>
</html>

新闻管理

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8" import="UserClass.User"%>
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<meta name="viewport" content="width=device-width, initial-scale=1.0" />
		<title>iframe</title>
		<style>
			html {
				background: url(../img/bgc2.jpg);
			}

			#newsTop {
				width: 100%;
				height: 15%;
				background-color: rgba(221, 210, 227, 0.7);
			}

			#newsLeft {
				width: 15%;
				height: 763px;
				float: left;
				background-color: rgba(202, 186, 215, 0.7);
			}

			#newsContent {
				width: 84%;
				height: 763px;
				margin-left: 1%;
				background-color: rgba(171, 170, 210, 0.7);
			}
		</style>
	<body>
		<div>
			<iframe id="newsTop" name="newsTop" frameborder="0" src="newsHead.jsp"></iframe>
			<iframe id="newsLeft" name="newsLeft" frameborder="0" src="newsLeft.jsp"></iframe>
			<iframe id="newsContent" name="newsContent" frameborder="0"></iframe>
		</div>
	</body>
</html>


新闻头部

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8" import="UserClass.User"%>
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<style>
			ul li {
				list-style: none;
			}
			ul li:first-child{
				width: 175px;
				position: absolute;
				right: 25px;
			}
			ul{
				position: absolute;
				right: 100px;
			}
			a {
				text-decoration:none;
				color: black;}
            a:hover{
            	text-decoration:none; 
            	cursor:pointer
            	}
            .return_main{
				position: relative;
				left:15px;
				top: 25px;
				height: 22px;
				width: 85px;
				text-align: center;
				background-color: rgba(75, 81, 95, 0.3);
				box-shadow: 7px 7px 17px rgba(52, 56, 66, 0.5);
				border-radius: 5px;
            }
            .quit{
				height: 22px;
				width: 50px;
				text-align: center;
				background-color: rgba(75, 81, 95, 0.3);
				box-shadow: 7px 7px 17px rgba(52, 56, 66, 0.5);
				border-radius: 5px;
            }
		</style>
	</head>
	<body>
	<%
	User user=(User)session.getAttribute("user"); 
    %>
		<div class="return_main"><a href="../Homepage.jsp" target="_parent"><-返回首页</a></li>
		</div>
		<ul>
			<li><%="【"+user.getUname()+"】"%>你好!</li>
			<li><a href="../exit.jsp" target="_parent" class="quit">退出</a></li>
		</ul>

	</body>
</html>

新闻(Left)

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8" import="UserClass.User"%>
<!DOCTYPE html>
<html>
	<head>
		<title>left</title>
		<style>
		div{
				border: 2px solid #33333377;
  				border-radius: 5px;	
  				text-align: center;
  				width:150px;
  				height: 60px;	
  				line-height: 30px;
			}
		    a {
				text-decoration:none;
				color: black;
				}
            a:hover{
            	text-decoration:none; 
            	cursor:pointer
            	}
            	
		</style>
	</head>
	<body>
	
	<%
	User user=(User)session.getAttribute("user"); 
    %>
        <div>
			<a href="newsList.jsp" target="newsContent">新闻列表</a>
			<br />
			<a href="addNews.jsp" target="newsContent">添加新闻</a>
			<br />
		</div>
	</body>
</html>

新闻List

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8" import="UserClass.User"%>
<%@page import="java.util.List"%>
<%@page import="UserClass.News"%>
<%@page import="com.sun.corba.se.spi.*"%>
<%@page import="com.sun.crypto.*"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
		<title>新闻列表</title>
	</head>
	<body>
	<%
	User user=(User)session.getAttribute("user"); 
	News news =  (News)request.getAttribute("news");
    %>
		<center>
			<h2>新闻发布系统>>新闻管理>>管理新闻</h2><hr color ="black">
			<form action="../selectNewsServlet" method="post">
				新闻查询:<input type="text" name="title" placeholder="请输入标题">
				<input type="button" value="批量删除" onClick="batch()" />
				<input type="submit" value="查询">
			</form>
		</center>
	<%
	List<News> List = (List)session.getAttribute("list");//add
	session.setAttribute("list",List);
	//ResultSet rs = (ResultSet)session.getAttribute("rs");
	//if(rs == null){
	if(List == null){
		return;
	}
%>
			<!-- nid,title,content,uid,putime,isValid -->
		<table border="1" cellpading="0" cellSpacing="0" align="center" width="700px">
			<tr>
				<td>操作</td>
				<td>新闻编号</td>
				<td>新闻标题</td>
				<td>发布者</td>
				<td>发布时间</td>
				<td>状态</td>
				<td>查看</td>
				<%
					if(user.getType()==1){
					%>
					<td>修改状态</td>
					<td>修改内容</td>
					<td>删除新闻</td>
				<% } %>
			</tr>
			<%
				User currentUser=(User) request.getSession().getAttribute("user");
				System.out.println(currentUser);
				user.setUname(currentUser.getUname());
			%>
			<c:forEach var="news" items="${sessionScope.list}">
				<tr>
					<td><input name="checkbox" type="checkbox" value="${news.nid}"></td>
					<td>${news.nid }</td>
					<td>${news.title }</td>
					<%--<td>${news.uid}</td> --%>
					<td>${user.uname}</td>
					<td>${news.pubtime }</td>
					<td>
						<c:if test="${news.isValid==0 }">无效</c:if>
						<c:if test="${news.isValid==1 }">有效</c:if>
					</td>
					<td>
						<a href="../seeContentServlet?nid=${news.nid}">查看</a>
					</td>
					<%
						if(user.getType()==1){
					%>
						<td>
							<a href="../change_NewsisValid?nid=${news.nid}&isValid=${news.isValid}">修改状态</a>
						<td>
							<a href="../changeNewsContentServlet?nid=${news.nid}">修改内容</a>
						</td>
						<td>
							<a href="../deleteNewsServlet?nid=${news.nid}">删除新闻</a>
						</td>
					<% 
						} 
					%>
					</tr>
			</c:forEach>
		</table>

		<script type="text/javascript">
			function batch() {
				if (confirm("确认删除?")) {
					var boxarray = "";
					var box = document.getElementsByName("checkbox");
					for (var i = 0; i < box.length; i++) {
						if (box[i].checked) {
							boxarray += "" + box[i].value + ",";
						}
					}
					if (boxarray.length > 1) {
						boxarray = boxarray.substring(0, boxarray.length - 1);
					}
					if (boxarray.length > 0) {
						window.location.href = "./deleteBatchNewsServlet?boxarray=" + boxarray;
					} else {
						alert("请选择你要删除的信息!");
					}
				} else {
					return;
				}
			}
			//function confirmDel(str){
			//return confirm(str);
			//}
		</script>

	</body>
</html>
				

查看新闻内容

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@page import="java.util.List"%>
<%@page import="UserClass.News"%>
<!DOCTYPE html>
<html>
	<head>
		<meta charset="ISO-8859-1">
		<title>Insert title here</title>
		<style type="text/css">
			* {
				padding: 0 auto;
				margin: 0 auto;
			}

			.news {
				width: 1000px;
				margin: 0 auto;
				/* 水平居中 */
				height: 763px;
				background-color: rgba(180, 147, 194, 0.7);
			}

			.news1 {
				widows: 600px;
				/* background-color: #e9e9e9; */

				background-repeat: no-repeat;
				background-position: top center;
				background-attachment: fixed;
			}

			h2 {
				line-height: 100px;
			}

			.news3 {
				text-align: center;
				line-height: 80px;
			}

			.news4 {
				width: 817px;
				margin: auto;
				line-height: 35px;
				text-indent: 2em;
			}

			.news5 {
				width: 800px;
				margin: auto;
				line-height: 300px;
			}
		</style>
		<script type="text/javascript">
			function jumpback() {
				window.history.go(-1);
			}
		</script>
	</head>
	<body>
		<%
   News news =  (News)request.getAttribute("news");
%>
		<div class="news">
			<div class="news1">
				<div class="news2">
					<h2 class="news3">
						${news.title}
					</h2>
				</div>
				<hr>
				<div class="news4">
					<span>作者:${user.uname}</span>&nbsp;&nbsp;
					<span>发布日期:${news.pubtime}</span>
					<p>${news.content}</p>
					<a href="javascript:void(0)" onclick="jumpback()" class="pull-right"></a>
				</div>
			</div>
		</div>
	</body>
</html>

sevlet部分

src目录

在这里插入图片描述

数据库工具类

package db_Util;


import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

import org.eclipse.jdt.internal.compiler.ast.ReturnStatement;
//import com.mysql.jdbc.Connection;

/**
 *   数据库公共类
 * @author 晓晓
 *
 */
public class DatabaseUtil {
	Connection conn = null;
	Statement stmt = null;
	ResultSet rs=null;
	
	/**
	 * 1-构造方法,加载数据库驱动程序
	 */
	public DatabaseUtil() {
		String className="com.mysql.jdbc.Driver";//加载数据库驱动程序
		try {
			Class.forName(className);
		} catch (ClassNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
	/**
	 * 连接数据库
	 * @return
	 */
	public Connection getConn() {
		String url = "jdbc:mysql://localhost:3306/news_management?CharacterEncoding=utf-8";//news__db是数据库的名字
		String user = "root";// 访问数据库服务器的账号
		String password = "123456";//访问数据库服务器的密码
		try {
			conn = (Connection) DriverManager.getConnection(url,user, password);
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return conn;
	}
	/**
	 * 3-创建能发送sql命令的对象
	 * @return
	 */
	public Statement getStatement() {
		try {
			if(conn==null) {
				conn=this.getConn();
			}
			stmt = conn.createStatement();
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return stmt;
	}
	/**
	 * 4-gouzaosql命令并发送到数据库执行
	 * @param sql(给定的sql命令 :insert,delete,update)
	 * @return -1代表失败,>=0代表成功
	 */
	public int executeUpdate(String sql) {
		int result=-1;
		try {
			if(stmt==null) {
				stmt=this.getStatement();
			}
			result=stmt.executeUpdate(sql);
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return result;
	}
	/**
	 * 
	 * @param sql
	 * @return
	 */
	 public ResultSet executeQuery(String sql) {
		 try {
			 if(stmt == null) {
					stmt = this.getStatement();
			 }
			 rs=stmt.executeQuery(sql);
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		 return rs;
	 }
	 
	 /**
	  * 关闭数据库
	  */
	public void closeDB() {
		try {
			if(rs!=null) {
				rs.close();
			}
			if(stmt!=null) {
				stmt.close();
			}
			if(conn!=null) {
				conn.close();
			}
		} catch (Exception e2) {
			// TODO: handle exception
			System.out.println("关闭数据库失败");
		}
	}				
}

过滤器

过滤器(文字)

package filter;

import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.annotation.WebFilter;

/**
 * Servlet Filter implementation class Filter_Encoding
 */
@WebFilter({ "/*"})
public class Filter_Encoding implements Filter {

    /**
     * Default constructor. 
     */
    public Filter_Encoding() {
        // 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 {
		// TODO Auto-generated method stub
		// place your code here
		request.setCharacterEncoding("utf-8");
		response.setCharacterEncoding("utf-8");
		response.setContentType("text/html;charset=UTF-8");
		// pass the request along the filter chain
		chain.doFilter(request, response);
	}

	/**
	 * @see Filter#init(FilterConfig)
	 */
	public void init(FilterConfig fConfig) throws ServletException {
		// TODO Auto-generated method stub
	}

}

过滤器(登录过滤)

package filter;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.annotation.WebFilter;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;

/**
 * Servlet Filter implementation class homepage_Filter
 */
@WebFilter({"/Homepage.jsp","/user.jsp","/New_Management.jsp","/Change_Management.jsp"})
public class homepage_Filter implements Filter {

    /**
     * Default constructor. 
     */
    public homepage_Filter() {
        // 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 {
		// TODO Auto-generated method stub
		// place your code here
//		登陆拦截,没有登陆,强制登陆或提醒登陆
        PrintWriter out=response.getWriter();
        HttpSession session=((HttpServletRequest) request).getSession();
        String id =(String) session.getAttribute("uname");
        if(id==null) {
        	out.print("没有登陆,请先完成 <a href='record.jsp' target='_top'> 登陆 </a>");
        	return;
        }
        // pass the request along the filter chain
		chain.doFilter(request, response);
	}

	/**
	 * @see Filter#init(FilterConfig)
	 */
	public void init(FilterConfig fConfig) throws ServletException {
		// TODO Auto-generated method stub
	}

}

java类

user.java

package UserClass;

public class User {
	private int uid;
	private String uname;
	private String pass;
	private String sex;
	private String profession;
	private String note;
	private String favourite;
	private int type;
	private int isValid;
	public User() {
		super();
	}
	public int getUid() {
		return uid;
	}

	public void setUid(int uid) {
		this.uid = uid;
	}

	public String getUname() {
		return uname;
	}

	public void setUname(String uname) {
		this.uname = uname;
	}

	public String getPass() {
		return pass;
	}

	public void setPass(String pass) {
		this.pass = pass;
	}

	public String getSex() {
		return sex;
	}

	public void setSex(String sex) {
		this.sex = sex;
	}

	public String getProfession() {
		return profession;
	}

	public void setProfession(String profession) {
		this.profession = profession;
	}

	public String getFavourite() {
		return favourite;
	}

	public void setFavourite(String favourite) {
		this.favourite = favourite;
	}

	public String getNote() {
		return note;
	}

	public void setNote(String note) {
		this.note = note;
	}

	public int getType() {
		return type;
	}

	public void setType(int type) {
		this.type = type;
	}

	public int getIsValid() {
		return isValid;
	}

	public void setIsValid(int isValid) {
		this.isValid = isValid;
	}
	
}

/**

	private int uid;
	private String uname;	
	private String pass;
	private String sex;
	private String profession;
	private String favourite;
	private String note;
	private int type;
	private int isValid;
	
	public User() {
		super();
		// TODO Auto-generated constructor stub
	}
	
	public User(int uid) {
		super();
		this.uid = uid;
	}
	
	public User(String uname, String pass) {
		super();
		this.uname = uname;
		this.pass = pass;
	}

	public User(int uid, java.lang.String uname, java.lang.String pass, String sex, java.lang.String profession,
			java.lang.String favourite, java.lang.String note, int type, int isValid) {
		super();
		this.uid = uid;
		this.uname = uname;
		this.pass = pass;
		this.sex = sex;
		this.profession = profession;
		this.favourite = favourite;
		this.note = note;
		this.type = type;
		this.isValid = isValid;
	}

	public int getUid() {
		return uid;
	}

	public void setUid(int uid) {
		this.uid = uid;
	}

	public String getUname() {
		return uname;
	}

	public void setUname(String uname) {
		this.uname = uname;
	}

	public String getPass() {
		return pass;
	}

	public void setPass(String pass) {
		this.pass = pass;
	}

	public String getSex() {
		return sex;
	}

	public void setSex(String sex) {
		this.sex = sex;
	}

	public String getProfession() {
		return profession;
	}

	public void setProfession(String profession) {
		this.profession = profession;
	}

	public String getFavourite() {
		return favourite;
	}

	public void setFavourite(String favourite) {
		this.favourite = favourite;
	}

	public String getNote() {
		return note;
	}

	public void setNote(String note) {
		this.note = note;
	}

	public int getType() {
		return type;
	}

	public void setType(int type) {
		this.type = type;
	}

	public int getIsValid() {
		return isValid;
	}

	public void setIsValid(int isValid) {
		this.isValid = isValid;
	}

	@Override
	public String toString() {
		return "User [uid=" + uid + ", uname=" + uname + ", pass=" + pass + ", sex=" + sex + ", profession="
				+ profession + ", favourite=" + favourite + ", note=" + note + ", type=" + type + ", isValid=" + isValid
				+ "]";
	}
	
	
	
	
}
**/

news.java

package UserClass;

import java.sql.Date;
//nid,title,content,uid,putime,isValid
public class News {
private  int nid;
private String title;
private String content;
private int uid;
private String pubtime;
private int isValid;
public News() {
	super();
}
public int getNid() {
	return nid;
}
public void setNid(int nid) {
	this.nid = nid;
}
public String getTitle() {
	return title;
}
public void setTitle(String title) {
	this.title = title;
}
public String getContent() {
	return content;
}
public void setContent(String content) {
	this.content = content;
}
public int getUid() {
	return uid;
}
public void setUid(int uid) {
	this.uid = uid;
}
public String getPubtime() {
	return pubtime;
}
public void setPubtime(String pubtime) {
	this.pubtime = pubtime;
}
public int getIsValid() {
	return isValid;
}
public void setIsValid(int isValid) {
	this.isValid = isValid;
}
}

验证码VerifyCode.java

package UserClass;

import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics2D;
import java.awt.image.BufferedImage;
import java.util.Random;
 
/*对图片进行处理的类和方法*/
 
public class VerifyCode {
 
	public static String drawRandomText(int width, int height, BufferedImage verifyImg) {
 
		Graphics2D graphics = (Graphics2D) verifyImg.getGraphics();
		graphics.setColor(Color.WHITE);// 设置画笔颜色-验证码背景色
		graphics.fillRect(0, 0, width, height);// 填充背景
		graphics.setFont(new Font("微软雅黑", Font.BOLD, 40));
 
		// 数字和字母的组合
		String baseNumLetter = "123456789abcdefghijklmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ";
		StringBuffer sBuffer = new StringBuffer();
		int x = 10; // 旋转原点的 x 坐标
		String ch = "";
		Random random = new Random();
 
		for (int i = 0; i < 4; i++) {
 
			graphics.setColor(getRandomColor());
			// 设置字体旋转角度
			int degree = random.nextInt() % 30; // 角度小于30度
			int dot = random.nextInt(baseNumLetter.length());
			ch = baseNumLetter.charAt(dot) + "";
			sBuffer.append(ch);
			// 正向旋转
			graphics.rotate(degree * Math.PI / 180, x, 45);
			graphics.drawString(ch, x, 45);
			// 反向旋转
			graphics.rotate(-degree * Math.PI / 180, x, 45);
			x += 48;
 
		}
 
		// 画干扰线
		for (int i = 0; i < 6; i++) {
			// 设置随机颜色
			graphics.setColor(getRandomColor());
			// 随机画线
			graphics.drawLine(random.nextInt(width), random.nextInt(height),
					random.nextInt(width), random.nextInt(height));
 
		}
 
		// 添加噪点
		for (int i = 0; i < 30; i++) {
			
			int x1 = random.nextInt(width);
			int y1 = random.nextInt(height);
			graphics.setColor(getRandomColor());
			graphics.fillRect(x1, y1, 2, 2);
 
		}
 
		return sBuffer.toString();
 
	}
 
	/**
	 * 随机取色
	 */
	private static Color getRandomColor() {
 
		Random ran = new Random();
		Color color = new Color(ran.nextInt(256),
				ran.nextInt(256), ran.nextInt(256));
 
		return color;
 
	}
 
}

用户servlet

注册用户

package servlet;

import java.io.IOException;
import java.io.PrintWriter;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

//import com.mysql.jdbc.Connection;
import db_Util.DatabaseUtil;
import UserClass.User;
import userDao.UserSevice;

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

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		
		request.setCharacterEncoding("utf-8");
		response.setCharacterEncoding("utf-8");
		response.setContentType("text/html;charset=UTF-8");
		PrintWriter out = response.getWriter();
		
		String uname = request.getParameter("uname");
		String pass = request.getParameter("pass");
		String sex = request.getParameter("sex");
		String profession = request.getParameter("profession");
		String[] note_s = request.getParameterValues("note");
		String[] favorite_s = request.getParameterValues("favourite");
		String favourite = "";
		String note = "";
		for(int i = 0; i < note_s.length; i++) {
			note += note_s[i];
		}
		for(int i = 0; i < favorite_s.length; i++) {
			favourite += favorite_s[i];
		}
        //构造user对象
		User user=new User();
		user.setUname(uname);
		user.setPass(pass);
		user.setSex(sex);
		user.setProfession(profession);
		user.setFavourite(favourite);
		user.setNote(note);

		UserSevice sevice=new UserSevice();
		boolean rs=sevice.isEXist(uname);
		if(rs==false) {
			sevice.setUser(user);
			boolean result=sevice.doLogin(user);
			System.out.print(result);	
			try {
				//if(result >= 0){
				if(result==true) {
					out.write("<script language='javascript'>alert('注册成功,请登录!');window.location.href='javascript:history.back(-1)';</script>");
				}else{
					out.write("<script language='javascript'>alert('注册失败');window.location.href='javascript:history.back(-1)';</script>");
					response.sendRedirect("logon.jsp");
				}
			}catch(IOException e){
				e.getStackTrace();
			}
		}else {
			out.write("<script language='javascript'>alert('用户已存在');window.location.href='javascript:history.back(-1)';</script>");
		}
	}

	/**
	 * @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);
	}

}

用户登录

package servlet;

import java.io.IOException;
import java.io.PrintWriter;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import db_Util.*;

import UserClass.User;
import userDao.UserSevice;
/**
 * Servlet implementation class recordServlet
 */
@WebServlet("/recordServlet")
public class recordServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public recordServlet() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
//		response.getWriter().append("Served at: ").append(request.getContextPath());
		//1-获取页面上的登录信息
		request.setCharacterEncoding("utf-8");
		response.setCharacterEncoding("utf-8");
		response.setContentType("text/html");
		
		String uname=request.getParameter("uname");  //获取账号
		String pass=request.getParameter("pass");  //获取密码
		PrintWriter out = response.getWriter();
		HttpSession session = request.getSession();
		ServletContext application = request.getServletContext();
		System.out.print("111");
		String inputcode = request.getParameter("verifyInput");
		String code = (String) request.getSession().getAttribute("verifyCode");
		System.out.println(inputcode);
		System.out.println(code);
		if(!(inputcode.equals(code))){
//			request.setAttribute("error", "验证码错误!");
			out.write("<script language='javascript'>alert('验证码错误!!');window.location.href='javascript:history.back(-1)';</script>");
		}
			User user=new User();
			user.setUname(uname);
			user.setPass(pass);
			UserSevice service=new UserSevice();//add
			boolean rs=service.dorecord(user);
			if(rs==true) {
				boolean result=service.isValid(uname);
				System.out.println(result);
				if(result==true) {
					User user1=service.getUserByUname(uname);//add
//					session.setAttribute("uname",uname);//被注释的
					 
					 session.setAttribute("user",user1);//add
					 int i=1;
					 Object number=application.getAttribute("i");
					 if(number==null){
						 application.setAttribute("i", String.valueOf(i));
					 }else{
					     i=Integer.parseInt(number.toString());
					     i++;
					     application.setAttribute("i",i);
					    }
					//登陆成功,跳转到主页
					
				
					response.sendRedirect("Homepage.jsp");
					session.setAttribute("uname",uname);//注释
				}
				else{
					out.write("<script language='javascript'>alert('账号无效');window.location.href='javascript:history.back(-1)';</script>");
				}
			}else {
				    //登陆失败,跳转到失败页
					request.getRequestDispatcher("error.jsp").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);
	}

}

验证码

package servlet;

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.awt.image.BufferedImage;
import java.io.OutputStream;
import javax.imageio.ImageIO;
import UserClass.*;
 
/**
 * Servlet implementation class VerificationServlet
 */
@WebServlet("/VerificationServlet")
public class VerificationServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public VerificationServlet() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
//		response.getWriter().append("Served at: ").append(request.getContextPath());
		
			/**
			 * 验证码
			 */
			try {
				System.out.println("验证码");
				int width = 200;
				int height = 69;
				BufferedImage verifyImg = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
				// 生成对应宽高的不带透明色初始图片
				String randomText = VerifyCode.drawRandomText(width, height, verifyImg);
				// 单独的一个类方法,出于代码复用考虑,进行了封装。
				// 功能是生成验证码字符并加上噪点,干扰线,返回值为验证码字符
				request.getSession().setAttribute("verifyCode", randomText);
				response.setContentType("image/png");// 必须设置响应内容类型为图片,否则前台不识别
				OutputStream os = response.getOutputStream(); // 获取文件输出流
				ImageIO.write(verifyImg, "png", os);// 输出图片流
				os.flush();
				os.close();// 关闭流
	 
			} catch (IOException e) {
				e.printStackTrace();
			}
			

	}

	/**
	 * @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);
	}

}

adduser

package servlet;

import java.io.IOException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

//import com.mysql.jdbc.Connection;

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

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		request.setCharacterEncoding("utf-8");
		response.setCharacterEncoding("utf-8");
		response.setContentType("text/html;charset=UTF-8");
		String uname = request.getParameter("uname");
		String pass = request.getParameter("pass");
		String sex = request.getParameter("sex");
		String profession = request.getParameter("profession");
		String[] note_s = request.getParameterValues("note");
		String[] favorite_s = request.getParameterValues("favourite");
		String favourite = "";
		String note = "";
		for(int i = 0; i < note_s.length; i++) {
			note += note_s[i];
		}
		for(int i = 0; i < favorite_s.length; i++) {
			favourite += favorite_s[i];
		}
		
		Connection conn = null;
		Statement statement = null;
			//加载数据库驱动程序
			try {
				String className="com.mysql.jdbc.Driver";//加载数据库驱动程序
				Class.forName(className);
				
				//连接数据库
				String url = "jdbc:mysql://localhost:3306/news_management?CharacterEncoding=utf8";
				String user ="root";
				String password = "123456";
				
				conn =(Connection) DriverManager.getConnection(url, user, password);
				statement = conn.createStatement();
				String sql = "INSERT INTO USER (uname, pass, sex, profession, favourite,note)VALUES( '"+uname+"', '"+pass+"', '"+sex+"','"+profession+"', '"+favourite+"','"+note+"');";
//				String sql = "INSERT INTO USER (uname, pass, sex, profession, favourite,note)VALUES( '001', '666', '1', '教师', '影视娱乐' ,'你好');";
				int result = statement.executeUpdate(sql);
//				response.getWriter().append("Served at: ").append(request.getContextPath());
				if(result >= 0){
					response.sendRedirect("actSuccess.jsp");
				}else{
					response.sendRedirect("actFail.jsp");
				}
				statement.close();
				conn.close();
			} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			} catch (ClassNotFoundException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
//		response.getWriter().append("Served at: ").append(request.getContextPath());
	}

	/**
	 * @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);
	}

}

修改状态

package servlet;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import db_Util.*;
import userDao.UserSevice;
/**
 * Servlet implementation class changeIsvalidServlet
 */
@WebServlet("/changeIsvalidServlet")
public class changeisValidServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public changeisValidServlet() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		HttpSession session = request.getSession();
		PrintWriter out = response.getWriter();
//		String uid = (String) session.getAttribute("uid");
		String uid = request.getParameter("uid");
		String isValid = request.getParameter("isValid");
		System.out.println(uid+" "+isValid);
		
//		DatabaseUtil du = new DatabaseUtil();
		UserSevice ui=new UserSevice();
		int result = ui.updateisValid(Integer.parseInt(uid), isValid);
		if(result > 0){
			out.write("<script language='javascript'>alert('修改状态成功');window.location.href='javascript:history.back(-1)';</script>");
		}else{
			out.write("<script language='javascript'>alert('修改状态失败');window.location.href='javascript:history.back(-1)';</script>");
		}

	}

	/**
	 * @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);
	}

}

修改身份

package servlet;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import db_Util.*;
import userDao.UserSevice;

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

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		HttpSession session = request.getSession();
		PrintWriter out = response.getWriter();
		String uid = request.getParameter("uid");
		String type = request.getParameter("type");
		System.out.println(uid+" "+type);

		UserSevice ui=new UserSevice();

		int result = ui.updateType(Integer.parseInt(uid),type);
		System.out.println(result);
		if(result > 0){
			out.write("<script language='javascript'>alert('修改状态成功');window.location.href='javascript:history.back(-1)';</script>");
		}else{
			out.write("<script language='javascript'>alert('修改状态失败');window.location.href='javascript:history.back(-1)';</script>");
		}
}

	/**
	 * @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);
	}

}

批量删除

package servlet;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import userDao.UserSevice;

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

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
//		response.getWriter().append("Served at: ").append(request.getContextPath());
		PrintWriter out =response.getWriter();
		String did = request.getParameter("boxarray");
		
		String[] str = did.split(",");
		int[] uid = new int[str.length];
		if(str.length > 0 ) {
			for(int i = 0; i < str.length; i ++ ) {
				uid[i] = Integer.parseInt(str[i]);
				//System.out.println(uid[i]);
			}
		}
		 for(int id : uid) {
			 UserSevice ui = new UserSevice();
			 ui.delectUserByUid(id);
		 }
		 out.write("<script language='javascript'>alert('删除成功!');window.location.href='javascript:history.back(-1)';</script>");
	}

	/**
	 * @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);
	}

}

删除(单个)

package servlet;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import db_Util.*;
import userDao.UserSevice;

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

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		PrintWriter out = response.getWriter();
		String uid = request.getParameter("uid");
		UserSevice ui=new UserSevice();
		boolean result = ui.delectUserByUid(Integer.parseInt(uid));
		//System.out.println(Integer.parseInt(uid));
		if(result == true){
			out.write("<script language='javascript'>alert('删除成功');window.location.href='javascript:history.back(-1)';</script>");
		}else{
			out.write("<script language='javascript'>alert('删除失败');window.location.href='javascript:history.back(-1)';</script>");
		}
	}

	/**
	 * @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);
	}

}

重置密码

package servlet;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import db_Util.*;
import userDao.UserSevice;

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

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
//		response.getWriter().append("Served at: ").append(request.getContextPath());
		System.out.println("");
		PrintWriter out = response.getWriter();
		String uid = request.getParameter("uid");
		UserSevice ui=new UserSevice();
        int result = ui.ResetPassword(Integer.parseInt(uid));
		
		if(result > 0){
			out.write("<script language='javascript'>alert('密码重置成功');window.location.href='javascript:history.back(-1)';</script>");
		}else{
			out.write("<script language='javascript'>alert('密码重置失败');window.location.href='javascript:history.back(-1)';</script>");
		}
	}
	/**
	 * @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);
	}

}

查找用户

package servlet;

import java.io.IOException;
import java.sql.ResultSet;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import UserClass.User;
import db_Util.*;
import userDao.UserSevice;


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

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		
		HttpSession session = request.getSession();
		
		String uname = request.getParameter("uname");
		UserSevice ui=new UserSevice();
		List<User> list = ui.doServlet(uname);
		session.setAttribute("list", list);
		response.sendRedirect("user.jsp");
//		response.getWriter().append("Served at: ").append(request.getContextPath());
	}

	/**
	 * @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

addNewsServlet

package NewsServlet;

import java.io.IOException;
import java.io.PrintWriter;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import UserClass.News;
import UserClass.User;
import db_Util.DatabaseUtil;
import userDao.NewsSevice;
import userDao.UserSevice;

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

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
//		response.getWriter().append("Served at: ").append(request.getContextPath());
		request.setCharacterEncoding("utf-8");
		response.setCharacterEncoding("utf-8");
		response.setContentType("text/html;charset=UTF-8");
		PrintWriter out = response.getWriter();
		HttpSession session = request.getSession();
		
		String title = request.getParameter("title");
		//String uname = request.getParameter("uname");
		String[] content_s = request.getParameterValues("content");
		String content = "";
		for(int i = 0; i < content_s.length; i++) {
			content += content_s[i];
		}
		
        //构造news对象
		News news =new News();
		news.setTitle(title);
		news.setContent(content);
		SimpleDateFormat time=new SimpleDateFormat("yyyy-MM-dd");
		news.setPubtime(time.format(new Date()));
//		System.out.println("1");
		User currentUser=(User) request.getSession().getAttribute("user");
//		System.out.println(currentUser);
		news.setUid(currentUser.getUid());
		news.setIsValid(1);
		NewsSevice ns=new NewsSevice();
		boolean result =ns.addNews(news);
//		System.out.print(result);	
		try {
			//if(result >= 0){
			if(result==true) {
				out.write("<script language='javascript'>alert('发布成功');window.location.href='javascript:history.back(-1)';</script>");
			}else{
				out.write("<script language='javascript'>alert('发布失败');window.location.href='javascript:history.back(-1)';</script>");
				response.sendRedirect("addNews.jsp");
			}
		}catch(IOException e){
			e.getStackTrace();
		}
	}


	/**
	 * @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);
	}

}

change_NewsisValid

package NewsServlet;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import userDao.NewsSevice;
import userDao.UserSevice;

/**
 * Servlet implementation class change_NewsisValidServlet
 */
@WebServlet("/change_NewsisValid")
public class change_NewsisValidServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public change_NewsisValidServlet() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
//		response.getWriter().append("Served at: ").append(request.getContextPath());
		PrintWriter out = response.getWriter();
//		String uid = (String) session.getAttribute("uid");
		String nid = request.getParameter("nid");
		String isValid = request.getParameter("isValid");
//		System.out.println(nid+" "+isValid);
		
//		DatabaseUtil du = new DatabaseUtil();
		NewsSevice ui=new NewsSevice();
		int result = ui.updateisValid(Integer.parseInt(nid), isValid);
//		System.out.println(result);
		if(result > 0){
			out.write("<script language='javascript'>alert('修改状态成功');window.location.href='javascript:history.back(-1)';</script>");
		}else{
			out.write("<script language='javascript'>alert('修改状态失败');window.location.href='javascript:history.back(-1)';</script>");
		}
	}

	/**
	 * @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);
	}

}

changeNewsContentServlet

package NewsServlet;

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import UserClass.News;
import userDao.NewsSevice;

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

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
//		response.getWriter().append("Served at: ").append(request.getContextPath());
//		HttpSession session = request.getSession();
		String nid = request.getParameter("nid");
		NewsSevice ui=new NewsSevice();
		News news=null;
		try {
			news= ui.SeeContent(nid);	
		}catch (Exception e) {
			e.printStackTrace();
		}
		request.setAttribute("news",news);
		request.getRequestDispatcher("news/ChangeContent.jsp").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);
	}

}

deleteNewsServlet

package NewsServlet;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import userDao.NewsSevice;
import userDao.UserSevice;

/**
 * Servlet implementation class deletNewsServlet
 */
@WebServlet("/deleteNewsServlet")
public class deleteNewsServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public deleteNewsServlet() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
//		response.getWriter().append("Served at: ").append(request.getContextPath());
		PrintWriter out = response.getWriter();
		String nid = request.getParameter("nid");
		NewsSevice ui=new NewsSevice();
		boolean result = ui.deleteNews(Integer.parseInt(nid));
		//System.out.println(Integer.parseInt(uid));
		if(result == true){
			out.write("<script language='javascript'>alert('删除成功');window.location.href='javascript:history.back(-1)';</script>");
		}else{
			out.write("<script language='javascript'>alert('删除失败');window.location.href='javascript:history.back(-1)';</script>");
		}
	}

	/**
	 * @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);
	}

}

seeContentServlet

package NewsServlet;

import java.io.IOException;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import UserClass.News;
import userDao.NewsSevice;

/**
 * Servlet implementation class SeeServlet
 */
@WebServlet("/seeContentServlet")
public class seeContenServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public seeContenServlet() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
//		response.getWriter().append("Served at: ").append(request.getContextPath());
		HttpSession session = request.getSession();
		String nid = request.getParameter("nid");
		NewsSevice ui=new NewsSevice();
		News news=null;
		try {
			news= ui.SeeContent(nid);	
		}catch (Exception e) {
			System.out.println("根据nid查询当前的新闻信息失败");
			e.printStackTrace();
		}
		request.setAttribute("news", news);
		request.getRequestDispatcher("news/seeContent.jsp").forward(request, response);
//		response.sendRedirect("news/newsList.jsp");
	}

	/**
	 * @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);
	}

}

selectNewsServlet

package NewsServlet;

import java.io.IOException;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import UserClass.News;

import userDao.NewsSevice;


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

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
//		response.getWriter().append("Served at: ").append(request.getContextPath());
		HttpSession session = request.getSession();
		String title = request.getParameter("title");
		NewsSevice ui=new NewsSevice();
		List<News> list = ui.SelectNews(title);	
		session.setAttribute("list", list);
		response.sendRedirect("news/newsList.jsp");
	}

	/**
	 * @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);
	}

}

updateNewsServlet

package NewsServlet;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import UserClass.News;
import userDao.NewsSevice;

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

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		response.getWriter().append("Served at: ").append(request.getContextPath());
		request.setCharacterEncoding("utf-8");
		response.setCharacterEncoding("utf-8");
		response.setContentType("text/html;charset=UTF-8");
		PrintWriter out = response.getWriter();
		HttpSession session = request.getSession();
		String nid = request.getParameter("nid");
//		System.out.println(nid);
		String title = request.getParameter("title");
		String[] content_s = request.getParameterValues("content");
		String content = "";
		for(int i = 0; i < content_s.length; i++) {
			content += content_s[i];
		}
		News news =new News();
		news.setTitle(title);
		news.setContent(content);
		news.setNid(Integer.parseInt(nid));
//		System.out.println(nid);
		NewsSevice ns=new NewsSevice();
		boolean result =ns.changeNews(news);
//		System.out.print(result);	
		//if(result >= 0){
		if(result==true) {
			out.write("<script language='javascript'>alert('发布成功');window.location.href='javascript:history.back(-1)';</script>");
		}else{
			out.write("<script language='javascript'>alert('发布失败');window.location.href='javascript:history.back(-1)';</script>");
		}
	}

	/**
	 * @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);
	}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值