jsp仓库设备管理系统简单代码

首页/常见问题/设备管理系统/jsp仓库设备管理系统简单代码
作者:设备系统发布时间:2024-08-23 09:50浏览量:9418
logo
织信企业级低代码开发平台
提供表单、流程、仪表盘、API等功能,非IT用户可通过设计表单来收集数据,设计流程来进行业务协作,使用仪表盘来进行数据分析与展示,IT用户可通过API集成第三方系统平台数据。
免费试用

要开发一个简单的JSP仓库设备管理系统,核心步骤包括:数据库设计、JSP页面编写、Servlet编写、以及与数据库的连接和操作。本文将详细介绍如何实现这些步骤,并为你提供一些示例代码。

一、数据库设计与配置

在开始编写代码之前,首先需要设计数据库。可以使用MySQL数据库来存储设备信息。创建一个名为warehouse_management的数据库,并在其中创建一个名为equipment的表。该表包含以下字段:

CREATE DATABASE warehouse_management;

USE warehouse_management;

CREATE TABLE equipment (

id INT AUTO_INCREMENT PRIMARY KEY,

name VARCHAR(100) NOT NULL,

type VARCHAR(100) NOT NULL,

quantity INT NOT NULL,

location VARCHAR(100) NOT NULL

);

这个表将存储设备的ID、名称、类型、数量和位置等信息。

二、配置JSP页面

在Web应用程序中,我们将使用JSP页面来显示和管理设备信息。首先创建一个名为index.jsp的文件,用于显示设备列表:

<%@ page language="java" contentType="text/html; charset=UTF-8"

pageEncoding="UTF-8"%>

<%@ page import="java.sql.*, java.util.*" %>

<!DOCTYPE html>

<html>

<head>

<title>仓库设备管理系统</title>

</head>

<body>

<h1>设备列表</h1>

<table border="1">

<tr>

<th>ID</th>

<th>名称</th>

<th>类型</th>

<th>数量</th>

<th>位置</th>

</tr>

<%

Connection conn = null;

Statement stmt = null;

ResultSet rs = null;

try {

Class.forName("com.mysql.jdbc.Driver");

conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/warehouse_management", "root", "password");

stmt = conn.createStatement();

rs = stmt.executeQuery("SELECT * FROM equipment");

while(rs.next()) {

%>

<tr>

<td><%= rs.getInt("id") %></td>

<td><%= rs.getString("name") %></td>

<td><%= rs.getString("type") %></td>

<td><%= rs.getInt("quantity") %></td>

<td><%= rs.getString("location") %></td>

</tr>

<%

}

} catch(Exception e) {

e.printStackTrace();

} finally {

if(rs != null) rs.close();

if(stmt != null) stmt.close();

if(conn != null) conn.close();

}

%>

</table>

<a href="addEquipment.jsp">添加设备</a>

</body>

</html>

这个页面将从数据库中检索设备信息并以表格形式显示。

三、添加设备功能

为了添加设备,需要创建一个名为addEquipment.jsp的文件:

<%@ page language="java" contentType="text/html; charset=UTF-8"

pageEncoding="UTF-8"%>

<!DOCTYPE html>

<html>

<head>

<title>添加设备</title>

</head>

<body>

<h1>添加新设备</h1>

<form action="addEquipmentServlet" method="post">

名称: <input type="text" name="name"><br>

类型: <input type="text" name="type"><br>

数量: <input type="number" name="quantity"><br>

位置: <input type="text" name="location"><br>

<input type="submit" value="添加">

</form>

</body>

</html>

这个页面包含一个表单,用户可以在其中输入新设备的信息。

四、Servlet编写

创建一个名为AddEquipmentServlet的Servlet来处理表单提交并将设备信息插入数据库:

import java.io.IOException;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.PreparedStatement;

import javax.servlet.ServletException;

import javax.servlet.annotation.WebServlet;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

@WebServlet("/addEquipmentServlet")

