java SSM园林绿化管理系统myeclipse开发mysql数据库springMVC模式java编程计算机网页设计

news2024/9/22 7:34:20

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

ssm园林绿化管理系统1


二、功能介绍
(1)系统管理,包括角色管理、用户管理、权限管理等功能。
2.设施管理
(1)设施信息登记
(2)设施日常维护报修
(3)设施维护内容登记
3.绿化工具管理
(1)绿化工具登记
(2)工具日常使用情况管理,含购买,借出,报废等
4.绿化方案管理
(1)绿化方案的录入
(2)绿化方案实施情况管理
系统报表功能,按设施,工具,时间,方案等

数据库设计

[表yonghu] 用户列属性表格

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

[表sheshi] 设施列属性表格

序号字段名称数据类型长度主键描述
1ssidINTEGER11设施编号
2ssmcVARCHAR40设施名称
3smVARCHAR40说明
4ytVARCHAR40用途
5wzVARCHAR40位置

[表ssbx] 设施报修列属性表格

序号字段名称数据类型长度主键描述
1ssbxidINTEGER11设施报修编号
2ssVARCHAR40设施
3bxyyVARCHAR40报修原因
4smVARCHAR40说明
5bxsjVARCHAR40报修时间
6ztVARCHAR40状态
7wxjgVARCHAR40维修结果

[表lhgj] 绿化工具列属性表格

序号字段名称数据类型长度主键描述
1lhgjidINTEGER11绿化工具编号
2gjmcVARCHAR40工具名称
3jsVARCHAR40介绍
4slVARCHAR40数量
5ppVARCHAR40品牌

[表gjsy] 工具使用列属性表格

序号字段名称数据类型长度主键描述
1gjsyidINTEGER11工具使用编号
2gjVARCHAR40工具
3sysjVARCHAR40使用时间
4slVARCHAR40数量
5yhVARCHAR40用户

代码设计

	@RequestMapping(value="/add")
	public String add(gjsy gjsy,HttpServletRequest request){
		Map<String,Object> map= new HashMap<String,Object>();
		//String name=(String)request.getParameter("name");

		map.put("gjsyid", gjsy.getGjsyid());//工具使用编号

		map.put("gj", gjsy.getGj());//工具

		map.put("sysj", gjsy.getSysj());//使用时间

		map.put("sl", gjsy.getSl());//数量

		map.put("yh", gjsy.getYh());//用户

		gjsydao.save(map);
		
		
		request.setAttribute("msg", "<script>alert('添加成功');</script>");
		System.out.println("addok");
		return "gjsy/gjsyadd";
	}
	
	/**删除 
	 * 
	 */
	@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>");
		gjsydao.del(id);
		return selectall(null,map,request);
	}
	/**
	 * 修改gjsy信息
	 */
	@RequestMapping(value="/update")
	public String update(gjsy gjsy,HttpServletRequest request,Map<String,Object> map1){
		Map<String,Object> map= new HashMap<String,Object>();
		map.put("gjsyid", gjsy.getGjsyid());//工具使用编号

		map.put("gj", gjsy.getGj());//工具

		map.put("sysj", gjsy.getSysj());//使用时间

		map.put("sl", gjsy.getSl());//数量

		map.put("yh", gjsy.getYh());//用户

		request.setAttribute("msg", "<script>alert('修改成功');</script>");
		gjsydao.update(map);
		return selectall(null,map1,request);
	}
	/**
	 * 查询gjsy信息
	 */
	@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=gjsydao.select(Integer.parseInt(keyid));
		request.setAttribute("gjsyid", list.get(0).get("gjsyid"));//工具使用编号

		request.setAttribute("gj", list.get(0).get("gj"));//工具

		request.setAttribute("sysj", list.get(0).get("sysj"));//使用时间

		request.setAttribute("sl", list.get(0).get("sl"));//数量

		request.setAttribute("yh", list.get(0).get("yh"));//用户

		
		return "gjsy/gjsymodify";
	}
	
	@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=gjsydao.select(Integer.parseInt(keyid));
		request.setAttribute("gjsyid", list.get(0).get("gjsyid"));//工具使用编号

		request.setAttribute("gj", list.get(0).get("gj"));//工具

		request.setAttribute("sysj", list.get(0).get("sysj"));//使用时间

		request.setAttribute("sl", list.get(0).get("sl"));//数量

		request.setAttribute("yh", list.get(0).get("yh"));//用户

		return "gjsy/gjsydetail";
	}
	
	/**
	 * 查询gjsy信息
	 */
	@RequestMapping(value="/selectall")
	public String selectall(Integer id,Map<String,Object> map,HttpServletRequest request){
		List<Map<String,Object>> list= new  ArrayList<Map<String,Object>>();
	Map<String,Object> map1= new HashMap<String,Object>();

	String gjsyid=(String)request.getParameter("gjsyid");//工具使用编号
	if(gjsyid!=null&&!gjsyid.equals("")){
	map1.put("gjsyid",gjsyid);//工具使用编号
	}
	String gj=(String)request.getParameter("gj");//工具
	if(gj!=null&&!gj.equals("")){
	map1.put("gj",gj);//工具
	}
	String sysj=(String)request.getParameter("sysj");//使用时间
	if(sysj!=null&&!sysj.equals("")){
	map1.put("sysj",sysj);//使用时间
	}
	String sl=(String)request.getParameter("sl");//数量
	if(sl!=null&&!sl.equals("")){
	map1.put("sl",sl);//数量
	}
	String yh=(String)request.getParameter("yh");//用户
	if(yh!=null&&!yh.equals("")){
	map1.put("yh",yh);//用户
	}

		list=gjsydao.selectAll(map1);
		System.out.println("listsize="+list.size());
		
		map.put("mylist", list);
		return "gjsy/gjsylist";
	}


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

