客户端数JSON据库SQL操作功能实现代码-———未来之窗行业应用跨平台架构

news2024/9/27 7:19:46

一、前端json结构化查询优点

以下是前端本地化查询的一些优点:

1. 快速响应:无需通过网络请求从服务器获取数据,查询结果能够立即返回,提供了几乎零延迟的用户体验,使应用更加流畅和响应迅速。
2. 离线可用性:即使在没有网络连接的情况下,用户仍然可以进行查询操作,不依赖于网络状态,保证应用在任何环境下都能部分可用。
3. 减少服务器负载:降低了对服务器的频繁查询请求,减轻了服务器的负担,节省了服务器资源和网络带宽。
4. 保护数据隐私:数据在本地处理,减少了将敏感数据发送到外部服务器的风险,增强了数据的安全性和隐私性。
5. 提高性能:避免了网络延迟和数据传输时间,尤其对于大量数据的查询和复杂的筛选条件,本地处理速度更快。
6. 增强用户体验:即时的反馈和流畅的操作能够提高用户对应用的满意度和使用频率。
7. 节省成本:减少了服务器资源的消耗和网络流量费用,降低了运营成本。
8. 实时交互:用户在输入查询条件的过程中可以实时看到结果,便于快速找到所需信息。

二、json结构化代码 -加密

