需要的联系QQ:2248557717(收费的)

项目演示地址:演示地址【已经过期,没钱续费】

这是我们javaweb的课程设计,历时2周完成

设计思想

该系统采用了B/S架构,Tomcat9.0作为运行服务yanshi器,基于javaEE标准,以IntelliJ IDEA作为开发环境,数据库采用了MySQL8.0。开发过程利用了MVC开发模式和JSP+JavaBean+Servlet开发模式,该模式便于开发人员设计代码和后期维护,且这三个逻辑可以同时进行,提高了效率,节省了时间,层次分明,结构清晰。

登陆界面

主界面




核心代码

SQLUtil类

package DBUtil;
import java.sql.*;
import java.util.ArrayList;
import java.util.List;
public class SQLUtil {//执行非查询语句(delete、update、insert)public static int executeNonQuery(String sqlCmd, Object[] objList) {Connection conn = null;//数据库连接对象Statement sm = null;//可执行sql语句的Statement对象int result = -1;//返回结果,-1为数据操作失败,非-1为操作成功try {conn = DBUtil.ConnectionFactory.getConnection();//获取数据库连接对象if (objList != null)//判断是否有传入参数(也就是判断 Object[] objList 是否为空){PreparedStatement pStatement = conn.prepareStatement(sqlCmd);//创建可执行带参数SQL命令 pStatement对象//对参数进行赋值for (int i = 0; i < objList.length; i++) {pStatement.setObject(i + 1, objList[i]);//获取传入参数的值}result = pStatement.executeUpdate();//执行相应命令} else {//采用字符串拼接方式conn = DBUtil.ConnectionFactory.getConnection();//获取数据库连接对象sm = conn.createStatement();//创建可执行sql语句的Statement对象result = sm.executeUpdate(sqlCmd);//执行相应sql命令,返回更新的条数}} catch (Exception e) {e.printStackTrace();} finally {DBUtil.CloseFactory.close(conn, sm);//关闭相应资源return result;//如果操作成功,返回的是被影响的行数,否则返回-1,操作失败}}@SuppressWarnings("finally")//执行查询操作 返回List型的数据集合   (如select *from table/select name,age from table)public static List<Object> executeQuery(String sqlCmd, Object[] objList) {Connection conn = null;Statement sm = null;ResultSet rSet = null;List<Object> list = new ArrayList<Object>();try {conn = DBUtil.ConnectionFactory.getConnection();//获取数据库连接对象if (objList != null)//判断是否有参数传入{PreparedStatement pStatement = conn.prepareStatement(sqlCmd);//生成PreparedStatement,用于执行T-SQL命令for (int i = 0; i < objList.length; i++) {pStatement.setObject(i + 1, objList[i]);//填充占位符}rSet = pStatement.executeQuery();//执行查询命令,返回ResultSetResultSetMetaData rsmdData = rSet.getMetaData();//得到结果集的结构信息int column = rsmdData.getColumnCount();//获取返回的单条数据的字段数目while (rSet.next()) {Object[] object = new Object[column];//对象数值,用于作为获取单条数据的载体for (int i = 1; i <= column; i++) {object[i - 1] = rSet.getObject(i);}list.add(object);//将获取的数据添加到集合中}} else {System.out.println("我进入空的之中了");//conn=DBUtil.ConnectionFactory.getConnection();//获取数据库连接对象sm = conn.createStatement();//创建Statement对象rSet = sm.executeQuery(sqlCmd);//执行查询查询命令System.out.println("rSet =" + rSet);ResultSetMetaData rsmdData = rSet.getMetaData();int column = rsmdData.getColumnCount();//获取单条数据中属性个数(如 select name,age from employee)属性为:name,agewhile (rSet.next()) {Object[] object = new Object[column];for (int i = 1; i <= column; i++) {object[i - 1] = rSet.getObject(i);}list.add(object);//将相应数据添加到集合中}}} catch (Exception e) {e.printStackTrace();list = null;} finally {DBUtil.CloseFactory.close(conn, sm, rSet);return list;}}//执行标量操作,返回首行首列的数据   select count(*) from table/select name from tablepublic static Object excuteScalar(String sqlCmd, Object[] objList) {Connection conn = null;Statement sm = null;ResultSet rSet = null;Object obj = null;try {conn = DBUtil.ConnectionFactory.getConnection();if (objList != null) {PreparedStatement pStatement = conn.prepareStatement(sqlCmd);for (int i = 0; i < objList.length; i++) {pStatement.setObject(i + 1, objList[i]);//给SQL语句的占位符赋值的,}rSet = pStatement.executeQuery();while (rSet.next()) {obj = rSet.getObject(1);break;}} else {conn = DBUtil.ConnectionFactory.getConnection();sm = conn.createStatement();rSet = sm.executeQuery(sqlCmd);while (rSet.next()) {obj = rSet.getObject(1);break;}}} catch (Exception e) {e.printStackTrace();} finally {CloseFactory.close(conn, sm, rSet);return obj;}}
}

ConnectionFactory类