四 系统实现

源码获取 下方联系卡片↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓

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

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

相关文章

【论文阅读】GPT4Graph: Can Large Language Models Understand Graph Structured Data?

文章目录 0、基本介绍1、研究动机2、准备2.1、图挖掘任务2.2、图描述语言&#xff08;GDL&#xff09; 3、使用LLM进行图理解流程3.1、手动提示3.2、自提示 4、图理解基准4.1、结构理解任务4.1、语义理解任务 5、数据搜集5.1、结构理解任务5.2、语义理解任务 6、实验6.1、实验设…

Spark面试题

1. spark core 1.简述hadoop 和 spark的不同点&#xff08;为什么spark更快&#xff09;♥♥♥ shuffle都是需要落盘的&#xff0c;因为在宽依赖中需要将上一个阶段的所有分区数据都准备好&#xff0c;才能进入下一个阶段&#xff0c;那么如果一直将数据放在内存中&#xff0c…

ARM多核调度器DSU

1. 背景 从A75开始&#xff0c;ARM提出了一个新的多核心管理系统单元&#xff0c;叫做DSU(DynamIQ Shared Unit)。DSU的核心功能是控制CPU内核&#xff0c;使其成簇Cluster使用&#xff0c;簇内每一个核心可以单独开关、调整频率/电压&#xff0c;能效表现更佳&#xff0c;甚至…

手动正则删除console.log

依赖删除的可以先出去了 先得删除箭头函数里的 正则匹配不能直接删&#xff0c;如这种箭头函数&#xff0c;得先全局改了 然后正则 console.log(.*?) 选中》空着〉全局替换 最后删除 // 因为有的 console.log在代码块原来就是被空着状态&#xff0c; 所以也得全局为空替…

正则表达式..

1.字符串的合法检验 现在有一个字符串验证码 我们需要检验其的合法性 什么条件才能够使得字符串合法呢&#xff1f;就是6-10个字符串长度 并且以字母开头 并且其中由字母、数字、下划线构成 那么我们可以先通过自定义的方式进行检验 public class Main {public static void m…

通过Konva.js实现canvas列表滚动

列表可以通过Konva.js中的Rect来实现&#xff0c;通过group可以丰富列表的内容 在滚动方面&#xff0c;可以通过vue的scroll方法&#xff0c;通过rect中的move方法来修改y值即可 我这里设置的是一个透明的盒子在想要滚动的canvas上&#xff0c;这样就可以实现直接滚动canvas列…

K8s(七)四层代理Service

Service概述 Service在Kubernetes中提供了一种抽象的方式来公开应用程序的网络访问&#xff0c;并提供了负载均衡和服务发现等功能&#xff0c;使得应用程序在集群内外都能够可靠地进行访问。 每个Service都会自动关联一个对应的Endpoint。当创建一个Service时&#xff0c;Ku…

springboot109新闻稿件管理系统

简介 【毕设源码推荐 javaweb 项目】基于springbootvue 的新闻稿件管理系统 适用于计算机类毕业设计&#xff0c;课程设计参考与学习用途。仅供学习参考&#xff0c; 不得用于商业或者非法用途&#xff0c;否则&#xff0c;一切后果请用户自负。 看运行截图看 第五章 第四章 获…

SpringMVC下半篇之整合ssm

