登录:
login.jsp:登录界面
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html lang="zh">
<head>
<meta charset="UTF-8">
<title>登录</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<%--底下三行是导入的外部样式 --%>
<link rel="stylesheet" href="${pageContext.request.contextPath}/bootstrap-3.3.7-dist/css/bootstrap.css">
<script src="${pageContext.request.contextPath}/bootstrap-3.3.7-dist/js/jquery-3.5.1.js"></script>
<script src="${pageContext.request.contextPath}/bootstrap-3.3.7-dist/js/bootstrap.js"></script>
<%--自定义的样式 --%>
<style>
* {
outline: none !important;
}
html,
body {
background: #1abe9c;
}
form {
width: 300px;
background: #ebeff2;
box-shadow: 0px 0px 50px rgba(0, 0, 0, .5);
border-radius: 5px;
padding: 20px;
position: absolute;
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
}
.btn-group {
width: 100%;
}
.btn-group button {
width: 50%;
}
</style>
</head>
<body>
<%--表单,action是提交的地址,method是数据传输方式 --%>
<form action="doLogin.jsp" method="post" id="myForm">
<h3 class="text-center">欢迎使用虚空新闻管理</h3>
<div class="form-group">
<input name="username" type="text" id="id_username" class="form-control" placeholder="请输入您的账号">
</div>
<div class="form-group">
<input name="password" type="password" id="id_password" class="form-control" placeholder="请输入您的密码">
</div>
<div class="btn-group">
<button type="submit" class="btn btn-primary">登录</button>
<button type="button" class="btn btn-danger" οnclick='location=href="regiest.html"'>没有账号?</button>
</div>
</form>
<script>
//给表单添加一个提交事件(可以尝试导入第三方插件:jQuery Validation),进行一个表单验证
$("#myForm").submit(()=>{
if($("#id_username").val().length==0){
alert("用户名不能为空")
return false
}
if($("#id_password").val().length==0){
alert("密码不能为空")
return false
}
return true
})
</script>
</body>
</html>
效果如下:
doLogin.jsp:处理登录请求
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.Connection"%>
<%@page import="oracle.jdbc.driver.OracleDriver"%>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!-- 处理登录请求 -->
<%
//网络中的数据传输使用的都是字节,字节转文字会出现乱码现象,所以需要修改一下请求中的字符编码
request.setCharacterEncoding("UTF-8");//修改请求中的字符编码
//获取来自于前端的数据
String username=request.getParameter("username");
String password=request.getParameter("password");
//导入驱动(sqlserver,oracle,mysql),一定要执行 build path,且需要导入对应的jar包
//OracleDriver
Class.forName("oracle.jdbc.driver.OracleDriver");//这里使用的是oracle的驱动
//编写连接语句
String URL="jdbc:oracle:thin:@localhost:1521:orcl";
//获得连接
Connection con=DriverManager.getConnection(URL, "scott", "tiger");
//获得预编译对象(执行对象)
String sql="SELECT * FROM TB_USER WHERE USE_NAME=? AND USE_PWD=?";
PreparedStatement ps=con.prepareStatement(sql);
ps.setString(1, username);
ps.setString(2,password);
//获得结果集
ResultSet rs=ps.executeQuery();
//做登录验证
if(rs.next()){
out.print("<script>alert('登录成功');location.href='news/index.jsp?userId="+userna