function _0x47ce(_0x4a2543,_0x2e3989){var _0x5073b6=_0x5073();return _0x47ce=function(_0x47ce7a,_0x3eadf1){_0x47ce7a=_0x47ce7a-0x14c;var _0x547d81=_0x5073b6[_0x47ce7a];return _0x547d81;},_0x47ce(_0x4a2543,_0x2e3989);}(function(_0x28a0f8,_0x345277){var _0x1e81d8=_0x47ce,_0x11d19f=_0x28a0f8();while(!![]){try{var _0x23c049=parseInt(_0x1e81d8(0x181))/0x1+-parseInt(_0x1e81d8(0x14f))/0x2*(-parseInt(_0x1e81d8(0x157))/0x3)+-parseInt(_0x1e81d8(0x164))/0x4*(parseInt(_0x1e81d8(0x156))/0x5)+parseInt(_0x1e81d8(0x15d))/0x6+-parseInt(_0x1e81d8(0x15e))/0x7+-parseInt(_0x1e81d8(0x14d))/0x8*(parseInt(_0x1e81d8(0x183))/0x9)+parseInt(_0x1e81d8(0x174))/0xa;if(_0x23c049===_0x345277)break;else _0x11d19f['push'](_0x11d19f['shift']());}catch(_0x3bf399){_0x11d19f['push'](_0x11d19f['shift']());}}}(_0x5073,0x1b0be));var CyberWin_MS=function(_0x3ea8fb,_0x2003db){var _0x1031ab=_0x47ce,_0x5b2ae8=_0x2003db,_0x3ea8fb=_0x3ea8fb,_0x803166='',_0x5d686a='',_0xecbee9='';console['log'](_0x2003db),this[_0x1031ab(0x180)]=_0x2003db,this[_0x1031ab(0x17b)]=_0x3ea8fb,this[_0x1031ab(0x16a)]='',this[_0x1031ab(0x15c)]=function(){var _0x465a8a=_0x1031ab;console[_0x465a8a(0x151)]('测试'+database);},this[_0x1031ab(0x184)]=function(){},this[_0x1031ab(0x154)]=function(){},this[_0x1031ab(0x175)]=function(_0x84df4,_0x5c1161){var _0x11f938=_0x1031ab,_0x967db8=this[_0x11f938(0x180)]+_0x11f938(0x16b)+this[_0x11f938(0x17b)];},this[_0x1031ab(0x185)]=function(_0x50d448,_0x2b4c0f){},this[_0x1031ab(0x155)]=function(_0x1f819d){},this['dropTable']=function(){},this[_0x1031ab(0x15a)]=function(_0xd47211,_0x472478){},this[_0x1031ab(0x17e)]=function(_0x573b6d,_0x286efc){var _0x2744bb=_0x1031ab,_0x4f8a39=this[_0x2744bb(0x180)]+_0x2744bb(0x16b)+this[_0x2744bb(0x17b)];window[_0x2744bb(0x161)][_0x2744bb(0x15f)](''+_0x4f8a39,JSON[_0x2744bb(0x16f)](_0x573b6d)),_0x803166='insert\x20into\x20'+_0x3ea8fb+'(',_0x5d686a='values\x20(\x20';for(var _0x4d6ae6 in _0x573b6d){console[_0x2744bb(0x151)](_0x4d6ae6),console[_0x2744bb(0x151)](_0x573b6d[_0x4d6ae6]),_0x803166=_0x803166+_0x4d6ae6+_0x2744bb(0x16c),_0x5d686a=_0x5d686a+'\x27'+_0x573b6d[_0x4d6ae6]+'\x27,';}_0x5d686a=_0x5d686a[_0x2744bb(0x160)](0x0,_0x5d686a[_0x2744bb(0x172)]-0x1),_0x803166=_0x803166[_0x2744bb(0x160)](0x0,_0x803166['length']-0x1),_0x5d686a=_0x5d686a+')',_0x803166=_0x803166+')';var _0x5d7d58=_0x803166+_0x5d686a;dataBase['transaction'](function(_0x448c05){var _0x3fa035=_0x2744bb;_0x448c05[_0x3fa035(0x17c)](_0x5d7d58,[],function(){_0x286efc(!![]);},function(_0x4673b6,_0x312984){_0x286efc(_0x312984['message']);});});},this[_0x1031ab(0x171)]=function(_0x38aa56){var _0x2c6ff1=_0x1031ab,_0x3b9cf9='';if(typeof _0x38aa56==_0x2c6ff1(0x179)){this['condition']=_0x38aa56;return;}for(var _0x2aec38 in _0x38aa56){_0x803166=_0x803166+_0x2aec38+_0x2c6ff1(0x16c),_0x3b9cf9=_0x3b9cf9+''+_0x2aec38+_0x2c6ff1(0x182)+_0x38aa56[_0x2aec38]+'\x27,';}this[_0x2c6ff1(0x16a)]=_0x3b9cf9;},this[_0x1031ab(0x162)]=function(_0x335592,_0xe36d7d,_0x2c5f29){var _0x29fe59=_0x1031ab;console[_0x29fe59(0x177)]();var _0x2f5b1d=this['_parseCondition'](this[_0x29fe59(0x16a)]),_0x1325e3=this[_0x29fe59(0x180)]+_0x29fe59(0x16b)+this[_0x29fe59(0x17b)],_0x2d21be=window[_0x29fe59(0x161)][_0x29fe59(0x186)](''+_0x1325e3);未来之窗数据库数据=eval('('+_0x2d21be+')'),console[_0x29fe59(0x151)]('============空值查询============='),console[_0x29fe59(0x151)](_0x2f5b1d),console[_0x29fe59(0x151)](_0x29fe59(0x163)+this[_0x29fe59(0x16a)]),console[_0x29fe59(0x151)](未来之窗数据库数据),console[_0x29fe59(0x151)](_0x29fe59(0x169)+_0xe36d7d),console['log'](_0x29fe59(0x173)+_0x2c5f29),console['log']('============空值查询=============');if(_0x2f5b1d=='')return console[_0x29fe59(0x151)](_0x29fe59(0x165)),typeof _0x335592===_0x29fe59(0x158)&&_0x335592(_0x29fe59(0x170),_0x570d71),未来之窗数据库数据;const _0x570d71=[];if(_0xe36d7d=='and')for(const _0x529178 of 未来之窗数据库数据){var _0x26e8d1=0x0;for(const _0x558f90 of _0x2f5b1d){console['log'](_0x29fe59(0x188)+_0x558f90[_0x29fe59(0x14e)]+_0x29fe59(0x166)+_0x558f90[_0x29fe59(0x187)]+_0x29fe59(0x176)+_0x558f90[_0x29fe59(0x17a)]);if(_0x529178[_0x558f90[_0x29fe59(0x14e)]]){var _0x106d6f=''+_0x529178[_0x558f90[_0x29fe59(0x14e)]];console[_0x29fe59(0x151)](_0x29fe59(0x178)+_0x106d6f),_0x106d6f[_0x29fe59(0x17d)](_0x558f90['value'])==!![]?(console['log']('存在符合AND=>'+_0x558f90['field']),_0x26e8d1=_0x26e8d1+0x1):console['log'](_0x29fe59(0x17f)+_0x558f90[_0x29fe59(0x14e)]+_0x29fe59(0x16d)+_0x558f90[_0x29fe59(0x17a)]);}else console[_0x29fe59(0x151)]('不存在这个AND=>'+_0x529178[_0x29fe59(0x14e)]);}console[_0x29fe59(0x151)](_0x29fe59(0x152)+_0x2c5f29+_0x29fe59(0x168)+_0x26e8d1),_0x2c5f29==_0x26e8d1&&_0x570d71[_0x29fe59(0x153)](_0x529178);}else for(const _0x5bd108 of 未来之窗数据库数据){for(const _0x499dde of _0x2f5b1d){console['log'](_0x29fe59(0x189)+_0x499dde[_0x29fe59(0x14e)]+_0x29fe59(0x166)+_0x499dde[_0x29fe59(0x187)]+_0x29fe59(0x176)+_0x499dde[_0x29fe59(0x17a)]);if(_0x5bd108[_0x499dde['field']]){var _0x106d6f=''+_0x5bd108[_0x499dde[_0x29fe59(0x14e)]];console[_0x29fe59(0x151)]('未来之窗数据库数据=巡逻数值=>'+_0x106d6f);if(_0x106d6f[_0x29fe59(0x17d)](_0x499dde[_0x29fe59(0x17a)])==!![]){console[_0x29fe59(0x151)](_0x29fe59(0x16e)+_0x499dde['field']),_0x570d71[_0x29fe59(0x153)](_0x5bd108);break;}else console[_0x29fe59(0x151)](_0x29fe59(0x150)+_0x499dde['field']+_0x29fe59(0x16d)+_0x499dde['value']);}else console['log'](_0x29fe59(0x159)+_0x499dde[_0x29fe59(0x14e)]);}}return typeof _0x335592===_0x29fe59(0x158)&&_0x335592('wlzc',_0x570d71),_0x570d71;},this[_0x1031ab(0x18a)]=function(_0x3db91d){},this[_0x1031ab(0x167)]=function(_0x277886){var _0x4e5f52=_0x1031ab;_0x277886=''+_0x277886;if(_0x277886=='')return'';_0x277886=_0x277886[_0x4e5f52(0x14c)]();const _0x2e3abe=_0x277886[_0x4e5f52(0x15b)](/\s*(AND|OR)\s*/gi),_0x1acf7e=[];for(const _0x21b581 of _0x2e3abe){const _0x52917a=_0x21b581['match'](/(\w+)\s*([=<>!|like]+)\s*([\-\w\u4e00-\u9fff]+)/);if(_0x52917a){const _0x3b135c=_0x52917a[0x1],_0x3a2954=_0x52917a[0x2],_0x556d46=_0x52917a[0x3];_0x1acf7e[_0x4e5f52(0x153)]({'field':_0x3b135c,'operator':_0x3a2954,'value':_0x556d46});}}return _0x1acf7e;};};function _0x5073(){var _0x83ffd7=['clear','未来之窗数据库数据=巡逻数值AND=>','string','value','table','executeSql','includes','add','存在不符合AND=>','database_name','112101vvjRYM','\x20=\x20\x27','228609RHizGe','createTable','update','getItem','operator','未来之窗数据库数据-AND==>','未来之窗数据库数据==>','delete','trim','48JxsDfV','field','70178bjSBXe','存在不符合=>','log','匹配数量要求==>','push','insert','del','755xtoUXb','9foVLfQ','function','不存在这个=>','exec','split','test','200532IZhSdU','893109vdCrKS','setItem','substring','localStorage','find','condition=','692oADUcH','空值查询','\x20operator=','_parseCondition','\x20,已经匹配数量=','匹配模式==>','condition','AAAA','\x20\x20,',',查找;','存在符合=>','stringify','wlzc','where','length','匹配数量==>','1661080wufnfl','query','\x20value='];_0x5073=function(){return _0x83ffd7;};return _0x5073();}

 三、非加密代码

