- 博客(126)
- 收藏
- 关注
原创 分享:12 个适合做外包项目的开源后台管理系统(下)
文档地址:https://demos.creative-tim.com/material-dashboard/docs/2.1/getting-started/introduction.html。效果预览:https://demos.creative-tim.com/material-dashboard/examples/dashboard.html。效果预览:http://demo.open.renren.io/renren-fast/#/home。文档地址:https://doc.ruoyi.vip/
2024-11-30 17:47:41
429
原创 分享:12 个适合做外包项目的开源后台管理系统(上)
文档地址:https://panjiachen.github.io/vue-element-admin-site/zh/文档地址:https://panjiachen.github.io/vue-element-admin-site/zh/效果预览:https://d2.pub/d2-admin/preview/#/index。效果预览:https://d2.pub/d2-admin/preview/#/index。文档地址:https://d2.pub/zh/doc/d2-admin/
2024-11-30 17:45:51
246
原创 爆了!!开源「douyin」
今天就不聊太多了,简单介绍一个 douyin 开源项目。douyin 是一个模仿抖音的移动端短视频开源项目,它基于 Vue、Vite实现。使用了最新的 Vue 全家桶技术栈,接口数据通过 axios-mock-adapter模拟。
2024-11-30 17:14:26
348
原创 简单易懂!图解6种微服务架构的设计模式
这是一种最常用也最简单的设计模式,如下图所示:聚合器调用多个服务实现应用程序所需的功能。它可以是一个简单的Web页面,将检索到的数据进行处理展示。它也可以是一个更高层次的组合微服务,对检索到的数据增加业务逻辑后进一步发布成一个新的微服务,这符合DRY原则。另外,每个服务都有自己的缓存和数据库。如果聚合器是一个组合服务,那么它也有自己的缓存和数据库。聚合器可以沿X轴和Z轴独立扩展。
2024-11-30 17:12:38
313
原创 请求合并有什么意义?一文详解
请求合并到底有什么意义呢?我们来看下图。假设我们3个用户(用户id分别是1、2、3),现在他们都要查询自己的基本信息,请求到服务器,服务器端请求数据库,发出3次请求。我们都知道数据库连接资源是相当宝贵的,那么我们怎么尽可能节省连接资源呢?这里把数据库换成被调用的远程服务,也是同样的道理。我们改变下思路,如下图所示。我们在服务器端把请求合并,只发出一条SQL查询数据库,数据库返回后,服务器端处理返回数据,根据一个唯一请求ID,把数据分组,返回给对应用户。
2024-11-28 19:05:33
401
原创 大量简化代码!Java Stream 简单技巧!
Java Stream API对于 Java 开发人员来说就像一把瑞士军刀 — 它用途广泛、结构紧凑,并且可以轻松处理各种任务。它为开发人员提供了一种函数式和声明式的方式来表达复杂的数据转换和操作,使代码更加简洁和富有表现力。但能力越大,责任越大,有效地使用Stream API需要对最佳实践和常见陷阱有深入的了解。今天,我们将探讨使用Java Stream API的一些最佳实践,并展示如何释放这个神奇工具的全部潜力。
2024-11-28 19:02:31
436
原创 “不受待见”的 in 和 not in
如果id2只有1和2, 那么3<>1 且 3<>2 所以3输出了,但是 id2包含空值,那么 3也不等于NULL 所以它不会输出。单独查询 select id1 from test2 是一定会报错: 消息 207,级别 16,状态 1,第 11 行 列名 'id1' 无效。并没有,一位大神曾经说过,如果是确定且有限的集合时,可以使用。如 IN (0,1,2)。十几分钟,检查了一下 phone在两个表都建了索引,字段类型也是一样的。我想要查询,在test2中不存在的 test1中的id。
2024-11-27 22:18:05
373
原创 3.6k Star ,上架即封神!
虽然 Delta 界面语言是英语但不影响使用,常用的功能也就那么几个,一图胜千言不再赘述。Tips:手机开启自动横屏,横屏后自动改变按键布局。Delta 默认不能运行 NDS 游戏,需要自行下载 3 个 bios 文件,搜一下就能找到。我没玩过 NDS 游戏,因为我小时候 GBA 就是天花板了,NDS 我连摸都没摸过,所以对它没有感情。时至今日,我可以不玩 Switch 让它吃灰,但不能没有😂。
2024-11-27 22:16:39
1268
原创 对不起Navicat,我有它了!!
现有的数据库客户端设计数据库不顺手,或者想要一张高规格的数据库结构图的话,可以试试下面这两个在线工具,至少我感觉比 Navicat 体验上要好一些。
2024-11-26 22:21:46
438
原创 替代Postman ,17.3K star!
它使用自研的 Bru 标记性语言,可以快速记录和组织 API 请求的信息,并以纯文本形式存储在项目文件夹中,方便管理和协作。使用 Bru 语言记录 API 调试流程,将 API 调试文件与项目代码进行统一管理,并利用 Git 与团队成员进行同步协作。支持多种 API 请求方法,并可以编写脚本添加附加功能,例如数据生成、验证以及与其他工具和系统的集成。现在,许多人都朝着全栈工程师的方向发展,API 接口的编写和调试已成为许多开发人员必备的技能之一。支持自动化测试,可以搭建 CI/CD 流程,提高开发效率。
2024-11-26 22:19:19
455
原创 必备软件管理工具——Applite!!
Applite 是一款免费开源 macOS 应用程序,可简化使用 Homebrew 的第三方应用程序的安装和管理。该应用程序使用 Swift 和 SwiftUI 构建。它提供了一个简洁直观的用户界面,使得用户可以轻松地浏览、搜索、安装和更新 Homebrew Casks 中的应用程序。对于一个 Mac 用户来说,Homebrew 作为一个流行的包管理器,它允许用户在 macOS 系统上安装和管理开源软件,但对于一些用户来说,Homebrew 的命令行界面可能会显得有些复杂和难以上手。
2024-11-25 17:25:47
555
原创 开源分布式爬虫管理平台:性能强悍!!
数据分析师如果能写代码(例如 Python),则可以开发爬虫程序(例如 Scrapy)然后上传到 Crawlab,然后就可以把所有脏活累活交给 Crawlab,它能够自动抓取数据。虽然 Crawlab 尤其擅长执行网络爬虫任务,但它不仅限于此,它能够被用来运行其他类型的任务,例如数据处理和自动化。: 通过集成爬虫程序到 Crawlab,网路爬虫工程师可以聚焦于爬虫的核心解析逻辑,从而避免浪费过多时间在开发通用模块上,例如任务队列、存储、日志、消息通知等。Docker 部署的详情,请见相关文档。
2024-11-25 17:22:15
1156
原创 开源交互审计系统:功能强大、安全好用
是一个功能强大、开源免费的交互审计系统,支持 RDP、SSH、VNC、Telnet 和 Kubernetes 协议,能够帮助我们高效管理授权凭证、资产、指令等,并提供强大的会话管理和审计功能,助力打造安全可靠的远程运维环境。提供了丰富的功能,主要包括授权凭证管理(如用户名/密码、SSH 密钥、双因素认证等)、资产管理(如IP 地址、操作系统、端口信息等)、 指令管理、会话管理、审计日志等,具有简单易用、功能强大、安全可靠等等特点。
2024-11-24 16:31:12
511
原创 Mybatis Plus 该换了!!!
使用fluent mybatis也可以不用写具体的 xml 文件,通过 java api 可以构造出比较复杂的业务 sql 语句,做到代码逻辑和 sql 逻辑的合一。好了,今天就介绍到这里,这里只是简单的对比三个ORM框架的区别,如果有对 Fluent Mybatis 感兴趣的小伙伴,可以去阅读官方源码,发现更多新大陆哦!总之,直接使用 mybatis,实现步骤还是相当的繁琐,效率太低。看完 3 个框架对同一个功能点的实现, 各位看官肯定会有自己的判断,笔者这里也总结了一份比较。字段名称的记忆和敲码困难。
2024-11-24 16:29:16
421
原创 一个比 SpringBoot 快 44 倍的 Java 框架
它比最流行的微服务平台Spring Boot嵌入式Tomcat快44倍,并且仅使用1/5的内存。这是基准测试结果与Spring Boot和其他微服务框架的比较。最近看到一个框架,官方号称可以比 SpringBoot 快 44 倍,居然这么牛逼,有这么神奇吗?不过,Java 是个非常精彩的生态,多了解一些有趣的框架,也是愉快的过程~很简单,翻译过来就是:一个快速、轻量级和更高效的微服务框架。毕竟除了性能之外,还有稳定性是非常重要的,特别是企业级开发。基于OpenAPI的请求响应验证。整个请求与响应的审计。
2024-11-22 17:40:53
414
原创 这个神级框架值得拥有!
Hutool 是一个 Java 工具包,也只是一个工具包,它帮助我们简化每一行代码,减少每一个方法,让 Java 语言也可以“甜甜的”。Hutool 最初是我项目中“util”包的一个整理,后来慢慢积累并加入更多非业务相关功能,并广泛学习其它开源项目精髓,经过自己整理修改,最终形成丰富的开源工具集。今天给大家推荐一个非常好用的Java工具类库,企业级常用工具类,基本都有,能避免重复造轮子及节省大量的开发时间,非常不错,值得大家去了解使用。谐音“糊涂”,寓意追求“万事都作糊涂观,无所谓失,无所谓得”的境界。
2024-11-22 17:38:46
354
原创 10 个 Java Stream 顶级技巧,大量简化代码!
使用 int、long 和 double 等基本类型时,请使用IntStream、LongStream 和 DoubleStream 等基本流,而不是 Integer、Long 和 Double 等装箱类型流。避免引入副作用,例如修改流外部的变量或执行 I/O 操作,因为这可能会导致不可预测的行为并降低代码可读性。并行流可以在处理大量数据时提供更好的性能,但它们也会引入开销和竞争条件。如果你的流可能包含大量不符合你的条件的元素,请在 map() 之前使用 filter() 以避免不必要的处理。
2024-11-21 22:19:22
167
原创 这款新兴的IDEA插件封神了!
这款插件由Apipost团队开发,官方介绍中提到:用于IDEA项目快速生成API文档,快速查询接口、接口代码功能,并支持在IDEA中进行API调试操作。编写完代码后,只需右键upload同步接口即可快速将源码中包含的API以及注解自动生成API文档,并生成可以访问的链接。调试接口时某些接口返回数据需要记录,本次更新新增保存功能,发送请求后点击保存可保存该次的发送详情和返回详情。我们在编写完接口代码后需要进行接口调试等操作,一般需要打开额外的调试工具。编写完代码后,点击右侧图标,可以进行快速调试。
2024-11-21 22:18:07
461
原创 差点错过!IDEA中这么强大的接口调试插件!
最方便的莫过于Cool Request提供了java的前后置脚本了,也算不上脚本了,习惯这么叫,而其他插件要不就是没有,要不就是提供的JS脚本,对不熟悉JS的人来说,增加了学习成本,而Cool Request就非常方便了,另外在编写代码时,是有语法提示的,例如在脚本中修改参数的api,也不需要过多的学习,几乎是0成本。当双击某个Controller时候,会跳转到请求发送界面,在这里可以填写参数,Cool Request和同类的插件相比,在填写Header时候,也是有提示的,而其他没有,这一点非常方便。
2024-11-20 21:37:33
1845
原创 Windows 远程不要再用 mstsc 了,这款开源神器才是YYDS
目前 PRemoteM 已支持 微软远程桌面(RDP)、VNC、SSH、Telnet、SFTP, FTP, RemoteApp等协议。如果你远程连接windows桌面仍旧在使用win+R,输入mstsc,那么我建议你尝试下这个工具,当然了,类似的工具还有一些,如7.7kstar的mRmoteNG,后面文章会介绍。这款工具的特点在于,它更加简洁方便,如果你之前有使用mRmoteNG,你还可以直接通过csv的方式导入。可自定义启动器,在 sFTP、VNC 等协议中,你可以用自己喜欢的程序来替换内置程序。
2024-11-20 21:31:50
366
原创 换掉ES!Redis官方搜索引擎来了!
一旦数据集被索引,我们就使用在专用负载生成器服务器上运行的 32 个客户端启动两个单词的搜索查询。如下图所示,RediSearch 吞吐量达到了 12.5K 操作/秒,而 Elasticsearch 为 3.1K 操作/秒,速度提高了 4 倍。对于此基准测试,我们构建了 50K 个索引(或产品),每个索引最多存储 500 个文档(或项目),总共 2500 万个文档。如下图所示,RediSearch 构建索引的时间为 221 秒,而 Elasticsearch 为 349 秒,快了 58%。
2024-11-19 22:22:32
376
原创 京东开源,牛逼哄哄的 JD-hotkey 到底有多强悍?
对任意突发性的无法预先感知的热点请求,包括并不限于热点数据(如突发大量请求同一个商品)、热用户(如爬虫、刷子)、热接口(突发海量请求同一个接口)等,进行毫秒级精准探测到。然后对这些热数据、热用户等,推送到该应用部署的所有机器JVM内存中,以大幅减轻对后端数据存储层的冲击,并可以由客户端决定如何使用这些热key(譬如对热商品做本地缓存、对热用户进行拒绝访问、对热接口进行熔断或返回默认值)。这些热key在整个应用集群内保持一致性。
2024-11-19 22:18:23
814
原创 JSON Hero:视图查看更简单!!
是一个简单实用的 JSON 工具,通过简洁美观的 UI 及增强的额外功能,使得阅读和理解 JSON 文档变得更容易、直观。支持多种视图以便查看 JSON:列视图、树视图、JSON 视图等 列视图是受 macOS Finder 启发创建的一种浏览 JSON 文档的新方法。项目地址:https://github.com/jsonhero-io/jsonhero-webnpm start。
2024-11-15 15:19:27
352
原创 面试官:谈谈你对 IoC 和 AOP 的理解!
IoC (Inversion of Control )即控制反转/反转控制。它是一种思想不是一个技术实现。描述的是:Java 开发领域对象的创建以及管理的问题。例如:现有类 A 依赖于类 B传统的开发方式:往往是在类 A 中手动通过 new 关键字来 new 一个 B 的对象出来使用 IoC 思想的开发方式:不通过 new 关键字来创建对象,而是通过 IoC 容器(Spring 框架) 来帮助我们实例化对象。我们需要哪个对象,直接从 IoC 容器里面去取即可。
2024-11-15 14:14:17
1901
原创 isEmpty 和 isBlank 的区别
是否为空. 可以看到 " " 空格是会绕过这种空判断,因为是一个空格,并不是严格的空值,会导致。可以参考官方的文档,里面有详细的描述,有些方法还是很好用的.是否有一个为空,只有一个为空,就为true.是否真的不为空,不是空格或者空值 ,相当于。, 必须所有的值都不为空才返回true。是否包含任何真空值(包含空格或空值)是否为真空值(空格或者空值)是否全部都不包含空值或空格。
2024-11-14 15:57:51
375
原创 MySQL 用哪种类型来存储日期时间呢?
timestamp 记录经常变化的更新 / 创建 / 发布 / 日志时间 / 购买时间 / 登录时间 / 注册时间等,并且是近来的时间,够用,时区自动处理,比如说做海外购或者业务可能拓展到海外datetime 记录固定时间如服务器执行计划任务时间 / 健身锻炼计划时间等,在任何时区都是需要一个固定的时间要做某个事情。超出 timestamp 的时间,如果需要时区必须记得时区处理UNIX timestamps 使用起来并不是很方便,至于说比较取范围什么的,timestamp 和 datetime 都能干。
2024-11-14 15:54:58
334
原创 Ollama—87.4k star 的开源大模型服务框架!!
Ollama 是一个开源的大语言模型(LLM)服务工具,它允许用户在本地环境快速实验、管理和部署大型语言模型。它支持多种流行的开源大型语言模型,如 Llama 3.1、Phi 3、Mistral、Gemma 2 等,并且可以通过命令行界面轻松下载、运行和管理这些模型。Ollama 的出现是为了降低使用大型语言模型的门槛,是让大型语言模型更加普及和易于访问。Ollama 是一个功能强大且易于使用的工具,它为本地部署和运行大型语言模型提供了一个简单而有效的方法。
2024-11-13 20:20:24
844
原创 JWT和Session结合模式中的作用
即使JWT是无状态的,但在某些应用场景中,仅依赖JWT可能存在一些安全问题,例如Token的泄露或滥用。Session可以作为一个额外的安全层,确保Token即使有效,也必须在服务器的Session管理器中存在对应的会话。如果用户选择了“记住我”选项,Session可以记录这个状态,并在JWT过期后,通过Session来决定是否允许继续使用旧的Token。在某些场景下,追踪用户状态是必要的,例如监控用户的活跃度、登录历史等,这些信息可以通过Session进行管理。
2024-11-13 20:19:11
405
原创 减少 try...catch,定义全局统一异常处理器!
软件开发springboot项目过程中,不可避免的需要处理各种异常,spring mvc 架构中各层会出现大量的try {...} catch {...} finally {...}代码块,不仅有大量的冗余代码,而且还影响代码的可读性。这样就需要定义个全局统一异常处理器,以便业务层再也不必处理异常。可以灵活的根据自己的业务异常进行更细粒度的扩展。代码复制到项目中通过简单的配置即可实现。
2024-11-11 17:29:05
555
原创 解决SpringBoot 接口恶意刷新和暴力请求!!
代码中redis的使用的是分布式锁的形式,这样可以最大程度保证线程安全和功能的实现效果。代码中设置的是1S内同一个接口通过同一个ip访问5次,就将该ip禁用1个小时,根据自己项目需求可以自己适当修改,实现自己想要的功能;在实际项目使用中,必须要考虑服务的安全性,当服务部署到互联网以后,就要考虑服务被恶意请求和暴力攻击的情况,下面的教程,通过。在一定时间内访问的次数来将ip禁用,可以根据自己的需求进行相应的修改,来打打自己的目的;自己可以写一个for循环来测试方面的功能,这里就不详细介绍了。
2024-11-11 17:28:22
432
原创 Supervision:你的可复用计算机视觉工具箱!!
② 数据处理:无论你需要从硬盘加载数据集,还是在图像或视频上绘制检测结果,或者将标签从一种格式转换为另一种格式,Supervision 都能帮你轻松搞定。如果你想在你电脑上实现如下 AI 功能,可以试试这个工具。你可以从本地加载数据集,也支持对你的数据集进行分割、合并等等。③ 数据集工具:Supervision 提供了一套工具,允许你在支持的格式中加载、分割、合并和保存数据集。推荐一个计算机视觉的工具箱,使用它你可以在你电脑上实现人体跟踪、分割、检测等一系列计算机视觉的场景。
2024-11-10 17:42:50
166
原创 MaxK B:基于 LLM 大语言模型的知识库问答系统!
通过 Docker 容器技术,用户可以快速启动并运行 MaxKB,实现知识库的快速构建和部署。此外,MaxKB 支持零编码快速嵌入到第三方业务系统,无论是内网环境还是云平台,都能轻松应对。MaxK B是一个基于 LLM 大语言模型的知识库问答系统,正是为了解决这一挑战而生。推荐一个基于大模型的企业级知识库问答系统,支持管理企业知识库、对话问答、RAG 等功能。企业知识管理的智能化革新在数字化时代,知识管理对于企业的重要性不言而喻。MaxKB 不仅仅是一个问答系统,它是企业知识管理的智能化助手。
2024-11-10 17:41:52
243
原创 jcasbin:替代shiro的权限框架!!
作为一名后台开发人员,权限这个名词应该算是特别熟悉的了。就算是java里的类也有 public、private 等“权限”之分。之前项目里一直使用shiro作为权限管理的框架。说实话,shiro的确挺强大的,但是它也有很多不好的地方。shiro默认的登录地址还是login.jsp,前后端分离模式使用shiro还要重写好多类;手机端存储用户信息、保持登录状态等等,对shiro来说也是一个难题。在分布式项目里,比如电商项目,其实不太需要明确的权限划分,说白了,我认为没必要做太麻烦的权限管理,一切从简。
2024-11-09 17:36:33
506
原创 Foliate:沉浸式阅读!!!
Foliate 是一款开源的电子书阅读器,专为现代操作系统设计,提供了优雅且实用的阅读体验。它支持多种电子书格式,包括 EPUB、Mobipocket、Kindle、FB2、CBZ 和 PDF,让用户能够以分页或滚动模式阅读。Foliate 允许用户自定义字体、间距、边距和颜色方案,以适应个人的阅读偏好。此外,它还具备自动隐藏窗口控件的功能,以减少阅读时的干扰。
2024-11-09 17:20:27
264
原创 Reduce:一款开源的短网址平台!!
今天给大家介绍一款开源的短网址平台,Coody Framework首秀,自写IOC、MVC、ORM、TASK、JSON、DB连接池、服务器。百毫秒启动,全项目仅2.5M(低配服可运行)。前端采用Amaze UI,后端采用Coody Framework MVC,数据库采用H2DB。
2024-11-07 22:18:59
193
原创 这款神器,运维绝杀 !!!
CrowdSec 是一款开源的、基于社区协作的网络安全防护工具,它通过分析和共享IP信誉数据来对抗恶意行为。该软件不仅支持IPv6,而且相较于传统的Python实现,其采用Go语言编写,运行速度提升了60倍。CrowdSec 利用Grok模式解析日志,并通过YAML场景识别异常行为,为现代云服务、容器和虚拟机环境提供了有效的安全解决方案。
2024-11-07 22:17:42
352
原创 终端文件管理神器 !!!
nnn是一款专为命令行爱好者打造的高效终端文件管理器。它以其超小的体积、几乎零配置的要求以及卓越的速度表现而著称。nnn不仅适用于Linux、macOS、BSD等操作系统,还能够在诸如树莓派、Android上的Termux、WSL、Cygwin等多个平台运行。它遵循POSIX标准,代码风格与Linux内核一致,确保了高质量的同时也为用户提供了丰富的功能和良好的用户体验。
2024-11-06 22:15:44
374
原创 腾讯自研的 Git 客户端!!【送源码】
UGit 是一款为腾讯内部研发环境特点而定制的 Git 客户端,旨在提高开发效率和团队协作的流畅性。UGit 支持 macOS 10.11+、Apple Silicon 和 Win64 位系统。
2024-11-06 22:14:17
1360
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人