基于Web的停车场管理系统(Java)
目录
一、系统介绍
1.开发的环境
开发工具:IntelliJ IDEA 2022
JDK版本:1.8
数据库:MySQL 8.0
数据库管理软件:Navicat 15.0.27
服务器:apach-tomcat-9.0.68
2.本系统实现的功能
基于Web停车场管理系统主要用于实现停车场相关信息管理,基本功能包括:系统信息管理模块、车位信息管理模块、IC卡信息管理模块、固定车主停车管理模块、临时车辆信息管理模块、系统功能操模块等。本系统结构如下:
(1)系统信息管理模块:角色的增加、删除、修改和查询;用户的增加、删除、修改和查询。
(2)车位信息管理模块:车位信息的增加、删除、修改和查询。
(3)IC卡信息管理模块:IC卡信息的增加、删除、修改和查询。
(4)固定车主停车管理模块:对固定车主的停车信息进行增加、删除、修改和查询
(5)临时车辆信息管理模块:对临时车辆的停车信息进行增加、删除、修改、查询和打印
(6)系统功能操模块:退出登陆、修改密码。
3.数据库用到的表
card, fixed, role, seat, temp, user
4.工程截图
二、系统展示
1、登录页面
2、首页
3、系统信息管理模块
4、车位信息管理模块
5、IC卡信息管理模块
6、固定车主停车管理模块
7、临时车主停车管理模块
8、系统功能操作模块
三、部分代码展示
1、Index.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" errorPage="_Error.jsp"%>
<%
String path = request.getContextPath();//获取项目名称
%>
<!doctype html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>智能化停车场管理系统</title>
<link href="<%=path %>/Style/Index.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="<%=path %>/Script/jquery-1.10.1.js"></script>
<script type="text/javascript" src="<%=path %>/Script/Index.js"></script>
</head>
<body>
<%-- 判断uName是否存在,如何不存在则证明非登录操作,跳转至登录页面 --%>
<% if (session.getAttribute("user_name") == null ) {%>
<jsp:forward page="Login.jsp" ></jsp:forward>
<% } %>
<!--header-->
<div class="header">
<div class="header_logo">
智能化停车场管理系统
</div>
<%--
<div class="func">
<ul>
<li class="li_func1"><a href="<%=path %>/Common/ChagePwd.jsp" target="mainFrame">修改密码</a></li>
<li class="li_func2"><a href="<%=path %>/Common/UserInfo.jsp" target="mainFrame">用户信息</a></li>
<li class="li_func3"><a href="<%=path %>/Common/Logout.jsp">退出系统</a></li>
</ul>
</div>
--%>
</div>
<div class="wrap">
<ul class="siderbar">
<%
if(session.getAttribute("role_id").toString().equals("r001"))
{
%>
<li><span>系统信息管理</span>
<ul>
<li><a href="<%=path %>/Admin/RoleAdd.jsp" target="mainFrame">添加角色信息</a></li>
<li><a href="<%=path %>/RoleHandle?type=4" target="mainFrame">管理角色信息</a></li>
<li><a href="<%=path %>/Admin/UserAdd.jsp" target="mainFrame">添加用户信息</a></li>
<li><a href="<%=path %>/UserHandle?type=4" target="mainFrame">管理用户信息</a></li>
</ul>
</li>
<li><span>车位信息管理</span>
<ul>
<li><a href="<%=path %>/Admin/SeatAdd.jsp" target="mainFrame">添加车位信息</a></li>
<li><a href="<%=path %>/SeatHandle?type=4" target="mainFrame">管理车位信息</a></li>
</ul>
</li>
<li><span>IC卡信息管理</span>
<ul>
<li><a href="<%=path %>/Admin/CardAdd.jsp" target="mainFrame">添加IC卡类型</a></li>
<li><a href="<%=path %>/CardHandle?type=4" target="mainFrame">管理IC卡类型</a></li>
</ul>
</li>
<li><span>固定车主停车管理</span>
<ul>
<li><a href="<%=path %>/FixedHandle?type=6" target="mainFrame">出入场设置</a></li>
<li><a href="<%=path %>/FixedHandle?type=4" target="mainFrame">停车信息管理</a></li>
</ul>
</li>
<li><span>临时车辆停车管理</span>
<ul>
<li><a href="<%=path %>/Admin/TempAdd.jsp" target="mainFrame">车主入场信息</a></li>
<li><a href="<%=path %>/TempHandle?type=4" target="mainFrame">车主出场信息</a></li>
</ul>
</li>
<li><span>系统功能操作</span>
<ul>
<li><a href="<%=path %>/Common/ChagePwd.jsp" target="mainFrame">修改密码</a></li>
<li><a href="<%=path %>/Common/Logout.jsp">退出系统</a></li>
</ul>
</li>
<%
}
else
{
%>
<p>留言信息管理</p>
<div>
<a href="<%=path %>/User/MsgAdd.jsp" target="mainFrame">添加留言信息</a>
<a href="<%=path %>/MsgHandle?type=4" target="mainFrame">管理留言信息</a>
</div>
<li><span>系统功能操作</span>
<div>
<a href="<%=path %>/Common/ChagePwd.jsp" target="mainFrame">修改密码</a>
<a href="<%=path %>/Common/UserInfo.jsp" target="mainFrame">个人信息</a>
<a href="<%=path %>/Common/Logout.jsp">退出系统</a>
</div>
<%
}
%>
</ul>
<div class="content">
<iframe width="99%" height="100%" name="mainFrame" frameborder="0" >
</iframe>
</div>
</div>
<div class="footer"></div>
</body>
</html>
2、Login.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();//获取项目名称
%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>欢迎登陆</title>
<link rel="stylesheet" type="text/css" href="<%=path %>/Style/Login.css" />
<script type="text/javascript" src="Script/jquery-1.10.1.js"></script>
<script type="text/javascript">
$(function()
{
$(document).on("click",".a_reg",function()
{
$(".model").fadeIn();
});
$(document).on("click",".a_close",function()
{
$(".model").fadeOut();
});
});
function checkPwd()
{
if($("[name=user_pwd1]").val()!=$("[name=re_pwd]").val())
{
alert("两次输入密码不一致~~~");
return false;
}
else
{
return true;
}
};
</script>
</head>
<body>
<div class="wrapLogin">
<div class="loginPanel">
<form action="<%=path %>/LoginHandle" method="post">
<h2>智能化停车场管理系统</h2>
<p><label>用名:</label><input type="text" name="user_id" value="Sadmin" /></p>
<p><label>密码:</label><input type="password" name="user_pwd" value="123456" /></p>
<p class="btn"><input type="submit" class="btnLogin" value="登陆" /><input type="button" class="btnCancel" value="重置" /></p>
</form>
</div>
</div>
<!-- loginPanel End -->
</body>
</html>
3、Login.java
package DAL;
import DBUtil.SQLUtil;
public class Login {
//检测用户登录信息是否合法,合法这返回true
public boolean checkLogin(String user_id,String user_pwd)
{
String sqlCmd="select count(*) from user where user_id=? and user_pwd=?";//要执行的查询T-SQL命令
Object[] objList=new Object[2];//对象数组,用来作为?参数的容器
objList[0]=user_id;
objList[1]=user_pwd;
String result=SQLUtil.excuteScalar(sqlCmd,objList).toString();//执行带参数查询
if(result.equals("1"))
{
return true;
}
else {
return false;
}
}
//根据用户Id获取用户名
public String getName(String user_id)
{
String sqlCmd="select user_name from user where user_id='"+user_id+"'";
String result=SQLUtil.excuteScalar(sqlCmd, null).toString();
return result;
}
//获取用户等级(角色Id)信息
public String getSysLevel(String user_id)
{
String sqlCmd="select role_id from user where user_id='"+user_id+"'";
String result=SQLUtil.excuteScalar(sqlCmd, null).toString();
return result;
}
}
4、User.java
package DAL;
import java.util.*;
import DBUtil.SQLUtil;
public class User {
//获取用户表信息列表
public List<Object> getEntity()
{
String sqlCmd="select *from User";
return DBUtil.SQLUtil.executeQuery(sqlCmd, null);//执行查询操作executeQuery
}
//获取分页后用户表信息列表
public List<Object> getEntity(int page)
{
int size=(page-1)*15;
String sqlCmd="select *from V_User limit "+size+",15";
return DBUtil.SQLUtil.executeQuery(sqlCmd, null);//执行查询操作executeQuery
}
//根据查询条件sqlWhere获取分页后用户表信息列表
public List<Object> getEntityByWhere(String sqlWhere,int page)
{
int size=(page-1)*15;
String sqlCmd="select *from V_User where "+sqlWhere+" limit "+ size+",15";
return DBUtil.SQLUtil.executeQuery(sqlCmd, null);//执行查询操作executeQuery
}
//删除用户表信息
public int deleteEntity(String user_id)
{
String sqlCmd="delete from User where user_id='"+user_id+"'";
return DBUtil.SQLUtil.executeNonQuery(sqlCmd, null);//执行非查询操作executeNonQuery
}
//根据用户表编号获取用户表信息
public List<Object> getEntityById(String user_id)
{
String sqlCmd="select *From V_User where user_id='"+user_id+"'";
return DBUtil.SQLUtil.executeQuery(sqlCmd, null);//执行查询操作executeQuery
}
//更新用户表信息
public int updateEntity(String user_id,String role_id,String user_name,String real_name,String user_pwd,String user_phone)
{
String sqlCmd="Update User set role_id='" + role_id + "',user_name='" + user_name + "',real_name='" + real_name + "',user_pwd='" + user_pwd + "',user_phone='" + user_phone + "' where user_id='"+user_id+"'";
return SQLUtil.executeNonQuery(sqlCmd, null);
}
//插入用户表信息
public int insertEntity(String user_id,String role_id,String user_name,String real_name,String user_pwd,String user_phone)
{
String sqlCmd="Insert into User values('" + user_id + "','" + role_id + "','" + user_name + "','" + real_name + "','" + user_pwd + "','"+user_phone+"')";
return SQLUtil.executeNonQuery(sqlCmd, null);
}
//检查插入主键是否重复
public boolean checkExist(String user_id)
{
String sqlCmd="select count(*) from V_User where user_id='"+user_id+"'";
if(1==Integer.parseInt(SQLUtil.excuteScalar(sqlCmd, null).toString()) )
{
return true;
}
return false;
}
//获取分页总数
public Object getPageCount()
{
String sqlCmd="SELECT CEIL( COUNT(*)/15.0) FROM V_User ";
return SQLUtil.excuteScalar(sqlCmd, null);
}
//根据查询条件获取分页总数
public Object getPageCountByWhere(String sqlWhere)
{
String sqlCmd="SELECT CEIL( COUNT(*)/15.0) FROM V_User where "+sqlWhere;
return SQLUtil.excuteScalar(sqlCmd, null);
}
//检查插入密码是否输入正确(改密码)
public boolean checkPwd(String UserId,String pwd)
{
String sqlCmd="select count(*) from V_User where user_id='"+UserId+"' and user_pwd='"+pwd+"'";
if(1==Integer.parseInt(SQLUtil.excuteScalar(sqlCmd, null).toString()) )
{
return true;
}
return false;
}
//检查插入密码是否输入正确(改密码)
public boolean updataPwd(String UserId,String pwd)
{
String sqlCmd="Update user set user_pwd='"+pwd+"' where user_id='"+UserId+"'";
if(SQLUtil.executeNonQuery(sqlCmd, null)==1)
{
return true;
}
return false;
}
}
五、申明
本项目来自北京尚学堂机构的分享。发布于此,仅供交流学习。
如有侵权请联系我删除!!!
六、源码获取
链接:https://pan.baidu.com/s/1XeqtRnYVqKjXO5q0g9M6Dw
一键三连(点赞、关注加收藏)再私信博主,即可获取提取码!(如果回复不及时,请谅解)
祝大家学业有成!