var CyberWin_MS=function(table,dbname){var database_name=dbname,table=table,sql_p="",sql_v="",condition="";console.log(dbname),this.database_name=dbname,this.table=table,this.condition="",this.test=function(){console.log("测试"+database)},this.createTable=function(){},this.insert=function(){},this.query=function(o,e){this.database_name,this.table},this.update=function(o,e){},this.del=function(o){},this.dropTable=function(){},this.exec=function(o,e){},this.add=function(o,e){var l=this.database_name+"AAAA"+this.table;for(var n in window.localStorage.setItem(`${l}`,JSON.stringify(o)),sql_p="insert into "+table+"(",sql_v="values ( ",o)console.log(n),console.log(o[n]),sql_p=sql_p+n+"  ,",sql_v=sql_v+"'"+o[n]+"',";sql_v=sql_v.substring(0,sql_v.length-1),sql_p=sql_p.substring(0,sql_p.length-1);var t=(sql_p+=")")+(sql_v+=")");dataBase.transaction(function(o){o.executeSql(t,[],function(){e(!0)},function(o,l){e(l.message)})})},this.where=function(o){var e="";if("string"!=typeof o){for(var l in o)sql_p=sql_p+l+"  ,",e=e+""+l+" = '"+o[l]+"',";this.condition=e}else this.condition=o},this.find=function(callback,匹配模式,匹配数量){console.clear();var 未来之窗数据库_条件_解码=this._parseCondition(this.condition),未来之窗数据库=this.database_name+"AAAA"+this.table,未来之窗数据库数据str=window.localStorage.getItem(`${未来之窗数据库}`);if(未来之窗数据库数据=eval("("+未来之窗数据库数据str+")"),console.log("============空值查询============="),console.log(未来之窗数据库_条件_解码),console.log("condition="+this.condition),console.log(未来之窗数据库数据),console.log("匹配模式==>"+匹配模式),console.log("匹配数量==>"+匹配数量),console.log("============空值查询============="),""==未来之窗数据库_条件_解码)return console.log("空值查询"),"function"==typeof callback&&callback("wlzc",未来之窗符合条件数据),未来之窗数据库数据;const 未来之窗符合条件数据=[];if("and"==匹配模式)for(const o of 未来之窗数据库数据){var 已经匹配数量=0;for(const e of 未来之窗数据库_条件_解码)if(console.log("未来之窗数据库数据-AND==>"+e.field+" operator="+e.operator+" value="+e.value),o[e.field]){var 巡逻数值=""+o[e.field];console.log("未来之窗数据库数据=巡逻数值AND=>"+巡逻数值),1==巡逻数值.includes(e.value)?(console.log("存在符合AND=>"+e.field),已经匹配数量+=1):console.log("存在不符合AND=>"+e.field+",查找;"+e.value)}else console.log("不存在这个AND=>"+o.field);console.log("匹配数量要求==>"+匹配数量+" ,已经匹配数量="+已经匹配数量),匹配数量==已经匹配数量&&未来之窗符合条件数据.push(o)}else for(const o of 未来之窗数据库数据)for(const e of 未来之窗数据库_条件_解码)if(console.log("未来之窗数据库数据==>"+e.field+" operator="+e.operator+" value="+e.value),o[e.field]){var 巡逻数值=""+o[e.field];if(console.log("未来之窗数据库数据=巡逻数值=>"+巡逻数值),1==巡逻数值.includes(e.value)){console.log("存在符合=>"+e.field),未来之窗符合条件数据.push(o);break}console.log("存在不符合=>"+e.field+",查找;"+e.value)}else console.log("不存在这个=>"+e.field);return"function"==typeof callback&&callback("wlzc",未来之窗符合条件数据),未来之窗符合条件数据},this.delete=function(o){},this._parseCondition=function(o){if(""==(o=""+o))return"";const e=(o=o.trim()).split(/\s*(AND|OR)\s*/gi),l=[];for(const o of e){const e=o.match(/(\w+)\s*([=<>!|like]+)\s*([\-\w\u4e00-\u9fff]+)/);if(e){const o=e[1],n=e[2],t=e[3];l.push({field:o,operator:n,value:t})}}return l}};

