java SSM物资采购管理系统myeclipse开发mysql数据库springMVC模式java编程计算机网页设计

一、源码特点
    java SSM物资采购管理系统是一套完善的web设计系统(系统采用SSM框架进行设计开发,spring+springMVC+mybatis),对理解JSP java编程开发语言有帮助,系统具有完整的源代
码和数据库,系统主要采用B/S模式开发。开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0,使用java语言开发。

SSM 物资采购管理系统


二、功能介绍
一、用户管理
(1)角色管理:对角色信息进行添加、删除、修改和查看
(2)用户管理:对用户信息进行添加、删除、修改和查看
(3)物资类别管理:对物资类别信息进行添加、删除、修改和查看
(4)物资管理:对物资信息进行添加、删除、修改和查看
(5)入库管理:对入库信息进行添加、删除、修改和查看
(6)出库管理:对出库信息进行添加、删除、修改和查看
(7)材料申请管理:对材料申请信息进行添加、删除、修改和查看
(8)询价管理:对询价信息进行添加、删除、修改和查看
(9)采购合同管理:对采购合同信息进行添加、删除、修改和查看
   
  数据库设计

[表jiaose] 角色列属性表格

序号字段名称数据类型长度主键描述
1jsidINTEGER11角色编号
2jsVARCHAR40角色

[表yonghu] 用户列属性表格

序号字段名称数据类型长度主键描述
1yhidINTEGER11用户编号
2yhmVARCHAR40用户名
3mmVARCHAR40密码
4xmVARCHAR40姓名
5jsVARCHAR40角色
6lxdhVARCHAR40联系电话
7lxdzVARCHAR40联系地址

[表wzlb] 物资类别列属性表格

序号字段名称数据类型长度主键描述
1wzlbidINTEGER11物资类别编号
2lbVARCHAR40类别

[表wuzi] 物资列属性表格

序号字段名称数据类型长度主键描述
1wzidINTEGER11物资编号
2wzmcVARCHAR40物资名称
3lbVARCHAR40类别
4sxVARCHAR40属性
5smVARCHAR40说明
6kcVARCHAR40库存
7bzVARCHAR40备注

[表ruku] 入库列属性表格

序号字段名称数据类型长度主键描述
1rkidINTEGER11入库编号
2wzVARCHAR40物资
3rkslVARCHAR40入库数量
4czsjVARCHAR40操作时间
5czrVARCHAR40操作人

[表chuku] 出库列属性表格

序号字段名称数据类型长度主键描述
1ckidINTEGER11出库编号
2wzVARCHAR40物资
3ckslVARCHAR40出库数量
4czsjVARCHAR40操作时间
5czrVARCHAR40操作人

[表clsq] 材料申请列属性表格

序号字段名称数据类型长度主键描述
1clsqidINTEGER11材料申请编号
2sqdhVARCHAR40申请单号
3btVARCHAR40标题
4clVARCHAR40材料
5slVARCHAR40数量
6nrVARCHAR40内容
7fbsjVARCHAR40发布时间
8ztVARCHAR40状态
9yhVARCHAR40用户
10sqsjVARCHAR40申请时间
11gysVARCHAR40供应商

[表xunjia] 询价列属性表格

序号字段名称数据类型长度主键描述
1xjidINTEGER11询价编号
2gysVARCHAR40供应商
3clVARCHAR40材料
4sqVARCHAR40申请
5jgVARCHAR40价格
6pzVARCHAR40品质
7jqVARCHAR40交期
8fkfsVARCHAR40付款方式
9ztVARCHAR40

状态