public class AddEquipmentServlet extends HttpServlet {

private static final long serialVersionUID = 1L;

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

String name = request.getParameter("name");

String type = request.getParameter("type");

int quantity = Integer.parseInt(request.getParameter("quantity"));

String location = request.getParameter("location");

Connection conn = null;

PreparedStatement pstmt = null;

try {

Class.forName("com.mysql.jdbc.Driver");

conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/warehouse_management", "root", "password");

String sql = "INSERT INTO equipment (name, type, quantity, location) VALUES (?, ?, ?, ?)";

pstmt = conn.prepareStatement(sql);

pstmt.setString(1, name);

pstmt.setString(2, type);

pstmt.setInt(3, quantity);

pstmt.setString(4, location);

pstmt.executeUpdate();

} catch(Exception e) {

e.printStackTrace();

} finally {

if(pstmt != null) try { pstmt.close(); } catch(Exception e) {}

if(conn != null) try { conn.close(); } catch(Exception e) {}

}

response.sendRedirect("index.jsp");

}

}

这个Servlet将接受表单数据,并将其插入到数据库中,然后重定向回设备列表页面。

五、更新与删除设备

为了实现设备的更新和删除功能,需要分别创建updateEquipment.jspdeleteEquipmentServlet

updateEquipment.jsp页面:

<%@ page language="java" contentType="text/html; charset=UTF-8"

pageEncoding="UTF-8"%>

<%@ page import="java.sql.*" %>

<!DOCTYPE html>

<html>

<head>

<title>更新设备</title>

</head>

<body>

<h1>更新设备信息</h1>

<%

int id = Integer.parseInt(request.getParameter("id"));

Connection conn = null;

PreparedStatement pstmt = null;

ResultSet rs = null;

String name = "", type = "", location = "";

int quantity = 0;

try {

Class.forName("com.mysql.jdbc.Driver");

conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/warehouse_management", "root", "password");

String sql = "SELECT * FROM equipment WHERE id = ?";

pstmt = conn.prepareStatement(sql);

pstmt.setInt(1, id);

rs = pstmt.executeQuery();

if(rs.next()) {

name = rs.getString("name");

type = rs.getString("type");

quantity = rs.getInt("quantity");

location = rs.getString("location");

}

} catch(Exception e) {

e.printStackTrace();

} finally {

if(rs != null) rs.close();

if(pstmt != null) pstmt.close();

if(conn != null) conn.close();

}

%>

<form action="updateEquipmentServlet" method="post">

<input type="hidden" name="id" value="<%= id %>">

名称: <input type="text" name="name" value="<%= name %>"><br>

类型: <input type="text" name="type" value="<%= type %>"><br>

数量: <input type="number" name="quantity" value="<%= quantity %>"><br>

位置: <input type="text" name="location" value="<%= location %>"><br>

<input type="submit" value="更新">

</form>

</body>

</html>

UpdateEquipmentServlet代码:

import java.io.IOException;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.PreparedStatement;

import javax.servlet.ServletException;

import javax.servlet.annotation.WebServlet;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

@WebServlet("/updateEquipmentServlet")

public class UpdateEquipmentServlet extends HttpServlet {

private static final long serialVersionUID = 1L;

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

int id = Integer.parseInt(request.getParameter("id"));

String name = request.getParameter("name");

String type = request.getParameter("type");

int quantity = Integer.parseInt(request.getParameter("quantity"));

String location = request.getParameter("location");

Connection conn = null;

PreparedStatement pstmt = null;

try {

Class.forName("com.mysql.jdbc.Driver");

conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/warehouse_management", "root", "password");

String sql = "UPDATE equipment SET name = ?, type = ?, quantity = ?, location = ? WHERE id = ?";

pstmt = conn.prepareStatement(sql);

pstmt.setString(1, name);

pstmt.setString(2, type);

pstmt.setInt(3, quantity);

pstmt.setString(4, location);

pstmt.setInt(5, id);

pstmt.executeUpdate();

} catch(Exception e) {

e.printStackTrace();

} finally {

if(pstmt != null) try { pstmt.close(); } catch(Exception e) {}

if(conn != null) try { conn.close(); } catch(Exception e) {}

}

response.sendRedirect("index.jsp");

}

}

DeleteEquipmentServlet代码:

import java.io.IOException;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.PreparedStatement;

import javax.servlet.ServletException;

import javax.servlet.annotation.WebServlet;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

@WebServlet("/deleteEquipmentServlet")