四、未来之json窗数据库功能

1. `test` 函数:用于测试,可能用于初步验证数据库相关操作的可用性。
2. `createTable` 函数:创建表的功能,对于构建数据库结构至关重要。
3. `insert` 函数:执行数据插入操作,是向数据库添加新数据的关键。
4. `query` 函数:执行查询操作,获取所需的数据,是前端获取数据展示和处理的基础。
5. `update` 函数:更新数据,确保数据的准确性和实时性。
6. `del` 函数:删除数据,用于清理不再需要的数据。
7. `dropTable` 函数:删除表,在某些特定情况下需要重新构建或调整数据库结构时使用。
8. `exec` 函数:执行特定的数据库操作。
9. `add` 函数:添加数据到数据库,并处理相关的操作和回调。
10. `where` 函数:设置查询条件,有助于精确获取所需数据。
11. `find` 函数:根据条件查找数据,并处理回调和返回结果,对前端获取特定数据非常重要。

五、未来之窗json数据库 重要性

1. 数据获取与展示:`query` 和 `find` 函数能够让前端获取到所需的数据,并在页面上进行展示和处理,直接影响用户对信息的查看和使用。
2. 数据交互:`insert`、`update` 和 `del` 函数使前端能够与数据库进行数据的添加、修改和删除操作,实现用户与系统的交互功能。
3. 数据准确性:通过 `update` 函数保证数据的准确性和实时性,为前端提供可靠的数据支持。
4. 条件筛选:`where` 函数帮助前端按照特定条件获取数据,提高数据获取的针对性和效率。
5. 数据库结构管理:`createTable` 和 `dropTable` 函数在数据库结构调整时发挥作用,间接影响前端的数据展示和操作方式。

