Java Jsp MVC+mysql实现的物资租赁管理系统(管理员管理 客户管理 建材管理 租赁管理 财务管理)

本文主要是介绍Java Jsp MVC+mysql实现的物资租赁管理系统(管理员管理 客户管理 建材管理 租赁管理 财务管理),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

博客目录

  • 物资租赁管理系统
    • 功能截图
    • 技术点介绍
    • 系统流程图
    • 源码
    • 写在最后

物资租赁管理系统

背景:
物资租赁站长期大量出租各型钢管、扣件、塔吊等建筑施工设备。针对租赁器材品种繁多,租赁搭配麻烦,费用计算复杂。这些问题难题导致公司运营盈利管理不清晰,以及人工负担重,租赁过程中容易出错等问题,急切需要一款满足自身需求的管理软件,以提高办公效率。

功能截图

主要实现的功能点:
管理员管理
客户管理
建材管理
租赁管理
财务管理

登录页面:
在这里插入图片描述
主页面:
在这里插入图片描述
客户列表界面:
在这里插入图片描述
添加客户页面:
在这里插入图片描述

技术点介绍

JDK:1.7
开发工具:MyEclipse
运行环境:Tomcat
数据库:MySQL

系统流程图

在这里插入图片描述

源码

1、Dao类:GoodsDao.java