public class DeleteEquipmentServlet extends HttpServlet {

private static final long serialVersionUID = 1L;

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

int id = Integer.parseInt(request.getParameter("id"));

Connection conn = null;

PreparedStatement pstmt = null;

try {

Class.forName("com.mysql.jdbc.Driver");

conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/warehouse_management", "root", "password");

String sql = "DELETE FROM equipment WHERE id = ?";

pstmt = conn.prepareStatement(sql);

pstmt.setInt(1, id);

pstmt.executeUpdate();

} catch(Exception e) {

e.printStackTrace();

} finally {

if(pstmt != null) try { pstmt.close(); } catch(Exception e) {}

if(conn != null) try { conn.close(); } catch(Exception e) {}

}

response.sendRedirect("index.jsp");

}

}

六、项目结构与配置

项目结构应该如下:

WarehouseManagement/

├── WebContent/

│ ├── addEquipment.jsp

│ ├── index.jsp

│ ├── updateEquipment.jsp

├── src/

│ ├── AddEquipmentServlet.java

│ ├── UpdateEquipmentServlet.java

│ ├── DeleteEquipmentServlet.java

├── build.xml

├── .classpath

├── .project

web.xml中配置Servlet:

<web-app>

<servlet>

<servlet-name>AddEquipmentServlet</servlet-name>

<servlet-class>AddEquipmentServlet</servlet-class>

</servlet>

<servlet-mapping>

<servlet-name>AddEquipmentServlet</servlet-name>

<url-pattern>/addEquipmentServlet</url-pattern>

</servlet-mapping>

<servlet>

<servlet-name>UpdateEquipmentServlet</servlet-name>

<servlet-class>UpdateEquipmentServlet</servlet-class>

</servlet>

<servlet-mapping>

<servlet-name>UpdateEquipmentServlet</servlet-name>

<url-pattern>/updateEquipmentServlet</url-pattern>

</servlet-mapping>

<servlet>

<servlet-name>DeleteEquipmentServlet</servlet-name>

<servlet-class>DeleteEquipmentServlet</servlet-class>

</servlet>

<servlet-mapping>

<servlet-name>DeleteEquipmentServlet</servlet-name>

<url-pattern>/deleteEquipmentServlet</url-pattern>

</servlet-mapping>

</web-app>

七、部署与测试

将项目部署到Tomcat服务器上,并启动服务器。访问http://localhost:8080/WarehouseManagement/index.jsp查看和管理设备信息。

此仓库设备管理系统的代码示例展示了如何使用JSP和Servlet实现一个简单的CRUD操作。通过这个示例,你可以进一步扩展和完善系统,例如添加用户认证、日志记录、数据验证等功能。

相关问答FAQs:

构建一个简单的JSP仓库设备管理系统,涉及到多个方面,包括数据库设计、前端展示、后端逻辑处理等。以下是一个简化的示例代码,帮助你快速上手。

1. 数据库设计

首先,设计一个简单的数据库表,用于存储设备信息。可以使用MySQL数据库,创建一个名为devices的表。

CREATE TABLE devices (
    id INT PRIMARY KEY AUTO_INCREMENT,
    name VARCHAR(100) NOT NULL,
    type VARCHAR(50) NOT NULL,
    quantity INT NOT NULL,
    location VARCHAR(100) NOT NULL
);

2. JSP页面设计

接下来,创建一个简单的JSP页面,用于展示设备信息和添加新设备。

index.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page import="java.sql.*" %>
<!DOCTYPE html>
<html>
<head>
    <title>仓库设备管理系统</title>
</head>
<body>
    <h1>设备列表</h1>
    <table border="1">
        <tr>
            <th>ID</th>
            <th>设备名称</th>
            <th>设备类型</th>
            <th>数量</th>
            <th>位置</th>
        </tr>
        <%
            String url = "jdbc:mysql://localhost:3306/yourdatabase";
            String user = "root";
            String password = "yourpassword";
            Connection con = DriverManager.getConnection(url, user, password);
            Statement stmt = con.createStatement();
            ResultSet rs = stmt.executeQuery("SELECT * FROM devices");
            while (rs.next()) {
        %>
        <tr>
            <td><%= rs.getInt("id") %></td>
            <td><%= rs.getString("name") %></td>
            <td><%= rs.getString("type") %></td>
            <td><%= rs.getInt("quantity") %></td>
            <td><%= rs.getString("location") %></td>
        </tr>
        <%
            }
            rs.close();
            stmt.close();
            con.close();
        %>
    </table>

    <h2>添加新设备</h2>
    <form action="addDevice.jsp" method="post">
        设备名称: <input type="text" name="name"><br>
        设备类型: <input type="text" name="type"><br>
        数量: <input type="number" name="quantity"><br>
        位置: <input type="text" name="location"><br>
        <input type="submit" value="添加设备">
    </form>