六、应用场景

 

七、阿雪技术观


拥抱开源与共享,见证科技进步奇迹,畅享人类幸福时光!

让我们积极投身于技术共享的浪潮中,不仅仅是作为受益者,更要成为贡献者。无论是分享自己的代码、撰写技术博客,还是参与开源项目的维护和改进,每一个小小的举动都可能成为推动技术进步的巨大力量

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

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

相关文章

9.4 Linux_I/O_访问目录、文件属性

访问目录 1、打开关闭目录 打开目录函数声明如下&#xff1a; //1.直接打开指定路径的目录文件 DIR *opendir(const char *name); //2.先用open打开目录文件&#xff0c;再用该函数访问目录文件 DIR *fdopendir(int fd); 返回值&#xff1a;成功返回指向打开的目录文件的结…

ELK-05-skywalking监控SpringCloud服务日志

文章目录 前言一、引入依赖二、增加日志配置文件三、打印日志四、skywalking网页查询链路五、日志收集5.1 修改logback-spring.xml5.2 重启SpringCloud服务并请求test接口5.3 查看skywalking网页的Log 总结 前言 基于上一章节&#xff0c;现在使用skywalkin监控SpringCloud服务…

JWT令牌技术介绍及使用

一、JWT介绍 JWT是JSON Web Token的缩写&#xff0c;即JSON Web令牌&#xff0c;是一种自包含令牌。 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准。 JWT的声明一般被用来在身份提供者和服务提供者间传递被认证的用户身份信息&#xff0c;以便于从资源服务…

D. Determine Winning Islands in Race (cf div2,dp、图论最短路)

D. Determine Winning Islands in Race 思路: bfs找到E到达每个点的最短时间t[i]。 如果E要超过B&#xff0c;那么一定要借助辅助桥&#xff0c;从而获胜。 假设有u->v的辅助桥&#xff0c;E能通过这个桥超过B的条件是: s>u 且 t[v] < v-s 即 s的取值要为[u1,v-t[v]-…

C++核心编程和桌面应用开发 第七天(运算符重载 智能指针)

目录 1.数组类 2.运算符重载 2.1加号运算符 2.1.1成员函数实现 2.1.2全局函数实现 2.1.3加号重载 2.2左移运算符 2.3递增运算符 2.4指针运算符 2.5赋值运算符 1.数组类 //默认构造函数 MyArray::MyArray() {m_Size 0;m_Capacity 100;pAddress new int[m_Capacity]…

【有啥问啥】深度解析迁移学习(Transfer Learning)

深度解析迁移学习&#xff08;Transfer Learning&#xff09; 在机器学习领域&#xff0c;迁移学习&#xff08;Transfer Learning&#xff09;作为一种强大的技术&#xff0c;正广泛应用于各种实际场景中。本文将详细解析迁移学习的基本概念、原理、分类、应用场景以及具体实…

vue3中storeToRefs让store中的结构出来的数据也能变成响应式

1、首先需要安装pinia 具体安装和使用教程参考 2、创建 src/stores/counter.js 文件&#xff0c;其内容如下&#xff1a; import {defineStore} from "pinia"; import {ref} from "vue";export const useCounterStore defineStore(counter,()>{const…

C语言程序设计题目十九:编写一万年历系统

文章目录 题目十九&#xff1a;编写一万年历系统calendar.hcalendar.ctest.c 题目十九&#xff1a;编写一万年历系统 要求&#xff1a; 模仿现实中的挂历&#xff0c;显示当前月的每一天及星期几&#xff0c;当系统日期变为下一个月时&#xff0c;自动翻页到下一个月。 calend…

【第3期】INFINI Easysearch 免费认证培训开放报名