4.ssm整合 4.1.创建表 CREATE TABLE account (id int(11) NOT NULL AUTO_INCREMENT,name varchar(20) DEFAULT NULL,money double DEFAULT NULL,PRIMARY KEY (id) ) ENGINEInnoDB DEFAULT CHARSETutf8;4.2.创建工程 4.3.pom.xml <?xml version"1.0" encoding&…

【图形学】颜色线性插值和Wu反走样算法

颜色线性插值 绘制一条颜色渐变的直线&#xff0c;直线上每一个点的颜色都来自端点颜色的线性插值。线性插值公式为 P ( 1 − t ) P s t a r t t P e n d P 是直线上任意一个点&#xff0c; P s t a r t 是直线的起点&#xff0c; P e n d 是直线的终点 对应直线上任意一点…

[flutter]GIF速度极快问题的两种解决方法

原因&#xff1a; 当GIF图没有设置播放间隔时间时&#xff0c;电脑上会默认间隔0.1s&#xff0c;而flutter默认0s。 解决方法一&#xff1a; 将图片改为webp格式。 解决方法二&#xff1a; 为图片设置帧频率&#xff0c;添加播放间隔。例如可以使用GIF依赖组件设置每秒运行…

低代码技术杂谈

一、探讨低代码的定义 “Low-Code”是什么&#xff1f;身为技术人员听到这种技术名词&#xff0c;咱们第一反应就是翻看维基百科 或者其他相关技术论文&#xff0c;咱们想看维基百科的英文介绍&#xff1a; A low-code development platform (LCDP) provides a development env…

Docker(七)使用网络

作者主页&#xff1a; 正函数的个人主页 文章收录专栏&#xff1a; Docker 欢迎大家点赞 &#x1f44d; 收藏 ⭐ 加关注哦&#xff01; Docker 中的网络功能介绍 Docker 允许通过外部访问容器或容器互联的方式来提供网络服务。 一、外部访问容器 容器中可以运行一些网络应用&…

数学建模常见算法的通俗理解(1)

目录 1.层次分析法&#xff08;结合某些属性及个人倾向&#xff0c;做出某种决定&#xff09; 1.1 粗浅理解 1.2 算法过程 1.2.1 构造判断矩阵 1.2.2 计算权重向量 1.2.3 计算最大特征根 1.2.4 计算C.I.值 1.2.5 求解C.R.值 1.2.6 判断一致性 1.2.7 计算总得分 2 神经…

go语言(八)---- map

map的声明方式有以下三种。 package mainimport "fmt"func main() {//第一种声明方式//声明map1是一个map类型&#xff0c;key是String&#xff0c;value是Stringvar myMap1 map[string] stringif myMap1 nil {fmt.Println("myMap1 是一个空map")}//在使…

多测师肖sir___ui自动化测试po框架(升级)

ui自动化测试po框架&#xff08;升级&#xff09; po框架 一、ui自动化po框架介绍 &#xff08;1&#xff09;PO是Page Object的缩写&#xff08;pom模型&#xff09; &#xff08;2&#xff09;业务流程与页面元素操作分离的模式&#xff0c;可以简单理解为每个页面下面都有一…

java数据结构与算法刷题-----LeetCode59. 螺旋矩阵 II

java数据结构与算法刷题目录&#xff08;剑指Offer、LeetCode、ACM&#xff09;-----主目录-----持续更新(进不去说明我没写完)&#xff1a;https://blog.csdn.net/grd_java/article/details/123063846 解题思路 初始&#xff0c;top行执向第一行&#xff0c;bottom行指向最后一…

积分梳状滤波器CIC原理与实现

CIC&#xff08;Cascade Intergrator Comb&#xff09;&#xff1a;级联积分梳状滤波器&#xff0c;是由积分器和梳状滤波器级联而得。滤波器系数为1&#xff0c;无需对系数进行存储&#xff0c;只有加法器、积分器和寄存器&#xff0c;资源消耗少&#xff0c;运算速率高&#…

TypeScript语法总结

JavaScript 与 TypeScript 的区别 TypeScript 是 JavaScript 的超集&#xff0c;扩展了 JavaScript 的语法&#xff0c;因此现有的 JavaScript 代码可与 TypeScript 一起工作无需任何修改&#xff0c;TypeScript 通过类型注解提供编译时的静态类型检查。 TypeScript 可处理已…

GitHub 13.7k star,一款让Windows和macOS瘦身减肥实用工具,免安装+开源+性能高

GitHub 13.7k star&#xff0c;一款让Windows和macOS瘦身减肥实用工具&#xff0c;免安装开源性能高 大家好&#xff01;我是老码农。 今天给大家推荐一款&#xff1a;让Windows和macOS操作系统瘦身减肥的实用工具&#xff0c;czkawka。 这款工具主要干啥事呢&#xff1f;说…