代码设计

	@Resource rukuDao rukudao;@RequestMapping(value="/addPage")public String addPage(ruku ruku,HttpServletRequest request){Map<String,Object> map= new HashMap<String,Object>();System.out.println("addPageok");return "ruku/rukuadd";}@RequestMapping(value="/add")public String add(ruku ruku,HttpServletRequest request){Map<String,Object> map= new HashMap<String,Object>();//String name=(String)request.getParameter("name");map.put("rkid", ruku.getRkid());//入库编号map.put("wz", ruku.getWz());//物资map.put("rksl", ruku.getRksl());//入库数量map.put("czsj", ruku.getCzsj());//操作时间map.put("czr", ruku.getCzr());//操作人rukudao.save(map);DBO db=new DBO();String sql="";try{sql="update wuzi set kc=kc+"+ruku.getRksl()+" where wzmc='"+ruku.getWz()+"'";db.update(sql);}catch(Exception e){e.printStackTrace();}request.setAttribute("msg", "<script>alert('入库成功');</script>");System.out.println("addok");return "ruku/rukuadd";}/**删除 * */@RequestMapping(value="/del")public String  del(Integer id,HttpServletRequest request,Map<String,Object> map){//	Map<String,Object> map= new HashMap<String,Object>();String a=(String)request.getParameter("keyid");id=Integer.parseInt(a);request.setAttribute("msg", "<script>alert('删除成功');</script>");rukudao.del(id);return selectall(null,map,request);}/*** 修改ruku信息*/@RequestMapping(value="/update")public String update(ruku ruku,HttpServletRequest request,Map<String,Object> map1){Map<String,Object> map= new HashMap<String,Object>();map.put("rkid", ruku.getRkid());//入库编号map.put("wz", ruku.getWz());//物资map.put("rksl", ruku.getRksl());//入库数量map.put("czsj", ruku.getCzsj());//操作时间map.put("czr", ruku.getCzr());//操作人request.setAttribute("msg", "<script>alert('修改成功');</script>");rukudao.update(map);return selectall(null,map1,request);}/*** 查询ruku信息*/@RequestMapping(value="/modify")public String modify(Integer id,Map<String,Object> map,HttpServletRequest request){String keyid=(String)request.getParameter("keyid");List<Map<String,Object>> list= new  ArrayList<Map<String,Object>>();list=rukudao.select(Integer.parseInt(keyid));request.setAttribute("rkid", list.get(0).get("rkid"));//入库编号request.setAttribute("wz", list.get(0).get("wz"));//物资request.setAttribute("rksl", list.get(0).get("rksl"));//入库数量request.setAttribute("czsj", list.get(0).get("czsj"));//操作时间request.setAttribute("czr", list.get(0).get("czr"));//操作人return "ruku/rukumodify";}@RequestMapping(value="/detail")public String detail(Integer id,Map<String,Object> map,HttpServletRequest request){String keyid=(String)request.getParameter("keyid");List<Map<String,Object>> list= new  ArrayList<Map<String,Object>>();list=rukudao.select(Integer.parseInt(keyid));request.setAttribute("rkid", list.get(0).get("rkid"));//入库编号request.setAttribute("wz", list.get(0).get("wz"));//物资request.setAttribute("rksl", list.get(0).get("rksl"));//入库数量request.setAttribute("czsj", list.get(0).get("czsj"));//操作时间request.setAttribute("czr", list.get(0).get("czr"));//操作人return "ruku/rukudetail";}

三、注意事项
    1、管理员账号:admin 密码:admin 数据库配置文件datasource.properties
     2、开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0,使用java语言开发。
    3、数据库文件名是jspssmwzcg.sql,系统名称ssmwzcg
    4、系统首页地址:http://127.0.0.1:8080/ssmwzcg/index.jsp

四系统实现

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/625058.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

burp靶场-API testing

burp靶场 1.服务端主题 1.API测试 https://portswigger.net/web-security/api-testing#top 1.1 api探测api路径&#xff0c;数据格式&#xff0c;交互方法&#xff0c;参数是否必选&#xff1a; ## 使用Burp Scanner来爬取 API https://portswigger.net/burp/vulnerabilit…

虚幻UE 材质-材质图层、材质图层混合

学习材质图层和材质图层混合的使用&#xff0c;便于节点扫盲。 文章目录 前言一、材质图层混合二、使用步骤总结 前言 材质混合我们之前用Bridge的插件进行混合过 而此次我们的材质混合使用UE自带的材质图层和材质图层混合来实现 一、材质图层混合 材质图层混合是一种允许将…

Github镜像加速器-FastGit

简介 FastGit 是一个对于 GitHub.com 的镜像加速器。使用共享资源为 GitHub 加速。 FastGit中文指南 # 基本使用 关于 FastGit 的使用&#xff0c;本质上与 git 有关。常规的面向 GitHub 的 clone 命令可能如下&#xff1a; git clone https://github.com/author/repo使用 F…

烟火检测/周界入侵/视频智能识别AI智能分析网关V4如何配置ONVIF摄像机接入

AI边缘计算智能分析网关V4性能高、功耗低、检测速度快&#xff0c;易安装、易维护&#xff0c;硬件内置了近40种AI算法模型&#xff0c;支持对接入的视频图像进行人、车、物、行为等实时检测分析&#xff0c;上报识别结果&#xff0c;并能进行语音告警播放。算法可按需组合、按…

《C++大学教程》4.25星号正方形

题目: //while循环实现int main() {int n;cout << "请输入边长&#xff1a;";cin >> n;int i 1; while (i < n){ // 控制行数int j 1;while (j < n){ // 控制列数if (i 1 || i n || j 1 || j n){cout << "*";}else{cout <…

yarn包管理器在添加、更新、删除模块时,在项目中是如何体现的

技术很久不用&#xff0c;就变得生疏起来。对npm深受其害&#xff0c;决定对yarn再整理一遍。 yarn包管理器 介绍安装yarn帮助信息最常用命令 介绍 yarn官网&#xff1a;https://yarn.bootcss.com&#xff0c;学任何技术的最新知识&#xff0c;都可以通过其对应的网站了解。无…

浏览器打印无法显示单选框选中效果

上面是原代码&#xff0c;我点击打印&#xff0c;出现打印页面&#xff0c;但单选框并未勾选中&#xff0c;我在外部放了一模一样的代码是能勾选上的&#xff0c;于是我对打印页的input单选框进行分析&#xff0c;发现他丢失了checked属性。然后通过gpt分析原因。得知了default…

软件测试|使用matplotlib绘制多种柱状图

简介 在数据可视化领域&#xff0c;Matplotlib是一款强大的Python库&#xff0c;它可以用于创建多种类型的图表&#xff0c;包括柱状图。本文将介绍如何使用Matplotlib创建多种不同类型的柱状图&#xff0c;并提供示例代码。 创建基本柱状图 首先&#xff0c;让我们创建一个…

【设计模式-05】Facade门面Mediator调停者 | Decorator装饰器 | Chain Of Responsibility责任链

Facade门面Mediator调停者 1、Facade门面图解 2、Mediator调停者 一般是系统内部相互交错&#xff0c;比如消息中间件(MQ)就是这种设计模式&#xff0c;对各个功能或系统之间进行解耦。 Decorator装饰器 1、问题 2、解决方案 Chain Of Responsibility责任链 一、例子场景 业…

网络命令行工具nc的使用复习

之前写过nc的博文&#xff1b;下面复习一下&#xff1b; 可以把nc放到C:\Windows\System32下&#xff1b; nc -l -p 9007&#xff0c;-l 是监听模式&#xff0c;-p指定端口&#xff0c;作为服务端监听9007端口&#xff1b; nc 127.0.0.1 9007&#xff0c;作为客户端去连接指定…

数据洞察力,驱动企业财务变革

我们不得不面对一个现实&#xff0c;就是数据量的剧增。加上大部分企业并不愿意删除历史数据&#xff0c;以防未来预测分析时需要&#xff0c;这造成数据就像一个雪球&#xff0c;越滚越大。然而&#xff0c;过多的数据和数据不足一样会成为企业发展和理解分析的障碍。从海量数…

玩转硬件之Micro:bit的玩法(六)——扫地机器人

众所周知&#xff0c;扫地机器人&#xff0c;又称自动打扫机、智能吸尘、机器人吸尘器等&#xff0c;是智能家电的一种&#xff0c;能凭借人工智能&#xff0c;自动在房间内完成地板清理工作。一般采用刷扫和真空方式&#xff0c;将地面杂物先吸纳进入自身的垃圾收纳盒&#xf…

多示例学习 (multi-instance learning, MIL) 学习路线 (归类、重点文章列举、持续更新)

文章目录 0 要点 0 要点 说明&#xff1a;本文在于能够让大家能够更加快速地了解MIL这个领域&#xff0c;因此将从以下几个方面重点介绍MIL&#xff1a; MIL背景介绍&#xff1b;理论MIL概述&#xff1a; 注意力网络&#xff1b;对比学习&#xff1b;介入学习&#xff1b;强化…

【AI视野·今日Robot 机器人论文速览 第七十四期】Wed, 10 Jan 2024

AI视野今日CS.Robotics 机器人学论文速览 Wed, 10 Jan 2024 Totally 17 papers &#x1f449;上期速览✈更多精彩请移步主页 Daily Robotics Papers Hold em and Fold em: Towards Human-scale, Feedback-Controlled Soft Origami Robots Authors Immanuel Ampomah Mensah, Je…

【Axure高保真原型】移入放大对应区域的饼图

今天和大家分享移入放大对应扇形区域的饼图的原型模板&#xff0c;鼠标移入时&#xff0c;对应扇形区域的会放大&#xff0c;并且的项目和数据弹窗&#xff0c;弹窗可以跟随鼠标移动。这个原型是用Axure原生元件制作的&#xff0c;所以不需要联网或者调用外部图表……具体效果可…

GAMES101-Assignment7

一、问题总览 在之前的练习中&#xff0c;我们实现了Whitted-Style Ray Tracing 算法&#xff0c;并且用BVH等加速结构对于求交过程进行了加速。在本次实验中&#xff0c;我们将在上一次实验的基础上实现完整的Path Tracing算法。 二、代码框架 2.1 修改内容 相比上一次实验…

QT报错记录

Ubuntu22.04安装Qt之后启动Qt Creator报错&#xff1a; Fron 6.5.0, xcb-cursor0 or libxcb-cursor0 is needed to load the Qt xcb platforn plugin. Could not load. This application failed to start because no Qt platforn plugin could be initialized. Reinstalling t…

RSA原理理解以及攻防世界(初识RSA)解题思路-0基础理解

题目 下载附件后&#xff0c;我们看到的是这样一个界面&#xff0c;这里需要理解RSA的构造 RSA原理理解 RSA加密算法是一种非对称加密算法&#xff0c;在公开密钥加密和电子商业中被广泛使用。对极大整数做因数分解的难度决定了RSA算法的可靠性。换言之&#xff0c;对一极大整…

Java SE入门及基础(14)

二重循环 1. 什么是二重循环 二重循环就是一个循环结构中又包含另外一个循环结构 while ( 外层循环条件 ){ //外层循环操作 while ( 内层循环条件 ){ //内层循环操作 } //外层循环操作 } while ( 外层循环条件 ){ //外层循环操作 for ( 循环变量初始化 ; 内层循环条…

【Docker】在容器中管理数据数据卷挂载以及宿主机目录挂载

&#x1f389;&#x1f389;欢迎来到我的CSDN主页&#xff01;&#x1f389;&#x1f389; &#x1f3c5;我是平顶山大师&#xff0c;一个在CSDN分享笔记的博主。&#x1f4da;&#x1f4da; &#x1f31f;推荐给大家我的博客专栏《【Docker】在容器中管理数据》。&#x1f3af…