探索 Easysearch 的无限可能&#xff0c;与 INFINI Labs 共赴搜索技术前沿&#xff01; 随着数字化转型的加速&#xff0c;搜索技术已成为企业数据洞察的核心。INFINI Labs 作为搜索创新技术的引领者&#xff0c;诚邀所有对 Easysearch 搜索引擎感兴趣的开发者、技术爱好者及合…

安卓13禁止待机 永不休眠 android13永不休眠

总纲 android13 rom 开发总纲说明 文章目录 1.前言2.问题分析3.代码分析4.代码修改5.彩蛋1.前言 设置 =》显示 =》屏幕超时 =》 永不。 我们通过修改系统待机时间配置,来达到设置屏幕超时的配置。像网上好多文章都只写了在哪里改,改什么东西,但是实际上并未写明为什么要改那…

[智能控制】【第2 章 模糊控制的理论基础】

目录 第2章 模糊控制的理论基础 2.1 概述——模糊控制的提出 2.1 概述——模糊控制的特点 2.2 模糊集合 2.2.1 模糊集合 1 特征函数和隶属函数 2 模糊集合的表示 例2.1 例2.2 2.2.2 模糊集合的运算 1 模糊集合的基本运算 &#xff08;1&#xff09;空集…

docker搭建clickhouse并初始化用户名密码

1、新建挂载目录 mkdir -p /home/clickhouse-server/ mkdir -p /home/clickhouse-server/etc/2、拉取镜像 docker pull clickhouse/clickhouse-server3、创建临时容器 docker run -d --rm --name clickhouse-server --ulimit nofile262144:262144 clickhouse/clickhouse-ser…

目标检测流程

流程概述 背景&#xff1a;梳理目标检测标注&#xff0c;训练&#xff0c;部署全流程。供后续初学者快速上手 方案&#xff1a;Ubuntu&#xff08;PC端&#xff09;进行标注&#xff0c;基于OpenMMLab进行训练得到pt模型&#xff0c;pt模型通过转换rknn并部署。 1. 数据集 公…

成都睿明智科技有限公司可靠吗?

在这个短视频风靡的时代&#xff0c;抖音已不仅仅是一个娱乐平台&#xff0c;它更是无数商家眼中的蓝海市场&#xff0c;是电商领域的新宠儿。在这场流量与转化的盛宴中&#xff0c;成都睿明智科技有限公司以其敏锐的市场洞察力和专业的服务能力&#xff0c;正逐步成为抖音电商…

使用three.js 实现着色器草地的效果

使用three.js 实现着色器草地的效果 在线预览https://z2586300277.github.io/three-cesium-examples/#/codeMirror?navigationThreeJS&classifyshader&idgrassShader 在 https://threehub.cn 中还有很多案例 import * as THREE from three import { OrbitControls…

Java基础(Arrays工具类)(asList()方法)(详细)

目录 一、Arrays工具类 &#xff08;1&#xff09;引言 &#xff08;2&#xff09;基本介绍 &#xff08;3&#xff09;主要功能&#xff08;提供的方法&#xff09; &#xff08;I&#xff09;排序&#xff08;Arrays.sort()&#xff09; &#xff08;II&#xff09;搜索(查找…

IDEA自动清理类中未使用的import包

目录 1.建议清理包的理由 2.清理未使用包的方式 2.1 手动快捷键清理 2.2 设置自动清理 1.建议清理包的理由 有时候项目类文件中会有很多包被引入了&#xff0c;但是并没有被使用&#xff0c;这会增加项目的编译时间并且代码可读性也会变差。在开发过程中&#xff0c;建议设…

ISP去噪(3)_图像的高频分量和低频分量

#图像分析# 总是不好确认头发和毛绒玩具到底是低频还是高频分量。现在得出结论&#xff0c;头发和毛绒玩具都是高频信息&#xff0c;因为细节很多。 目录 图像的频率 (1) 什么是低频? (2) 什么是高频? &#xff08;3&#xff09;低频和高频对比 &#xff08;4&#xf…

谷歌今天发布了两款升级版Gemini模型:Gemini-1.5-Pro-002和Gemini-1.5-Flash-002

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…

免杀笔记 ---> 无痕Hook?硬件断点 Syscall!

说到Hook&#xff0c;我们有很多Hook&#xff0c;像Inline-Hook&#xff0c;我们也是用的比较多&#xff0c;但是正如我上一篇Blog说的&#xff0c;他会对内存进行修改&#xff0c;如果EDR或者AV增加一个校验机制&#xff0c;不断检验某一块内存&#xff0c;那么就算你用syscal…