package dao;import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;import bean.Bean;public class GoodsDAO extends DB {private Connection conn = null;private PreparedStatement pstmt = null;private ResultSet rs = null;public int add(Bean bean){try{conn = this.getConn();String sql = "insert into goods(name,money,num,description) " +"values(?,?,?,?) ";pstmt = conn.prepareStatement(sql);pstmt.setString(1, bean.getName());pstmt.setInt(2, bean.getMoney());pstmt.setInt(3, bean.getNum());pstmt.setString(4, bean.getDescription());return pstmt.executeUpdate();} catch (Exception e){// TODO Auto-generated catch blocke.printStackTrace();return 0;}finally{this.closeAll(conn, pstmt, rs);}}public int update(Bean bean,int id){try{conn = this.getConn();String sql = "update goods set name=?,money=?,num=?,description=?  where id=?";pstmt = conn.prepareStatement(sql);pstmt.setString(1, bean.getName());pstmt.setInt(2, bean.getMoney());pstmt.setInt(3, bean.getNum());pstmt.setString(4, bean.getDescription());pstmt.setInt(5, id);return pstmt.executeUpdate();} catch (Exception e){// TODO Auto-generated catch blocke.printStackTrace();return 0;}finally{this.closeAll(conn, pstmt, rs);}}public int updatenumj(int id){try{conn = this.getConn();String sql = "update goods set num = num-1  where id=?";pstmt = conn.prepareStatement(sql);pstmt.setInt(1, id);return pstmt.executeUpdate();} catch (Exception e){// TODO Auto-generated catch blocke.printStackTrace();return 0;}finally{this.closeAll(conn, pstmt, rs);}}public int updatenuma(int id){try{conn = this.getConn();String sql = "update goods set num = num+1  where id=?";pstmt = conn.prepareStatement(sql);pstmt.setInt(1, id);return pstmt.executeUpdate();} catch (Exception e){// TODO Auto-generated catch blocke.printStackTrace();return 0;}finally{this.closeAll(conn, pstmt, rs);}}public List<Bean> list(){List<Bean> list = new ArrayList<Bean>();	Bean bean = null;							try{conn = this.getConn();					String sql = "select * from goods ";pstmt = conn.prepareStatement(sql);		rs =  pstmt.executeQuery();				while (rs.next()){bean= new Bean();					bean.setId(rs.getInt("id"));bean.setName(rs.getString("name"));bean.setMoney(rs.getInt("money"));bean.setNum(rs.getInt("num"));bean.setDescription(rs.getString("description"));list.add(bean);}return list;		} catch (Exception e){e.printStackTrace();return null;	}finally{this.closeAll(conn, pstmt, rs);	}}public List<Bean> listit0(){List<Bean> list = new ArrayList<Bean>();	Bean bean = null;							try{conn = this.getConn();					String sql = "select * from goods where num > 0";pstmt = conn.prepareStatement(sql);		rs =  pstmt.executeQuery();				while (rs.next()){bean= new Bean();					bean.setId(rs.getInt("id"));bean.setName(rs.getString("name"));bean.setMoney(rs.getInt("money"));bean.setNum(rs.getInt("num"));bean.setDescription(rs.getString("description"));list.add(bean);}return list;		} catch (Exception e){e.printStackTrace();return null;	}finally{this.closeAll(conn, pstmt, rs);	}}public Bean edit(int id){Bean bean = null;							try{conn = this.getConn();					String sql = "select * from goods where id='"+ id +"' ";pstmt = conn.prepareStatement(sql);		rs =  pstmt.executeQuery();				while (rs.next()){bean= new Bean();					bean.setId(rs.getInt("id"));bean.setName(rs.getString("name"));bean.setMoney(rs.getInt("money"));bean.setNum(rs.getInt("num"));bean.setDescription(rs.getString("description"));}return bean;		} catch (Exception e){e.printStackTrace();return null;	}finally{this.closeAll(conn, pstmt, rs);	}}public List<Bean> search(String id){List<Bean> list = new ArrayList<Bean>();	Bean bean = null;							try{conn = this.getConn();					String sql = "select * from client where id= '"+ id +"'";pstmt = conn.prepareStatement(sql);		rs =  pstmt.executeQuery();				while (rs.next()){bean= new Bean();					bean.setId(rs.getInt("id"));bean.setName(rs.getString("name"));bean.setPhone(rs.getString("phone"));bean.setMail(rs.getString("mail"));bean.setScore(rs.getString("score"));bean.setType(rs.getString("type"));bean.setState(rs.getString("state"));bean.setDecision(rs.getString("decision"));list.add(bean);}return list;		} catch (Exception e){e.printStackTrace();return null;	}finally{this.closeAll(conn, pstmt, rs);	}}public int delete(int id){int i = 0;try{conn = this.getConn();String sql = "delete from goods where id = ?";pstmt = conn.prepareStatement(sql);pstmt.setInt(1, id);i = pstmt.executeUpdate();this.closeAll(conn, pstmt, rs);} catch (Exception e){e.printStackTrace();}return i;}}

ComplainDAO.java

package dao;import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;import bean.Bean;public class ComplainDAO extends DB {private Connection conn = null;private PreparedStatement pstmt = null;private ResultSet rs = null;public int add(Bean bean){try{conn = this.getConn();String sql = "insert into complain(name,content,time,phone) " +"values(?,?,?,?) ";pstmt = conn.prepareStatement(sql);pstmt.setString(1, bean.getName());pstmt.setString(2, bean.getContent());pstmt.setString(3, bean.getTime());pstmt.setString(4, bean.getPhone());return pstmt.executeUpdate();} catch (Exception e){// TODO Auto-generated catch blocke.printStackTrace();return 0;}finally{this.closeAll(conn, pstmt, rs);}}public int update(Bean bean,int id){try{conn = this.getConn();String sql = "update goods set name=?,score=?  where id=?";pstmt = conn.prepareStatement(sql);pstmt.setString(1, bean.getName());pstmt.setString(2, bean.getScore());pstmt.setInt(3, id);return pstmt.executeUpdate();} catch (Exception e){// TODO Auto-generated catch blocke.printStackTrace();return 0;}finally{this.closeAll(conn, pstmt, rs);}}public List<Bean> list(){List<Bean> list = new ArrayList<Bean>();	Bean bean = null;							try{conn = this.getConn();					String sql = "select * from complain ";pstmt = conn.prepareStatement(sql);		rs =  pstmt.executeQuery();				while (rs.next()){bean= new Bean();					bean.setId(rs.getInt("id"));bean.setName(rs.getString("name"));bean.setContent(rs.getString("content"));bean.setTime(rs.getString("time"));bean.setPhone(rs.getString("phone"));list.add(bean);}return list;		} catch (Exception e){e.printStackTrace();return null;	}finally{this.closeAll(conn, pstmt, rs);	}}public Bean edit(int id){Bean bean = null;							try{conn = this.getConn();					String sql = "select * from goods where id='"+ id +"' ";pstmt = conn.prepareStatement(sql);		rs =  pstmt.executeQuery();				while (rs.next()){bean= new Bean();					bean.setId(rs.getInt("id"));bean.setName(rs.getString("name"));bean.setScore(rs.getString("score"));}return bean;		} catch (Exception e){e.printStackTrace();return null;	}finally{this.closeAll(conn, pstmt, rs);	}}public List<Bean> search(String id){List<Bean> list = new ArrayList<Bean>();	Bean bean = null;							try{conn = this.getConn();					String sql = "select * from client where id= '"+ id +"'";pstmt = conn.prepareStatement(sql);		rs =  pstmt.executeQuery();				while (rs.next()){bean= new Bean();					bean.setId(rs.getInt("id"));bean.setName(rs.getString("name"));bean.setPhone(rs.getString("phone"));bean.setMail(rs.getString("mail"));bean.setScore(rs.getString("score"));bean.setType(rs.getString("type"));bean.setState(rs.getString("state"));bean.setDecision(rs.getString("decision"));list.add(bean);}return list;		} catch (Exception e){e.printStackTrace();return null;	}finally{this.closeAll(conn, pstmt, rs);	}}public int delete(int id){int i = 0;try{conn = this.getConn();String sql = "delete from complain where id = ?";pstmt = conn.prepareStatement(sql);pstmt.setInt(1, id);i = pstmt.executeUpdate();this.closeAll(conn, pstmt, rs);} catch (Exception e){e.printStackTrace();}return i;}}

2、业务处理Servlet:
GoodsServlet.java

package servlet;import java.io.IOException;
import java.io.PrintWriter;import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;import bean.Bean;
import dao.ClientDAO;
import dao.GoodsDAO;public class GoodsServlet extends HttpServlet {private static final long serialVersionUID = 1L;public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {doPost(request, response);}public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {response.setContentType("text/html; charset=UTF-8");request.setCharacterEncoding("utf-8");HttpSession session = request.getSession();PrintWriter out = response.getWriter();Bean bean = new Bean();GoodsDAO dao = new GoodsDAO();int kind = Integer.parseInt(request.getParameter("kind"));if (kind == 1) {String name = request.getParameter("name");int money = Integer.parseInt(request.getParameter("money"));int num = Integer.parseInt(request.getParameter("num"));String description = request.getParameter("description");bean.setName(name);bean.setMoney(money);bean.setNum(num);bean.setDescription(description);int i = dao.add(bean);if (i > 0) {out.print("<script>alert('操作成功!');location.href='admin/goods_add.jsp';</script>");} else {out.print("<script>alert('操作失败!');history.go(-1);</script>");}} else if (kind == 2) {int id = Integer.parseInt(request.getParameter("id"));String name = request.getParameter("name");int money = Integer.parseInt(request.getParameter("money"));int num = Integer.parseInt(request.getParameter("num"));String description = request.getParameter("description");bean.setName(name);bean.setMoney(money);bean.setNum(num);bean.setDescription(description);int i = dao.update(bean, id);if (i > 0) {out.print("<script>alert('操作成功!');location.href='admin/goods_edit.jsp?id="+ id + "';</script>");} else {out.print("<script>alert('操作失败!');history.go(-1);</script>");}} else if (kind == 3) {int id = Integer.parseInt(request.getParameter("id"));int i = dao.delete(id);if (i > 0) {out.print("<script>alert('操作成功!');location.href='admin/goods_list.jsp';</script>");} else {out.print("<script>alert('操作失败!');history.go(-1);</script>");}}}}

ComplainServlet.java

package servlet;import java.io.IOException;
import java.io.PrintWriter;
import java.text.SimpleDateFormat;
import java.util.Date;import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;import bean.Bean;
import dao.ComplainDAO;
import dao.GoodsDAO;public class ComplainServlet extends HttpServlet {private static final long serialVersionUID = 1L;public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {doPost(request, response);}public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {response.setContentType("text/html; charset=UTF-8");request.setCharacterEncoding("utf-8");HttpSession session = request.getSession();PrintWriter out = response.getWriter();Bean bean = new Bean();ComplainDAO dao = new ComplainDAO();int kind = Integer.parseInt(request.getParameter("kind"));if (kind == 1) {String name = request.getParameter("name");String phone = request.getParameter("phone");String content = request.getParameter("content");SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");String time = sd.format(new Date());bean.setName(name);bean.setPhone(phone);bean.setContent(content);bean.setTime(time);int i = dao.add(bean);if (i > 0) {out.print("<script>alert('操作成功!');location.href='admin/complain_add.jsp';</script>");} else {out.print("<script>alert('操作失败!');history.go(-1);</script>");}} else if (kind == 2) {int id = Integer.parseInt(request.getParameter("id"));String name = request.getParameter("name");String score = request.getParameter("score");bean.setName(name);bean.setScore(score);int i = dao.update(bean, id);if (i > 0) {out.print("<script>alert('操作成功!');location.href='admin/goods_edit.jsp?id="+ id + "';</script>");} else {out.print("<script>alert('操作失败!');history.go(-1);</script>");}} else if (kind == 3) {int id = Integer.parseInt(request.getParameter("id"));int i = dao.delete(id);if (i > 0) {out.print("<script>alert('操作成功!');location.href='admin/complain_list.jsp';</script>");} else {out.print("<script>alert('操作失败!');history.go(-1);</script>");}}}}

写在最后

需要全部源码和详细文档,可以加博主V交流(Code2Life2)

这篇关于Java Jsp MVC+mysql实现的物资租赁管理系统(管理员管理 客户管理 建材管理 租赁管理 财务管理)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/383792

相关文章

分布式锁在Spring Boot应用中的实现过程

《分布式锁在SpringBoot应用中的实现过程》文章介绍在SpringBoot中通过自定义Lock注解、LockAspect切面和RedisLockUtils工具类实现分布式锁,确保多实例并发操作... 目录Lock注解LockASPect切面RedisLockUtils工具类总结在现代微服务架构中,分布

Java使用Thumbnailator库实现图片处理与压缩功能

《Java使用Thumbnailator库实现图片处理与压缩功能》Thumbnailator是高性能Java图像处理库,支持缩放、旋转、水印添加、裁剪及格式转换,提供易用API和性能优化,适合Web应... 目录1. 图片处理库Thumbnailator介绍2. 基本和指定大小图片缩放功能2.1 图片缩放的

Spring Boot集成/输出/日志级别控制/持久化开发实践

《SpringBoot集成/输出/日志级别控制/持久化开发实践》SpringBoot默认集成Logback,支持灵活日志级别配置(INFO/DEBUG等),输出包含时间戳、级别、类名等信息,并可通过... 目录一、日志概述1.1、Spring Boot日志简介1.2、日志框架与默认配置1.3、日志的核心作用

Python使用Tenacity一行代码实现自动重试详解

《Python使用Tenacity一行代码实现自动重试详解》tenacity是一个专为Python设计的通用重试库,它的核心理念就是用简单、清晰的方式,为任何可能失败的操作添加重试能力,下面我们就来看... 目录一切始于一个简单的 API 调用Tenacity 入门:一行代码实现优雅重试精细控制:让重试按我

破茧 JDBC:MyBatis 在 Spring Boot 中的轻量实践指南

《破茧JDBC:MyBatis在SpringBoot中的轻量实践指南》MyBatis是持久层框架,简化JDBC开发,通过接口+XML/注解实现数据访问,动态代理生成实现类,支持增删改查及参数... 目录一、什么是 MyBATis二、 MyBatis 入门2.1、创建项目2.2、配置数据库连接字符串2.3、入

Springboot项目启动失败提示找不到dao类的解决

《Springboot项目启动失败提示找不到dao类的解决》SpringBoot启动失败,因ProductServiceImpl未正确注入ProductDao,原因:Dao未注册为Bean,解决:在启... 目录错误描述原因解决方法总结***************************APPLICA编

深度解析Spring Security 中的 SecurityFilterChain核心功能

《深度解析SpringSecurity中的SecurityFilterChain核心功能》SecurityFilterChain通过组件化配置、类型安全路径匹配、多链协同三大特性,重构了Spri... 目录Spring Security 中的SecurityFilterChain深度解析一、Security

MySQL中EXISTS与IN用法使用与对比分析

《MySQL中EXISTS与IN用法使用与对比分析》在MySQL中,EXISTS和IN都用于子查询中根据另一个查询的结果来过滤主查询的记录,本文将基于工作原理、效率和应用场景进行全面对比... 目录一、基本用法详解1. IN 运算符2. EXISTS 运算符二、EXISTS 与 IN 的选择策略三、性能对比

MySQL常用字符串函数示例和场景介绍

《MySQL常用字符串函数示例和场景介绍》MySQL提供了丰富的字符串函数帮助我们高效地对字符串进行处理、转换和分析,本文我将全面且深入地介绍MySQL常用的字符串函数,并结合具体示例和场景,帮你熟练... 目录一、字符串函数概述1.1 字符串函数的作用1.2 字符串函数分类二、字符串长度与统计函数2.1

Redis客户端连接机制的实现方案

《Redis客户端连接机制的实现方案》本文主要介绍了Redis客户端连接机制的实现方案,包括事件驱动模型、非阻塞I/O处理、连接池应用及配置优化,具有一定的参考价值,感兴趣的可以了解一下... 目录1. Redis连接模型概述2. 连接建立过程详解2.1 连php接初始化流程2.2 关键配置参数3. 最大连