</body>
</html>

addDevice.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page import="java.sql.*" %>
<%
    String name = request.getParameter("name");
    String type = request.getParameter("type");
    int quantity = Integer.parseInt(request.getParameter("quantity"));
    String location = request.getParameter("location");

    String url = "jdbc:mysql://localhost:3306/yourdatabase";
    String user = "root";
    String password = "yourpassword";
    Connection con = DriverManager.getConnection(url, user, password);
    String sql = "INSERT INTO devices (name, type, quantity, location) VALUES (?, ?, ?, ?)";
    PreparedStatement pstmt = con.prepareStatement(sql);
    pstmt.setString(1, name);
    pstmt.setString(2, type);
    pstmt.setInt(3, quantity);
    pstmt.setString(4, location);
    pstmt.executeUpdate();

    pstmt.close();
    con.close();

    response.sendRedirect("index.jsp");
%>

3. 项目结构

在你的项目中,文件结构可以如下:

/your-web-app
  ├── index.jsp
  ├── addDevice.jsp
  └── WEB-INF
      └── web.xml

4. web.xml配置

WEB-INF文件夹下创建web.xml文件,配置Servlet和JSP的访问。

<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" 
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee 
         http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
         version="3.1">
    <servlet>
        <servlet-name>jsp</servlet-name>
        <servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class>
        <init-param>
            <param-name>modificationTestInterval</param-name>
            <param-value>0</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>jsp</servlet-name>
        <url-pattern>*.jsp</url-pattern>
    </servlet-mapping>
</web-app>

5. 运行项目

确保你已经正确配置了MySQL数据库,并将JDBC驱动放在你的项目中。你可以使用Tomcat等服务器运行该项目。在浏览器中访问http://localhost:8080/your-web-app/index.jsp,你将看到设备列表和添加设备的表单。

总结

以上是一个简单的JSP仓库设备管理系统的示例代码,涵盖了设备的展示和添加功能。你可以根据自己的需求,进一步扩展功能,如编辑和删除设备、用户权限管理等。

为了提升开发效率,推荐一个好用的低代码开发平台,5分钟即可搭建一个管理软件:
地址: https://www.informat.cn/(或直接右上角申请体验)x6aj1;

100+企业管理系统模板免费使用>>>无需下载,在线安装:
地址: https://www.informat.cn/(或直接右上角申请体验)7wtn5;

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系邮箱:hopper@cornerstone365.cn 处理,核实后本网站将在24小时内删除。

最近更新