package DBUtil;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.util.Properties;
public class ConnectionFactory {private static String user;private static String pwd;private static String url;private static String driver;static {InputStream iStream = ConnectionFactory.class.getClassLoader().getResourceAsStream("DBUtil/db.properties");//读取db.properties配置文件Properties prop = new Properties();try {prop.load(iStream);user = prop.getProperty("user");//获取配置文件中的user对应的值pwd = prop.getProperty("pwd");//获取配置文件中的pwd对应的值url = prop.getProperty("url");//获取配置文件中的url对应的值driver = prop.getProperty("driver");//获取配置文件中的driver对应的值} catch (Exception e) {e.printStackTrace();}}public static Connection getConnection() {Connection conn = null;try {Class.forName(driver);//数据库驱动注册conn = DriverManager.getConnection(url, user, pwd);//获取数据库链接对象} catch (Exception e) {e.printStackTrace();}return conn;}
}

CloseFactory类

package DBUtil;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
//方法重载
public class CloseFactory {//关闭Connection conn,Statement smpublic static void close(Connection conn, Statement sm) {close(conn);close(sm);}//关闭Connection conn,Statement sm,ResultSet rspublic static void close(Connection conn, Statement sm, ResultSet rs) {close(conn);close(sm);close(rs);}//关闭数据库链接对象public static void close(Connection conn) {try {if (conn != null) {conn.close();}} catch (Exception e) {e.printStackTrace();}}//关闭Statement对象public static void close(Statement sm) {try {if (sm != null) {sm.close();}} catch (Exception e) {e.printStackTrace();}}//关闭ResultSet对象public static void close(ResultSet rs) {try {if (rs != null) {rs.close();}} catch (Exception e) {e.printStackTrace();}}}

db.properties保存用于数据库连接的文件

user=root
pwd=1855010107
url=jdbc:mysql://127.0.0.1:3306/park_car?serverTimezone=GMT%2B8
driver=com.mysql.cj.jdbc.Driver

数据库设计

用户表:存储用户信息。


角色表:存储角色信息。‘


车位管理表:管理车位信息和车位状态。


车辆记录表:记录车辆进出信息和消费记录。

javaweb实现停车场收费管理系统相关推荐

  1. 计算机毕业论文java毕业设计选题基于javaweb的停车场收费管理系统[包运行成功]

  2. java停车管理系统中期检查_java毕业设计_springboot框架的停车场收费管理系统

    这是一个基于java的毕业设计项目,毕设课题为springboot框架的停车场收费管理系统, 是一个采用b/s结构的javaweb项目, 开发工具eclipsei/eclipse, 项目框架jsp+s ...

  3. winform停车场收费管理系统VS开发sqlserver数据库CS结构c#编程源码程序

    一.源码特点        winform停车场收费管理系统是一套完善的桌面程序,设计管理系统,系统具有完整的代码数据库,系统主要采用B/S模式开发. 应用技术:winform c#+sqlserve ...

  4. [附源码]java毕业设计停车场收费管理系统

    项目运行 环境配置: Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclis ...

  5. 停车场收费管理系统/停车场管理系统的设计与实现

    目 录 摘  要 ABSTRACT 目 录 第1章 绪论 1.1背景及意义 1.2 国内外研究概况 1.3 研究的内容 第2章 相关技术 2.1 JSP技术介绍 2.2 SSM三大框架 2.3 MyE ...

  6. JAVA计算机毕业设计停车场收费管理系统(附源码、数据库)

    JAVA计算机毕业设计停车场收费管理系统(附源码.数据库) 目运行 环境项配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webstorm也行)+ Eclispe ...

  7. [附源码]SSM计算机毕业设计停车场收费管理系统JAVA

    项目运行 环境配置: Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclis ...

  8. 基于Java Web的智能停车场收费管理系统

    大家好,最近在网上又找到了一个学习项目,在此写一篇博文记录一下,在java项目的专栏中我会持 续的更新在网上获取到的java学习项目,这个专栏是我的项目收集专栏吧.在博文中我也会陆续的加入项目的演示视 ...

  9. java-php-python-ssm停车场收费管理系统计算机毕业设计

    java-php-python-ssm停车场收费管理系统计算机毕业设计 java-php-python-ssm停车场收费管理系统计算机毕业设计 本源码技术栈: 项目架构:B/S架构 开发语言:Java ...

最新文章

  1. arcengine遍历属性表_【程序之坑】小程序云开发导出数据到excel表
  2. 比可微架构搜索DARTS快10倍,第四范式提出优化NAS算法
  3. load generator 与ip Spoofer的区别
  4. 73 Zabbix 微信告警
  5. Python_day4
  6. c#中的socket(tcp)
  7. JavaScript中的逗号运算符
  8. excel二次开发c语言,用VBA进行Excel二次开发
  9. ASP.NET--邮件发送
  10. Linux 查看网络速率
  11. 2021华为软挑赛题_思路分析——实时更新,做多少更多少(七)
  12. Java 员工信息管理系统
  13. 汇编版|电子印章在各类业务文件中的应用
  14. 【LOL】小龙刷新机制
  15. Delphi 简体 繁体 转换
  16. 【蓝桥杯】真题训练 2014年C++A组 题4 史丰收速算
  17. 基于hyperleger fabric区块链的校园化妆品交易平台搭建
  18. 2022年危险化学品经营单位安全管理人员考试模拟100题及模拟考试
  19. 上升沿判断语句_股票上升趋势中回调买入技巧,强势股顺势横盘突破买入法
  20. [从头读历史] 第257节 孔子和他的《春秋》 [BC537至BC479]

热门文章

  1. Java集合框架底层源码
  2. 京东图片搜索API接口-(item_search_img-按图搜索京东商品API接口),以图搜商品接口
  3. MTPay:第三方支付概述
  4. 电影分区发行促进民族电影创作
  5. 分布式ID生成算法——leaf算法
  6. 【基础2】数据库XK,Sales,建库建表插入信息实例
  7. [附源码]Python计算机毕业设计仿咸鱼二手物品交易系统
  8. 解决微信小程序实时视频、直播插件 主播意外掉线再进入,观众端卡住断流,无法刷新的问题
  9. linux --- 5. nginx 初始
  10. 明胶加工生产存有小气泡运用食品明胶用消泡剂来解决!