设备缺陷管理系统

用Jsp Servlet和Jquery实现设备缺陷管理系统。

设备缺陷管理系统采用MVC三层架构模式进行开发,有效地解决了对缺陷设备的管理和修正。

效果演示:

查询和联合查询页面
在这里插入图片描述
添加页面
在这里插入图片描述
点击删除之后
在这里插入图片描述

功能分析:
1.查询所有设备
2.联合查询
3.添加缺陷设备
4.删除缺陷设备
5.处理缺陷设备

实现此系统要准备两大方面的内容,分别是数据库和程序

一: 数据库(SQLServer数据库)

我的数据库名为Test
设备表
在这里插入图片描述
缺陷表
在这里插入图片描述

当然在开始我们的程序之前还要特别注意:
引入sqljdbc.jar架包和jquery-3.3.1.js架包

二:完整程序

我们先看一下目录结构
在这里插入图片描述

正式进入程序

bean包:
bean包里的Defect.java

package com.hnpi.bean;import java.sql.Timestamp;public class Defect {private Integer defectId;private Integer defectType;private String content;private Timestamp addTime;private Integer defectState;private Timestamp dealTime;private Integer deviceId;public Integer getDefectId() {return defectId;}public void setDefectId(Integer defectId) {this.defectId = defectId;}public Integer getDefectType() {return defectType;}public void setDefectType(Integer defectType) {this.defectType = defectType;}public String getContent() {return content;}public void setContent(String content) {this.content = content;}public Timestamp getAddTime() {return addTime;}public void setAddTime(Timestamp addTime) {this.addTime = addTime;}public Integer getDefectState() {return defectState;}public void setDefectState(Integer defectState) {this.defectState = defectState;}public Timestamp getDealTime() {return dealTime;}public void setDealTime(Timestamp dealTime) {this.dealTime = dealTime;}public Integer getDeviceId() {return deviceId;}public void setDeviceId(Integer deviceId) {this.deviceId = deviceId;}public Defect(Integer defectId, Integer defectType, String content,Timestamp addTime, Integer defectState, Timestamp dealTime,Integer deviceId) {super();this.defectId = defectId;this.defectType = defectType;this.content = content;this.addTime = addTime;this.defectState = defectState;this.dealTime = dealTime;this.deviceId = deviceId;}public Defect() {super();// TODO Auto-generated constructor stub}}

bean包里的Device.java

package com.hnpi.bean;public class Device {private Integer deviceId;private String deviceName;public Integer getDeviceId() {return deviceId;}public void setDeviceId(Integer deviceId) {this.deviceId = deviceId;}public String getDeviceName() {return deviceName;}public void setDeviceName(String deviceName) {this.deviceName = deviceName;}public Device(Integer deviceId, String deviceName) {super();this.deviceId = deviceId;this.deviceName = deviceName;}public Device() {super();// TODO Auto-generated constructor stub}}

servlet包:
servlet包里的DefectAddServlet.java

package com.hnpi.servlet;import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.Timestamp;import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;import com.hnpi.util.DBUtil;public class DefectAddServlet extends HttpServlet {public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {doPost(request, response);}public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {request.setCharacterEncoding("utf-8");String deviceId = request.getParameter("deviceId");String defectState = request.getParameter("defectState");String content = request.getParameter("content");Connection conn = DBUtil.getConn();PreparedStatement ps = null;String sql = "insert into defect(defectType,contents,addTime,defectState,deviceId) values(?,?,?,?,?)";try {ps = conn.prepareStatement(sql);ps.setInt(1, Integer.parseInt(defectState));ps.setString(2, content);ps.setTimestamp(3, new Timestamp(System.currentTimeMillis()));ps.setInt(4, 1);ps.setInt(5, Integer.parseInt(deviceId));ps.executeUpdate();response.sendRedirect("defectList");} catch (Exception e) {// TODO: handle exceptione.printStackTrace();}finally{DBUtil.closeConn(conn, ps, null);}}}

servlet包里的DefectDel.java

package com.hnpi.servlet;import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.PreparedStatement;import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;import com.hnpi.util.DBUtil;public class DefectDel extends HttpServlet {public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {doPost(request, response);}public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {request.setCharacterEncoding("utf-8");String defectId = request.getParameter("id");Connection conn = DBUtil.getConn();PreparedStatement ps = null;String sql = "delete from defect where defectId = ?";try {ps = conn.prepareStatement(sql);ps.setInt(1, Integer.parseInt(defectId));ps.executeUpdate();response.sendRedirect("defectList");} catch (Exception e) {// TODO: handle exceptione.printStackTrace();}finally{DBUtil.closeConn(conn, ps, null);}}}

servlet包里的DefectListServlet.java

package com.hnpi.servlet;import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;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 com.hnpi.bean.Defect;
import com.hnpi.bean.Device;
import com.hnpi.util.DBUtil;public class DefectListServlet extends HttpServlet {public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {doPost(request, response);}public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {request.setCharacterEncoding("utf-8");String deviceId = request.getParameter("deviceId");String content = request.getParameter("content");String defectState = request.getParameter("defectState");Connection conn = DBUtil.getConn();PreparedStatement ps = null;ResultSet rs = null;String sql = "select * from defect where 1=1";List<Defect> defects = new ArrayList<Defect>();List<Device> devices = new ArrayList<Device>();Map<Integer, String> deviceMaps = new HashMap<Integer, String>();List<Object> params = new ArrayList<Object>();boolean deviceIdFlag = (deviceId != null && !"".equals(deviceId) && !"*".equals(deviceId));boolean contentFlag = (content != null && !"".equals(content));boolean defectStateFlag = (defectState != null && !"".equals(defectState) && !"*".equals(defectState));if (deviceIdFlag) {sql += " and deviceId = ?";params.add(Integer.parseInt(deviceId));}if (contentFlag) {sql += " and contents like ?";params.add("%"+ content +"%");}if (defectStateFlag) {sql += " and defectState = ?";params.add(Integer.parseInt(defectState));}try {ps = conn.prepareStatement(sql);for (int i = 1; i <= params.size(); i++) {Object obj = params.get(i-1);if (obj instanceof Integer) {ps.setInt(i, (Integer) obj);}if (obj instanceof String) {ps.setString(i, (String) obj);}}rs = ps.executeQuery();while (rs.next()) {Defect defect = new Defect(rs.getInt(1), rs.getInt(2), rs.getString(3), rs.getTimestamp(4),rs.getInt(5), rs.getTimestamp(6), rs.getInt(7));defects.add(defect);}sql = "select * from device";ps = conn.prepareStatement(sql);rs = ps.executeQuery();while (rs.next()) {Device device = new Device(rs.getInt(1), rs.getString(2));devices .add(device);deviceMaps.put(device.getDeviceId(), device.getDeviceName());}} catch (Exception e) {// TODO: handle exceptione.printStackTrace();}finally{DBUtil.closeConn(conn, ps, rs);}HttpSession session = request.getSession();session.setAttribute("defects", defects);session.setAttribute("devices", devices);session.setAttribute("deviceMaps", deviceMaps);response.sendRedirect("defectList.jsp");}}

servlet包里的DefectUp.java

package com.hnpi.servlet;import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.Timestamp;import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;import com.hnpi.util.DBUtil;public class DefectUp extends HttpServlet {public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {doPost(request, response);}public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {request.setCharacterEncoding("utf-8");String defectId = request.getParameter("id");Connection conn = DBUtil.getConn();PreparedStatement ps = null;String sql = "update defect set defectState = 2,dealTime = ? where defectId = ?";try {ps = conn.prepareStatement(sql);ps.setTimestamp(1, new Timestamp(System.currentTimeMillis()));ps.setInt(2, Integer.parseInt(defectId));ps.executeUpdate();response.sendRedirect("defectList");} catch (Exception e) {// TODO: handle exceptione.printStackTrace();}finally{DBUtil.closeConn(conn, ps, null);}}}

servlet包里的DeviceIdString.java

package com.hnpi.servlet;import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;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 com.hnpi.bean.Device;
import com.hnpi.util.DBUtil;public class DeviceIdString extends HttpServlet {public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {doPost(request, response);}public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {request.setCharacterEncoding("utf-8");Connection conn = DBUtil.getConn();PreparedStatement ps = null;ResultSet rs = null;List<Device> devices = new ArrayList<Device>();String sql = "select * from device";try {ps = conn.prepareStatement(sql);rs = ps.executeQuery();while (rs.next()) {Device device = new Device(rs.getInt(1), rs.getString(2));devices .add(device);}} catch (Exception e) {// TODO: handle exceptione.printStackTrace();}finally{DBUtil.closeConn(conn, ps, null);}HttpSession session = request.getSession();session.setAttribute("devices", devices);response.sendRedirect("defectAdd.jsp");}}

util包
util包里的DBUtil.java

package com.hnpi.util;import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;public class DBUtil {public static Connection getConn(){Connection conn = null;try {Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");conn = DriverManager.getConnection("jdbc:sqlserver://localhost:1433;databaseName=Test", "sa", "1");} catch (ClassNotFoundException e) {// TODO: handle exceptione.printStackTrace();}catch (SQLException e) {// TODO: handle exceptione.printStackTrace();}return conn;}public static void closeConn(Connection conn,PreparedStatement ps,ResultSet rs){try {if (conn != null) {conn.close();}if (ps != null) {ps.close();}if (rs != null) {rs.close();}} catch (SQLException e) {// TODO: handle exceptione.printStackTrace();}}
}

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5"><servlet><description>This is the description of my J2EE component</description><display-name>This is the display name of my J2EE component</display-name><servlet-name>DefectListServlet</servlet-name><servlet-class>com.hnpi.servlet.DefectListServlet</servlet-class></servlet><servlet><description>This is the description of my J2EE component</description><display-name>This is the display name of my J2EE component</display-name><servlet-name>DefectDel</servlet-name><servlet-class>com.hnpi.servlet.DefectDel</servlet-class></servlet><servlet><description>This is the description of my J2EE component</description><display-name>This is the display name of my J2EE component</display-name><servlet-name>DefectUp</servlet-name><servlet-class>com.hnpi.servlet.DefectUp</servlet-class></servlet><servlet><description>This is the description of my J2EE component</description><display-name>This is the display name of my J2EE component</display-name><servlet-name>DeviceIdString</servlet-name><servlet-class>com.hnpi.servlet.DeviceIdString</servlet-class></servlet><servlet><description>This is the description of my J2EE component</description><display-name>This is the display name of my J2EE component</display-name><servlet-name>DefectAddServlet</servlet-name><servlet-class>com.hnpi.servlet.DefectAddServlet</servlet-class></servlet><servlet-mapping><servlet-name>DefectListServlet</servlet-name><url-pattern>/defectList</url-pattern></servlet-mapping><servlet-mapping><servlet-name>DefectDel</servlet-name><url-pattern>/defectDel</url-pattern></servlet-mapping><servlet-mapping><servlet-name>DefectUp</servlet-name><url-pattern>/defectUp</url-pattern></servlet-mapping><servlet-mapping><servlet-name>DeviceIdString</servlet-name><url-pattern>/deviceId</url-pattern></servlet-mapping><servlet-mapping><servlet-name>DefectAddServlet</servlet-name><url-pattern>/defectAdd</url-pattern></servlet-mapping><welcome-file-list><welcome-file>defectList</welcome-file></welcome-file-list>
</web-app>

jsp页面
defectAdd.jsp

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@page import="com.hnpi.bean.Device"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><base href="<%=basePath%>"><title>My JSP 'defectAdd.jsp' starting page</title><meta http-equiv="pragma" content="no-cache"><meta http-equiv="cache-control" content="no-cache"><meta http-equiv="expires" content="0">    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"><meta http-equiv="description" content="This is my page"><!--<link rel="stylesheet" type="text/css" href="styles.css">--></head><body><form action="defectAdd" method="post"><table border="1" cellspacing="0"><tr><td align="center" colspan="2">添加缺陷</td></tr><tr><td>所属设备:</td><td><select name="deviceId"><option selected="selected">--请选择--</option><%List<Device> devices = (List)session.getAttribute("devices");for(Device device : devices){%><option value="<%=device.getDeviceId() %>"><%=device.getDeviceName() %></option><%} %></select></td></tr><tr><td>缺陷类型:</td><td><input type="radio" name="defectState" id="state1" value="1"/><label for="state1">紧急</label><input type="radio" name="defectState" id="state2" value="2"/><label for="state1">重要</label><input type="radio" name="defectState" id="state3" value="3"/><label for="state1">一般</label></td></tr><tr><td>缺陷内容:</td><td><textarea rows="4" cols="24" name="content"></textarea></td></tr><tr><td></td><td><input type="submit" value="添加"/><a href="defectList"><input type="button" value="返回到列表"/></a></td></tr></table></form></body>
</html>

defectList.jsp

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@page import="com.hnpi.bean.Device"%>
<%@page import="com.hnpi.bean.Defect"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><base href="<%=	basePath%>"><script src="jquery-3.3.1.js"></script><title>My JSP 'index.jsp' starting page</title></head><body><form action="defectList" method="post">所属设备:<select name="deviceId"><option selected="selected" value="*">全部设备</option><%List<Device> devices = (List)session.getAttribute("devices");for(Device device : devices){%><option value="<%=device.getDeviceId() %>"><%=device.getDeviceName() %></option><%} %></select>缺陷内容:<input type="text" name="content"/>缺陷状态:<input type="radio" name="defectState" id="state1" value="1"/><label for="state1">未解决</label><input type="radio" name="defectState" id="state2" value="2"/><label for="state1">已解决</label><input type="radio" name="defectState" id="state3" value="*"/><label for="state1">全部</label><input type="submit" value="查询"/><a href="deviceId"><input type="button" value="添加"/></a></form><table border="1" cellspacing="0"><thead><tr><td>所属设备</td><td>缺陷类型</td><td>缺陷内容</td><td>缺陷添加时间</td><td>缺陷状态</td><td>缺陷处理时间</td><td>操作</td></tr></thead><tbody><%List<Defect> defects = (List)session.getAttribute("defects");Map<Integer,String> deviceMaps = (HashMap)session.getAttribute("deviceMaps");for(Defect defect : defects){ %><tr><td><%=deviceMaps.get(defect.getDeviceId()) %></td><td><%if(defect.getDefectType() == 1){ %>紧急<%} %><%if(defect.getDefectType() == 2){ %>重要<%} %><%if(defect.getDefectType() == 3){ %>一般<%} %></td><td><%=defect.getContent() %></td><td><%=defect.getAddTime() %></td><td><%if(defect.getDefectState() == 1){ %>未处理<%} %><%if(defect.getDefectState() == 2){ %>已处理<%} %></td><td><%=defect.getDealTime() %></td><td><a style="display:<%=defect.getDefectState()!=1?"none":"block"%>" href="defectUp?id=<%=defect.getDefectId() %>"><input type="button" value="处理缺陷" id="up"/></a><a href="defectDel?id=<%=defect.getDefectId()%>"><input type="button" value="删除"/></a></td></tr><%} %></tbody></table></body>
</html>

程序已经完全结束,赶快去试试吧!!!

扫一扫添加我的微信公众号获取更多资讯呦!!!
在这里插入图片描述

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

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

相关文章

【OpenCV 例程200篇】82. 频率域巴特沃斯低通滤波器

【OpenCV 例程200篇】82. 频率域巴特沃斯低通滤波器 欢迎关注 『OpenCV 例程200篇』 系列&#xff0c;持续更新中 欢迎关注 『Python小白的OpenCV学习课』 系列&#xff0c;持续更新中 3.4 频率域巴特沃斯低通滤波器&#xff08;BLPF&#xff09; 截止频率位于距频率中心 D0D_…

商品管理系统

用Jsp Servlet和Jquery以及SQLServer实现商品管理系统。 采用MVC三层架构进行此程序的开发。 功能分析&#xff1a; 1.登录功能 2.查询和联合查询商品 3.增加商品 4.删除商品 效果演示 登录页面 查询页面 添加商品 点击删除 实现商品管理系统需要数据库和程序两部分。…

【OpenCV 例程200篇】83. 频率域低通滤波:印刷文本字符修复

【OpenCV 例程200篇】83. 频率域低通滤波案例&#xff1a;印刷文本字符修复 欢迎关注 『OpenCV 例程200篇』 系列&#xff0c;持续更新中 欢迎关注 『Python小白的OpenCV学习课』 系列&#xff0c;持续更新中 3.5 频率域低通滤波&#xff1a;印刷文本字符修复 低通滤波技术主要…

Python入门基础篇(五)字符串的正则表达式re模块,全面解析!!!

文章目录前言一.匹配字符串的方法1.使用match()方法进行匹配2.使用search()方法进行匹配3.使用findall方法进行匹配二.替换字符串三.使用正则表达式分割字符串前言 Python中提供了re模块用于正则表达式的操作&#xff0c;在实现时可以用re模块提供的多种方法对字符串进行处理&…

Vue 动态数据滚动

使用Vue动态滚动&#xff08;上下滚动&#xff09;显示将要展示的讯息。 代码分析&#xff1a; 1.设置固定样式的框架内容 2.设置红色字体内容是动态变化的 3.滚动效果为向上滚动 效果演示&#xff1a; 此效果图的数据是不停滚动变化的 第二张效果图 代码演示&#xff1a…

Python入门进阶篇(六)字典的介绍

请仔细阅读哦&#xff01;&#xff01;&#xff01; 文章目录前言一、Python字典的创建与删除1.字典的创建2.字典的删除二、Python字典的访问1.通过“键值对”访问字典2.遍历字典三、Python字典的添加、修改和删除元素1.字典元素的添加2.修改字典元素3.删除字典元素前言 前面写…

【OpenCV 例程200篇】84. 由低通滤波器得到高通滤波器

【OpenCV 例程200篇】84. 由低通滤波器得到高通滤波器 欢迎关注 『OpenCV 例程200篇』 系列&#xff0c;持续更新中 欢迎关注 『Python小白的OpenCV学习课』 系列&#xff0c;持续更新中 4. 频率域高通滤波器 图像边缘化其它灰度的急剧变化与高频分量有关&#xff0c;因此可以…

Vue 数字时钟

用Vue写了一个简单的时间钟。 此时钟内容包括年月日及星期和时分秒。 功能分析&#xff1a; 1.年份&#xff0c;日期&#xff0c;时间的显示 2.动态的变化 3.获取本地时间方法 效果图演示 代码演示 注意&#xff1a;引入vue.min.js架包 <script src"js/vue.min.js…

【OpenCV 例程200篇】85. 频率域高通滤波器的应用

【OpenCV 例程200篇】85. 频率域高通滤波器的应用 欢迎关注 『OpenCV 例程200篇』 系列&#xff0c;持续更新中 欢迎关注 『Python小白的OpenCV学习课』 系列&#xff0c;持续更新中 4. 频率域高通滤波器 图像边缘化其它灰度的急剧变化与高频分量有关&#xff0c;因此可以在频…

【OpenCV 例程200篇】86. 频率域滤波应用:指纹图像处理

【OpenCV 例程200篇】86. 频率域滤波应用&#xff1a;指纹图像处理 欢迎关注 『OpenCV 例程200篇』 系列&#xff0c;持续更新中 欢迎关注 『Python小白的OpenCV学习课』 系列&#xff0c;持续更新中 4. 频率域高通滤波器 图像边缘化其它灰度的急剧变化与高频分量有关&#xf…

商品销售管理系统

用JSP servlet和jquery以及SQLServer数据库实现商品销售管理系统。 功能详解&#xff1a; 1.查询商品 2.添加商品 3.删除商品 4.添加销售记录 5.查看销售记录 效果演示&#xff1a; 进入界面 商品显示页面 删除提示 销售记录查询 商品销售系统需要SQLServer数据库和程序…

【OpenCV 例程200篇】87. 频率域钝化掩蔽

【OpenCV 例程200篇】87. 频率域钝化掩蔽 欢迎关注 『OpenCV 例程200篇』 系列&#xff0c;持续更新中 欢迎关注 『Python小白的OpenCV学习课』 系列&#xff0c;持续更新中 4.2 频率域钝化掩蔽 简单地&#xff0c;从原始图像中减去一幅平滑处理的钝化图像&#xff0c;也可以实…

拼图验证码

H5的Canvas实现一个拼图验证码。 功能分析&#xff1a; 1.验证码图片的生成 2.滑块图片的显示 3.底部滑块的横向移动 4.滑块上的文字显示 效果演示&#xff1a; 初始状态 滑动成功之后 有没有一种心动的感觉呢&#xff1f;&#xff1f;&#xff1f; 代码演示 注意&#x…

【OpenCV 例程200篇】88. 频率域拉普拉斯高通滤波

【OpenCV 例程200篇】88. 频率域拉普拉斯高通滤波 欢迎关注 『OpenCV 例程200篇』 系列&#xff0c;持续更新中 欢迎关注 『Python小白的OpenCV学习课』 系列&#xff0c;持续更新中 4.3 频率域拉普拉斯高通滤波 拉普拉斯算子&#xff08;Laplace&#xff09;是导数算子&#…

顶部导航栏

HTML和CSS实现顶部导航栏&#xff0c;二级菜单的实现。 原理分析&#xff1a; 1.使用ul(无需列表)嵌套ul(无序列表) 2.鼠标放上改变背景颜色 3.二级菜单的显示 效果演示&#xff1a; 初始样式 鼠标放上 代码演示 <!DOCTYPE html> <html><head><meta …

VSCode配置Python的教程

本文基于Windows系统 超详细VSCode安装教程&#xff08;Windows&#xff09; 博主的VSCode专栏&#xff1a;分享使用VSCode的基本操作与各种技巧 刚刚开始学习Python时&#xff0c;按照老师提供的傻瓜式操作配好Python后&#xff0c;发现它自带了一个ide&#xff1a;IDLE&…

【OpenCV 例程200篇】89. 带阻滤波器的传递函数

【OpenCV 例程200篇】89. 带阻滤波器的传递函数 欢迎关注 『OpenCV 例程200篇』 系列&#xff0c;持续更新中 欢迎关注 『Python小白的OpenCV学习课』 系列&#xff0c;持续更新中 5.1 带阻与带通 空间域和频率域线性滤波器可以分为四类&#xff1a;低通滤波器、高通滤波器、带…

用Python海归作图--turtle,画椭圆

想必大家都想过用Python中的turtle画出椭圆吧&#xff0c;自己思考了许久&#xff0c;终于琢磨着画出了椭圆&#xff0c;但是我不知道这个方法是不是最简单的&#xff0c;是不是正确的&#xff0c;如果有错误请指正&#xff0c;如果觉得好用就尽管拿去用&#xff0c;哈哈哈 代码…

【OpenCV 例程200篇】90. 频率域陷波滤波器

【OpenCV 例程200篇】90. 频率域陷波滤波器 欢迎关注 『OpenCV 例程200篇』 系列&#xff0c;持续更新中 欢迎关注 『Python小白的OpenCV学习课』 系列&#xff0c;持续更新中 5.2 陷波滤波器 &#xff08;Notch Filter&#xff09; 陷波滤波器阻止或通过预定的频率矩形邻域中…

简单导航栏

实现一个简单的导航栏。 使用HTML和CSS实现简单的导航栏效果&#xff0c;鼠标放上改变背景杨色。 效果演示 代码演示 <!DOCTYPE html> <html><head><meta charset"utf-8"><title></title></head><style>ul{width…