医疗器械管理资源_全面优化医疗设备管理方案
02-10 14:11
医疗器械公司设备管理全解析:提升效率与安全的必备指南
02-10 14:11
医疗器械设备管理台账_提升设备管理效率的必备工具
02-10 14:11
大型医院医疗器械管理部_提升医疗设备管理效率新方案
02-10 14:11
广东医疗器械管理软件:革新医疗设备管理之道
02-10 14:11
如何满足医疗器械设备管理的必备条件?
02-10 14:11
立马医疗器械管理系统:医疗设备管理的得力助手
02-10 14:11
医疗器械管理信息化平台:全方位提升医疗设备管理效能
02-10 14:11
《医疗器械信息化质量管理:如何提升医疗设备管理与服务?》
02-10 14:11
为什么选择织信?
织信AI低代码开发底座,赋能企业快速构建复杂业务系统,驱动业务与IT高效创新
AI驱动开发
通过自然语言交互完成数据建模与逻辑编排,非技术人员也能快速上手,开发周期从数月压缩至数周。
高性能数据支持
提供上亿级数据承载能力与分布式集群部署,支持海量业务数据的高并发处理。
企业级场景覆盖
支持ERP、MES、CRM、SRM、WMS等核心系统搭建,无缝集成钉钉、企微、飞书及各类异构系统。
专业服务保障
支持私有化部署模式,全面保障数据安全。已累计服务制造、军工、金融等50000+企业客户。
B2C跨境电商知名品牌——朗驰实业
集设计、生产、销售于一体的综合性服装企业,专注女性快时尚B2C跨境电商,目前设有供应链中心、仓储中心、亚马逊运营中心、信息化中心、产品研发中心等20余个部门,引入织信低代码平台个性化定制一套研发、生产、销售全链路的数字化系统,打通服装从设计、生产到销售的各个环节。
全球500强车企巨头——吉利集团
作为一家全球知名的超大型企业,吉利需要大量的技术人员来满足各事业部门的日常数字化需求。在内部强调“降本增效”的大环境下,吉利通过采购“织信低代码平台”,开发周期平均缩短61%,人力投入减少47%,解决了开发需求常年堆积的难题。
医院后勤服务领军者——某管家
国内市场化运作、跨区域经营、集团化管理的大型专业医疗机构后勤服务供应商,全国80多座城市,每天为超过百万的病人和医护人员提供服务,通过织信低代码平台构建线上数字化的方式服务各医院的后勤保障和正常运行,主要为运送条线、保洁条线、秩序条线、工程条线、医废条线等解决工单调度、医辅材料运输、多端协同的效率难题。
中国兵器工业集团——银光化学
国家“一五”期间156个重点项目之一。属于国家高新技术企业,在信息化升级建设中,存在大量“小、散、碎”的信息化需求,需要投入大量人力资源进行开发,通过引入织信低代码平台,解决当下遇到的各类业务难题,提升整体的IT研发效率。
石油领域重点工程单位——川庆钻探
随着国企工规模的不断扩大和内部数字化转型的要求不断提升,公司着眼长远,决定借助织信低代码的各方面能力,从物资储备管理入手,并辐射经营、生产、工程、日常管理等多个板块,为后续内部信息化建设打好基座。
汽车零部件上市企业——川环科技
川环为了有效应对残酷的市场现实,高层一致决定加强公司内部管理,8大部门将全面进行数字化转型,耗时10月,成功上线8套系统,通过织信低代码平台对接现有用友U9ERP,实现各部门的业务线上化,并通过数据治理,实现整个企业从战略到经营管理的分析。
B2C跨境电商知名品牌——朗驰实业
集设计、生产、销售于一体的综合性服装企业,专注女性快时尚B2C跨境电商,目前设有供应链中心、仓储中心、亚马逊运营中心、信息化中心、产品研发中心等20余个部门,引入织信低代码平台个性化定制一套研发、生产、销售全链路的数字化系统,打通服装从设计、生产到销售的各个环节。
全球500强车企巨头——吉利集团
作为一家全球知名的超大型企业,吉利需要大量的技术人员来满足各事业部门的日常数字化需求。在内部强调“降本增效”的大环境下,吉利通过采购“织信低代码平台”,开发周期平均缩短61%,人力投入减少47%,解决了开发需求常年堆积的难题。

各行业用户的共同选择

国防军工
国防军工
央国企
央国企
生产制造
生产制造
生物医疗
生物医疗
科技服务
科技服务
金融证券
金融证券
科研院所
科研院所
物业地产
物业地产
织信适合谁?
如您有以下几种需求,欢迎 填写表单 联系我们
企业员工
《找工具开发功能》
公司老板
《找人定制系统》
软件集成商
《想快速交付项目》
  • 深圳市基石协作科技有限公司
  • 地址:深圳市南山区科发路8号金融基地1栋5F5
  • 手机:137-1379-6908
  • 电话:0755-86660062
  • 邮箱:sales@cornerstone365.cn
  • 微信公众号二维码

© copyright 2019-2026. 织信INFORMAT 深圳市基石协作科技有限公司 版权所有 | 粤ICP备15078182号

前往Gitee仓库
微信公众号二维码
咨询织信数字化顾问获取最新资料
客服咨询热线1
0755-86660062
客服咨询热线2
137-1379-6908
申请预约演示
立即与行业专家交流